├── .cargo └── config.toml ├── .gitignore ├── BUILDING.md ├── Cargo.lock ├── Cargo.toml ├── LICENSE ├── Makefile ├── README.md ├── doc ├── arch │ └── x86 │ │ └── memory32.md ├── img │ └── screenshot.png └── roadmap.md ├── media ├── fr.json ├── fr.keymap ├── iosevka.pxfont ├── us.json ├── us.keymap ├── wallpaper.data └── wallpaper.png ├── src ├── arch │ ├── mod.rs │ ├── test │ │ ├── export │ │ │ ├── cpu.rs │ │ │ ├── logging.rs │ │ │ ├── mem.rs │ │ │ ├── mod.rs │ │ │ ├── sync.rs │ │ │ └── task.rs │ │ ├── frame.rs │ │ └── mod.rs │ └── x86 │ │ ├── cpuid.rs │ │ ├── driver │ │ ├── apic.rs │ │ ├── mod.rs │ │ ├── pic8259.rs │ │ ├── ps2.rs │ │ ├── serial.rs │ │ ├── vesa.rs │ │ └── vga.rs │ │ ├── export │ │ ├── cpu.rs │ │ ├── logging.rs │ │ ├── mem │ │ │ └── mod.rs │ │ ├── mod.rs │ │ ├── sync.rs │ │ └── task.rs │ │ ├── gdt.rs │ │ ├── init.rs │ │ ├── irq.rs │ │ ├── isr_entry64.S │ │ ├── mem │ │ ├── mod.rs │ │ └── paging.rs │ │ ├── mod.rs │ │ ├── multiboot2.S │ │ └── start64.S ├── backtrace.rs ├── driver │ ├── gpio.rs │ ├── keyboard.rs │ ├── mod.rs │ ├── screen.rs │ └── vga.rs ├── logging.rs ├── main.rs ├── mem │ ├── frame.rs │ ├── kalloc │ │ ├── bump_kalloc.rs │ │ ├── freelist_kalloc.rs │ │ ├── mimalloc │ │ │ ├── heap.rs │ │ │ └── mod.rs │ │ └── mod.rs │ ├── load.rs │ └── mod.rs ├── misc.rs ├── panic.rs ├── screen.rs ├── sync.rs ├── task │ ├── cpu.rs │ ├── cpu_local.rs │ ├── mod.rs │ └── vm.rs └── ui │ ├── keymap.rs │ ├── kterm.rs │ ├── mod.rs │ ├── pxfont.rs │ └── term.rs └── targets ├── x86_64-nucloid.json └── x86_64.ld /.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/.cargo/config.toml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | -------------------------------------------------------------------------------- /BUILDING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/BUILDING.md -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/README.md -------------------------------------------------------------------------------- /doc/arch/x86/memory32.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/doc/arch/x86/memory32.md -------------------------------------------------------------------------------- /doc/img/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/doc/img/screenshot.png -------------------------------------------------------------------------------- /doc/roadmap.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/doc/roadmap.md -------------------------------------------------------------------------------- /media/fr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/media/fr.json -------------------------------------------------------------------------------- /media/fr.keymap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/media/fr.keymap -------------------------------------------------------------------------------- /media/iosevka.pxfont: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/media/iosevka.pxfont -------------------------------------------------------------------------------- /media/us.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/media/us.json -------------------------------------------------------------------------------- /media/us.keymap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/media/us.keymap -------------------------------------------------------------------------------- /media/wallpaper.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/media/wallpaper.data -------------------------------------------------------------------------------- /media/wallpaper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/media/wallpaper.png -------------------------------------------------------------------------------- /src/arch/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/mod.rs -------------------------------------------------------------------------------- /src/arch/test/export/cpu.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/test/export/cpu.rs -------------------------------------------------------------------------------- /src/arch/test/export/logging.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/test/export/logging.rs -------------------------------------------------------------------------------- /src/arch/test/export/mem.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/test/export/mem.rs -------------------------------------------------------------------------------- /src/arch/test/export/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/test/export/mod.rs -------------------------------------------------------------------------------- /src/arch/test/export/sync.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/test/export/sync.rs -------------------------------------------------------------------------------- /src/arch/test/export/task.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/test/export/task.rs -------------------------------------------------------------------------------- /src/arch/test/frame.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/test/frame.rs -------------------------------------------------------------------------------- /src/arch/test/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/test/mod.rs -------------------------------------------------------------------------------- /src/arch/x86/cpuid.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/cpuid.rs -------------------------------------------------------------------------------- /src/arch/x86/driver/apic.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/driver/apic.rs -------------------------------------------------------------------------------- /src/arch/x86/driver/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/driver/mod.rs -------------------------------------------------------------------------------- /src/arch/x86/driver/pic8259.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/driver/pic8259.rs -------------------------------------------------------------------------------- /src/arch/x86/driver/ps2.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/driver/ps2.rs -------------------------------------------------------------------------------- /src/arch/x86/driver/serial.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/driver/serial.rs -------------------------------------------------------------------------------- /src/arch/x86/driver/vesa.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/driver/vesa.rs -------------------------------------------------------------------------------- /src/arch/x86/driver/vga.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/driver/vga.rs -------------------------------------------------------------------------------- /src/arch/x86/export/cpu.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/export/cpu.rs -------------------------------------------------------------------------------- /src/arch/x86/export/logging.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/export/logging.rs -------------------------------------------------------------------------------- /src/arch/x86/export/mem/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/export/mem/mod.rs -------------------------------------------------------------------------------- /src/arch/x86/export/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/export/mod.rs -------------------------------------------------------------------------------- /src/arch/x86/export/sync.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/export/sync.rs -------------------------------------------------------------------------------- /src/arch/x86/export/task.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/export/task.rs -------------------------------------------------------------------------------- /src/arch/x86/gdt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/gdt.rs -------------------------------------------------------------------------------- /src/arch/x86/init.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/init.rs -------------------------------------------------------------------------------- /src/arch/x86/irq.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/irq.rs -------------------------------------------------------------------------------- /src/arch/x86/isr_entry64.S: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/isr_entry64.S -------------------------------------------------------------------------------- /src/arch/x86/mem/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/mem/mod.rs -------------------------------------------------------------------------------- /src/arch/x86/mem/paging.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/mem/paging.rs -------------------------------------------------------------------------------- /src/arch/x86/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/mod.rs -------------------------------------------------------------------------------- /src/arch/x86/multiboot2.S: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/multiboot2.S -------------------------------------------------------------------------------- /src/arch/x86/start64.S: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/arch/x86/start64.S -------------------------------------------------------------------------------- /src/backtrace.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/backtrace.rs -------------------------------------------------------------------------------- /src/driver/gpio.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/driver/gpio.rs -------------------------------------------------------------------------------- /src/driver/keyboard.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/driver/keyboard.rs -------------------------------------------------------------------------------- /src/driver/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/driver/mod.rs -------------------------------------------------------------------------------- /src/driver/screen.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/driver/screen.rs -------------------------------------------------------------------------------- /src/driver/vga.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/driver/vga.rs -------------------------------------------------------------------------------- /src/logging.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/logging.rs -------------------------------------------------------------------------------- /src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/main.rs -------------------------------------------------------------------------------- /src/mem/frame.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/mem/frame.rs -------------------------------------------------------------------------------- /src/mem/kalloc/bump_kalloc.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/mem/kalloc/bump_kalloc.rs -------------------------------------------------------------------------------- /src/mem/kalloc/freelist_kalloc.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/mem/kalloc/freelist_kalloc.rs -------------------------------------------------------------------------------- /src/mem/kalloc/mimalloc/heap.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/mem/kalloc/mimalloc/heap.rs -------------------------------------------------------------------------------- /src/mem/kalloc/mimalloc/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/mem/kalloc/mimalloc/mod.rs -------------------------------------------------------------------------------- /src/mem/kalloc/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/mem/kalloc/mod.rs -------------------------------------------------------------------------------- /src/mem/load.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/mem/load.rs -------------------------------------------------------------------------------- /src/mem/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/mem/mod.rs -------------------------------------------------------------------------------- /src/misc.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/misc.rs -------------------------------------------------------------------------------- /src/panic.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/panic.rs -------------------------------------------------------------------------------- /src/screen.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/screen.rs -------------------------------------------------------------------------------- /src/sync.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/sync.rs -------------------------------------------------------------------------------- /src/task/cpu.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/task/cpu.rs -------------------------------------------------------------------------------- /src/task/cpu_local.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/task/cpu_local.rs -------------------------------------------------------------------------------- /src/task/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/task/mod.rs -------------------------------------------------------------------------------- /src/task/vm.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/task/vm.rs -------------------------------------------------------------------------------- /src/ui/keymap.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/ui/keymap.rs -------------------------------------------------------------------------------- /src/ui/kterm.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/ui/kterm.rs -------------------------------------------------------------------------------- /src/ui/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/ui/mod.rs -------------------------------------------------------------------------------- /src/ui/pxfont.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/ui/pxfont.rs -------------------------------------------------------------------------------- /src/ui/term.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/src/ui/term.rs -------------------------------------------------------------------------------- /targets/x86_64-nucloid.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/targets/x86_64-nucloid.json -------------------------------------------------------------------------------- /targets/x86_64.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kevin-lesenechal/nucloid/HEAD/targets/x86_64.ld --------------------------------------------------------------------------------