EBFE: software internals – Telegram
EBFE: software internals
300 subscribers
226 photos
45 videos
38 files
97 links
Авторский канал Алексея Никольского.
Пишу код операционок и гипервизоров больше 20 лет и читаю лекции студентам.
Делюсь своими мыслями, интересными материалами, мемасиками и всегда рад общению!

Моя мастерская: https://news.1rj.ru/str/itmosysint
Download Telegram
Forwarded from GitHub Community
Windows API Function Cheatsheets — справочник по функциям Windows API, охватывающий файловые операции, управление процессами, памятью, потоками, синхронизацией, DLL.

5️⃣ GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from GitHub Community
KrbRelayEx — это инструмент, предназначенный для проведения атак типа «человек посередине» (MitM) путём ретрансляции билетов Kerberos AP-REQ.

5️⃣ GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from GitHub Community
Ladybird — это по-настоящему независимый веб-браузер, использующий новый движок, основанный на веб-стандартах.

5️⃣ GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
Красиво
Forwarded from GitHub Community
This media is not supported in your browser
VIEW IN TELEGRAM
Physics Simulations — набор симуляций физических явлений, написанных на Python.

5️⃣ GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
2
Forwarded from Dev Meme / devmeme
Here some crazy maniac rewriting common cli tools to use sed

https://github.com/tiawl/sedjutsu
Btw, sed are not yet rewritten with sed. You can join and help!

Cursed

Absolutely cursed

I love it ❤️🥰❤️
🤩2
#vibecoding
Зацените какой классный скрипт написал мне ChetGPT5 платный (и за что я плачу деньги....). Тут очевидная ошибка. Напишите в комментариях. Кто будет первым?


@echo off
setlocal EnableExtensions EnableDelayedExpansion

rem ============================================================
rem C/C++ Dev Environment Bootstrap for Windows (Non-Silent)
rem Installs: VS Code, Git, CMake, MinGW-w64, vcpkg (+OpenGL/ImGui/GLFW/GLEW), GoogleTest
rem Configures VS Code extensions and a starter CMake project.
rem Visible installers (not silent). Clear on-screen guidance included.
rem ============================================================

rem ----------------------
rem User-configurable vars
rem ----------------------
set "ARCH_TARGET=x64"
set "TOOLS_ROOT=C:\Tools"
set "MINGW_DIR=%TOOLS_ROOT%\mingw64"
set "VCPKG_DIR=%TOOLS_ROOT%\vcpkg"
set "DEV_ROOT=%USERPROFILE%\Dev"
set "PROJECT_DIR=%DEV_ROOT%\OpenGL-Imgui-Starter"
set "VSCODE_DESKTOP_SHORTCUT=%USERPROFILE%\Desktop\VSCode_OpenGL-Imgui-Starter.lnk"

rem Versions/URLs (adjust here if needed)
set "VSCODE_URL=https://update.code.visualstudio.com/latest/win32-x64-user/stable"
set "GIT_URL=https://github.com/git-for-windows/git/releases/latest/download/Git-64-bit.exe"
set "CMAKE_URL=https://github.com/Kitware/CMake/releases/latest/download/cmake-*-windows-x86_64.msi"
rem WinLibs standalone MinGW-w64 (GCC) ZIP (pick a stable, SSE2 build)
set "MINGW_ZIP_URL=https://github.com/brechtsanders/winlibs_mingw/releases/latest/download/winlibs-x86_64-posix-seh-gcc-*-llvm-*-mingw-w64msvcrt-*-ucrt-*-zip.zip"

rem vcpkg clone URL
set "VCPKG_GIT=https://github.com/microsoft/vcpkg.git"

rem vcpkg ports to install (OpenGL toolchain + test)
set "VCPKG_PORTS=glfw3 glew imgui opengl glew:x64-windows imgui:x64-windows glfw3:x64-windows gtest"

rem Triplets to try (MSVC + MinGW). MinGW triplet is community; if MinGW present, it will work.
set "TRIPLET_MSVC=x64-windows"
set "TRIPLET_MINGW=x64-mingw-dynamic"

rem VS Code extensions to install automatically
set "VSCODE_EXTS=ms-vscode.cpptools ms-vscode.cmake-tools twxs.cmake ms-vscode.gitlens ms-vscode.test-adapter-converter ms-vscode.cpptools-extension-pack"

