ForgeZero 4.0: bare-metal сборка, zero-allocation hot path и HADES execution core
После выхода ForgeZero 3.1 проект получил крупнейший внутренний рефакторинг за всё время существования.
В версии 4.0 появляются сразу несколько ключевых возможностей: полноценный bare-metal режим, zero-allocation hot path, автономный toolchain и новый execution core.
Результат:
~84 ms на хеширование 100 МБ (~1.18 ГБ/с);стабильные 0 allocs/op в hot path;полноценный режим сборки Flat Binary для bootloader/kernel development.
Bare-Metal режим
Теперь ForgeZero умеет собирать «голый» машинный код без промежуточных ELF-оберток.
fz -asm main-step-one.asm -format bin -out boot.bin
Флаг -format bin автоматически переводит систему в режим flat binary:
отключается стандартный ELF-линкер;NASM/FASM получают правильные флаги автоматически (-f bin);на выходе — чистый бинарный образ, готовый для QEMU или реального железа.
Это позволяет собирать boot sector и ранние этапы загрузчика без ручной настройки toolchain.
Zero-Allocation Hot Path
Горячий путь сборки полностью очищен от heap-аллокаций.
стековые буферы вместо временных heap-объектов;убраны fmt и log из критических участков;весь вывод и обработка ошибок идут через прямые syscalls;GC не участвует в hot path вообще.
Результат — предсказуемое выполнение и минимальный runtime-overhead.
Полная автономия
NASM и FASM зашиты в бинарник через //go:embed;на Linux тулчейн разворачивается напрямую в память через memfd_create;на Windows используются защищённые временные файлы;ForgeZero не зависит от установленного системного assembler toolchain.
Интеллектуальный линкер
Для flat binary включён специальный fast-path.
Если ForgeZero видит плоский бинарный формат, линкер не пытается «умничать», а сохраняет бинарный образ без изменений — байт в байт.
Это критично для boot sector development, где даже смещение сигнатуры 0xAA55 имеет значение.
Что ещё появится в ForgeZero 4.0
HADES Execution Core — zero-copy выполнение нативного машинного кода через ExecRaw();Gloria JIT — экспериментальный pipeline для генерации машинного кода из C + ASM;изолированная executable memory и stack-safe trampolines;msync-контроль согласованности instruction cache;Shadow Cache для дедупликации build-артефактов;hermetic toolchain resolution без доверия к PATH;детерминированный binary stripping для воспроизводимых сборок.
Релиз
ForgeZero 4.0 выйдет в ближайшие дни после финальной проверки и обкатки.
Документация для текущей стабильной версии 3.1: