Files
Elyz/kernel/docs/index.md
2026-07-07 16:40:41 +03:00

4.0 KiB

Документация ядра Elyz (LISA)

Структура документации

kernel/docs/
├── index.md                         ← этот файл: оглавление
│
├── overview/
│   ├── introduction.md              ← Концептуальная модель (7 принципов)
│   └── architecture.md              ← Архитектура, схема, порядок инициализации
│
├── memory/
│   ├── introduction.md              ← Трёхуровневая модель памяти
│   ├── address-translation.md       ← PhysAddr, VirtAddr, HHDM
│   ├── physical-memory.md           ← BitmapPMM (глобальный)
│   ├── paging.md                    ← PageTable, 4-level walk
│   ├── buddy.md                     ← BuddyAllocator (intrusive list)
│   ├── pm-actor.md                  ← PMActor + MPSC очередь
│   ├── pm-router.md                 ← PMRouter (65536 каналов)
│   ├── allocator.md                 ← Slab-аллокатор (куча)
│   └── vmm.md                       ← AddressSpace, VMA, COW, TLB
│
├── cpu/
│   ├── introduction.md              ← CPU подсистема, 2 этапа обработки
│   ├── idt.md                       ← IDT entry, InterruptDescriptorTable
│   ├── interrupts.md                ← Обработчики, stubs, early exceptions
│   └── lapic.md                     ← Local APIC, IPI, EOI
│
├── capability/
│   ├── introduction.md              ← Capability model, mint, revoke
│   ├── descriptors.md               ← Capability, CapObject, CapRights
│   ├── cnode.md                     ← CNode, lock ranking
│   └── objects.md                   ← KernelObject (ref-counted)
│
├── debug/
│   ├── introduction.md              ← Отладка: экран + serial
│   └── serial.md                    ← COM1 UART 16550 драйвер
│
├── boot/
│   ├── introduction.md              ← Процесс загрузки, Limine
│   └── linker.md                    ← Линкер-скрипты
│
└── events/
    └── introduction.md              ← RevocationQueue (lock-free)

Быстрый старт по файлам

Файл ядра Что делает Документация
src/main.rs Точка входа, инициализация, тесты overview/architecture.md (раздел порядка инициализации)
src/mem/pmm.rs Глобальный PMM (Bitmap + L1) memory/physical-memory.md
src/mem/buddy.rs Buddy-аллокатор memory/buddy.md
src/mem/paging.rs 4-уровневые page tables memory/paging.md
src/mem/pm_manages.rs PMActor + очередь memory/pm-actor.md
src/mem/pm_router.rs PM Router каналы memory/pm-router.md
src/mem/vmm.rs AddressSpace, COW, TLB memory/vmm.md
src/mem/allocator.rs Slab-аллокатор memory/allocator.md
src/mem/address.rs Физические/виртуальные адреса memory/address-translation.md
src/cpu/idt.rs IDT структуры cpu/idt.md
src/cpu/interrupts.rs Обработчики исключений cpu/interrupts.md
src/cpu/lapic.rs Local APIC cpu/lapic.md
src/cap/mod.rs CNode capability/cnode.md
src/cap/descriptor.rs Capability типы capability/descriptors.md
src/cap/object.rs KernelObject capability/objects.md
src/debug/mod.rs Log macros debug/introduction.md
src/debug/serial.rs Serial driver debug/serial.md
src/events.rs Очередь отзыва events/introduction.md
src/tty.rs Framebuffer console tty.md