rem ------------------------------------------------------------
rem Internals (flags and temp)
rem ------------------------------------------------------------
set "TMPDL=%TEMP%\cpp_bootstrap_dl"
set "LOGFILE=%TEMP%\cpp_bootstrap.log"
set "INSTALL_SUMMARY=%TEMP%\cpp_install_summary.txt"
set "ERRFLAG=0"
set "FOUND_VSCODE=0"
set "FOUND_GIT=0"
set "FOUND_CMAKE=0"
set "FOUND_MINGW=0"
set "FOUND_VCPKG=0"

rem ----------------------
rem Minimal helper labels
rem ----------------------
:log
echo [INFO] %~1
echo [INFO] %~1>>"%LOGFILE%"
goto :eof

:warn
echo [WARN] %~1
echo [WARN] %~1>>"%LOGFILE%"
goto :eof

:err
echo [ERROR] %~1
echo [ERROR] %~1>>"%LOGFILE%"
set ERRFLAG=1
goto :eof

:require_admin
rem Check admin
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if not "%errorlevel%"=="0" (
call :err "Administrator privileges are required. Right-click this .cmd and choose 'Run as administrator'."
goto :finalize
)
goto :eof

:ensure_dirs
if not exist "%TOOLS_ROOT%" mkdir "%TOOLS_ROOT%"
if not exist "%TMPDL%" mkdir "%TMPDL%"
if not exist "%DEV_ROOT%" mkdir "%DEV_ROOT%"
goto :eof

:add_path_once
rem %1 = dir to add
set "TARGET=%~1"
if not exist "%TARGET%" goto :eof
for /f "tokens=2,*" %%a in ('reg query "HKCU\Environment" /v PATH 2^>nul ^| find "PATH"') do set "CURPATH=%%b"
echo %CURPATH% | find /i "%TARGET%" >nul
if errorlevel 1 (
setx PATH "%CURPATH%;%TARGET%" >nul
call :log "PATH updated with: %TARGET% (you may need to open a new terminal)."
) else (
call :log "PATH already contains: %TARGET%"
)
goto :eof
install.cmd
19.5 KB
Вот полный его скрипт если кому интересно. Если что он не рабочий и с кучей проблем.
lection1.c
1.3 KB
Материалы вчерашней лекции
#vibecoding
С тем заданием справились!
Вот вам посложнее. Из того же скрипта следующая ошибка ChatGPT. Он тут типо хочет сгенерировать файл cmake но спойлер - у него это не получится. Почему?

(
echo cmake_minimum_required(VERSION 3.20)
echo project(opengl_imgui_starter CXX)
echo
echo set(CMAKE_CXX_STANDARD 17)
echo set(CMAKE_CXX_STANDARD_REQUIRED ON)
echo
echo if(NOT DEFINED CMAKE_TOOLCHAIN_FILE AND EXISTS "%VCPKG_DIR%/noscripts/buildsystems/vcpkg.cmake")
echo set(CMAKE_TOOLCHAIN_FILE "%VCPKG_DIR%/noscripts/buildsystems/vcpkg.cmake" CACHE STRING "vcpkg toolchain")
echo endif()
echo
echo if(NOT DEFINED VCPKG_TARGET_TRIPLET)
echo set(VCPKG_TARGET_TRIPLET %TRIPLET_MINGW%)
echo endif()
echo
echo find_package(OpenGL REQUIRED)
echo find_package(glfw3 REQUIRED)
echo find_package(GLEW REQUIRED)
echo find_package(imgui REQUIRED)
echo
echo add_executable(app src/main.cpp)
echo target_link_libraries(app PRIVATE OpenGL::GL glfw GLEW::GLEW imgui::imgui)
echo
echo enable_testing()
echo add_executable(sample_test tests/sample_test.cpp)
echo find_package(GTest CONFIG REQUIRED)
echo target_link_libraries(sample_test PRIVATE GTest::gtest GTest::gtest_main)
echo add_test(NAME sample_test COMMAND sample_test)
) > "%PROJECT_DIR%\CMakeLists.txt" 2>nul
2
Forwarded from Dev Meme / devmeme
😁2
Всем привет! Итак Hello Coder будет уже совсем скоро!
При выборе дат пришлось учитывать не только ваше голосование и свое расписание, но и расписание ИТМО.

Курс Hello Coder пройдет в следующие даты:
1) Октябрь 20.10-24.10 - обсуждаем системы сборки, прикольные фишки C, best practices от меня по написанию портируемого кода
2) Ноябрь 17.11-21.11 - введение в C++, начинаем писать игру, и основы ООП
3) Декабрь 01.12-05.12 - Пишем код под Windows (драйвера, сервисы, инжекты,...), шаблоны проектирования, фишки C++
4) Декабрь 22.12-26.12 - Дописываем игру, .NET, COM, и все что не успели ранее

