summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorclaude <[email protected]>2026-07-12 01:31:26 +0000
committerclaude <[email protected]>2026-07-12 01:31:26 +0000
commitc480e76433f9bb8ce8ce9d5802cdada8883db184 (patch)
treef84928e5a12c234ec44e899198dca9a41d02170b /README.md
parenta4dce7f4d920e492d38c32ad3e42efdcfef3b3f1 (diff)
downloadplan9-kencc-linux-c480e76433f9bb8ce8ce9d5802cdada8883db184.tar.gz
plan9-kencc-linux-c480e76433f9bb8ce8ce9d5802cdada8883db184.zip
🌭 kernel/: болваночное ядро (пишет в 0xB8000) + загрузчик Plan9 a.out
- 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 <[email protected]>
Diffstat (limited to 'README.md')
-rw-r--r--README.md7
1 files changed, 5 insertions, 2 deletions
diff --git a/README.md b/README.md
index ba80bb4..75bdf74 100644
--- a/README.md
+++ b/README.md
@@ -9,7 +9,7 @@
## Что внутри
```
-bin/ готовые бинари: 8c 6c 5c vc qc kc (компиляторы) + 6a 6l
+bin/ готовые бинари: 8c 6c 5c vc qc kc (компиляторы) + 8a 8l 6a 6l
scripts/
setup.sh клонирует plan9foundation + plan9port, собирает plan9port
build_arch.sh <X> собирает C-компилятор арки X (5|6|8|v|q|k)
@@ -20,7 +20,10 @@ efi/
fetch_ref.sh тянет pe64.s/efi.h/mem.h из 9legacy (nboot/efi)
efi_build.sh 6a+6c+6l -> dd -> bootx64.efi (PE32+)
mkesp.py заворачивает .efi в загрузочный ESP (FAT16)
-patches/ патчи по каждой правке (документация)
+kernel/
+ kernel.c + kern.s болваночное ядро (386): пишет в VGA 0xB8000
+ loader.c загрузчик Plan9 a.out (разбор хедера, загрузка, прыжок)
+ mkboot.sh 8a+8c+8l -> kernel (a.out)
PATCHES.md почему каждый патч нужен
```