From c480e76433f9bb8ce8ce9d5802cdada8883db184 Mon Sep 17 00:00:00 2001 From: claude Date: Sun, 12 Jul 2026 01:31:26 +0000 Subject: 🌭 kernel/: болваночное ядро (пишет в 0xB8000) + загрузчик Plan9 a.out MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - kernel.c + kern.s: 386-ядро, пишет строку в VGA-текстбуфер 0xB8000, halt. Собирается 8a+8c+8l в Plan9 a.out (I_MAGIC, entry 0x100000). - loader.c: загрузчик a.out (не ELF — выхлоп у нас a.out): разбор big-endian заголовка, загрузка сегментов по entry, зануление bss, прыжок. - проверено: kernel = валидный a.out с 0xB8000 в коде; loader.aout_parse корректно разбирает реальное ядро (entry/размеры сходятся). - bin/: добавлены 8a, 8l (386 ассемблер + линкер). Co-Authored-By: Claude Opus 4.8 --- kernel/kern.s | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 kernel/kern.s (limited to 'kernel/kern.s') diff --git a/kernel/kern.s b/kernel/kern.s new file mode 100644 index 0000000..28d0d3e --- /dev/null +++ b/kernel/kern.s @@ -0,0 +1,6 @@ +/* энтрипоинт: ставит стек и зовёт kmain */ +TEXT _start(SB), $0 + MOVL $0x10000, SP + CALL kmain(SB) +loop: + JMP loop -- cgit v1.2.3