Даты утверждены, официальный анонс еще будет.
Напоминаю, что в этом году будем использовать всякие GPT, чтобы написать игру все-таки. Там и ассеты нагеренять можно будет.

Приходите - будет классно! В прошлом году было прям клево!
🔥3
EBFE: software internals
#vibecoding С тем заданием справились! Вот вам посложнее. Из того же скрипта следующая ошибка ChatGPT. Он тут типо хочет сгенерировать файл cmake но спойлер - у него это не получится. Почему? ( echo cmake_minimum_required(VERSION 3.20) echo proje…
Так тут прекрасный пример скрипта на cmd. Итак этот код сгенерировал ChatGPT. Тут проблема в символах ) - их надо экранировать. Экранировать их с помощью символа ^. Да именно так то есть:

не:
echo set(CMAKE_CXX_STANDARD 17)
а:
echo set(CMAKE_CXX_STANDARD 17^)

Но вот если были ковычки, то не надо - то есть не:
echo Write-Host "Download finished (remote size unknown^)."
а:
echo Write-Host "Download finished (remote size unknown)."
Это просто караул....

Еще надо экранировать: |,+,*,>,<

И да кстати надо экранировать %, но конечно не ^% - это не сработает, а %%.

Обожаю cmd.
😱53
Forwarded from Dev Meme / devmeme
👍4
😁14😈2
😁8🔥3
Forwarded from IT | Space
This media is not supported in your browser
VIEW IN TELEGRAM
🔥6
Forwarded from IT | Space
🤝 Знакомство с IT Space: Мастерская системного программирования

Давайте познакомимся с еще одним нашим сообществом поближе! Итак, позвольте представить Мастерскую системного программирования ИТМО! 😎

💻 Это сообщество для тех, кто не просто пользуется технологиями, а хочет заглянуть «под капот» и понять саму суть их работы. Это - клуб пытливых умов, для которых компьютер это не просто черный ящик, а целая вселенная для исследований. Если тебе интересно, как на самом деле взаимодействуют железо и софт, как заставить процессор выполнить твою команду или что происходит в системе в момент загрузки - тебе точно к нам!

🤵🏼‍♂️ Руководитель Мастерской - Алексей Никольский: преподаватель ФБИТ ИТМО, практикующий эксперт в области программирования, реверс-инжиниринга и работы с операционными системами.

Чем мы занимаемся?

🏃‍♀️ Делаем крутые исследовательские проекты с практической реализацией;
🏃‍♀️ Погружаемся в мир низкоуровневого софта и железа: firmware, drivers, hypervisor, kernels, BIOS, compilers и многое другое;
🏃‍♀️ Создаем новые технологии и реализуем смелые идеи;
🏃‍♀️ Делимся опытом, помогаем друг другу и вместе пишем код.

Подписывайся на канал Мастерской системного программирования и до встречи на мероприятиях в IT Space! ❤️
__________________________
#знакомство #студентам

🇬🇧 For English press here

itspace@itmo.ru
💙 VK 📺 Rutube
📺 VK Video 📺 YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
Forwarded from IT | Space
Media is too big
VIEW IN TELEGRAM
👨‍💻 Воркшоп Мастерской системного программирования: Doom на Brainfuck

🔥 DOOM - культовая видеоигра, с которой для многих началась эпоха 3D-шутеров и экспериментов с «железом»
🧠 Brainfuck - минималистичный язык программирования, где восемь команд, ноль жалости и максимум изобретательности

Что будет, если совместить эти вещи? Правильно! Doom на Brainfuck! 🤯

Да, мы буквально будем писать DOOM на Brainfuck - и посмотрим, насколько далеко можно зайти с минимальным набором команд 😎

💻 Алексей Никольский из Мастерской системного программирования ИТМО будет кодить проект вместе с вами прямо во время встречи, поэтому возьмите с собой ноутбуки!

Как, где, когда?

🗓 12 октября, воскресенье, 12:00-15:00
📍 Гибридный формат, Песочная Набережная, 14, ауд. 306 + Zoom
❗️ Регистрация обязательна

📹 Ссылка на присоединение к zoom-трансляции будет отправлена на почту зарегистрированным участникам накануне мероприятия

➡️ Регистрация ⬅️
____________________
#программирование #продвинутым #it_специалистам #студентам

🇬🇧 For English press here

itspace@itmo.ru
💙 VK 📺 Rutube
📺 VK Video 📺 YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3