├── .cargo └── config.toml ├── .dockerignore ├── .github └── workflows │ └── docker.yml ├── .gitignore ├── Cargo.lock ├── Cargo.toml ├── Dockerfile ├── LICENSE ├── Makefile ├── README.md ├── apps ├── atest │ ├── Cargo.toml │ ├── build.rs │ ├── linker.ld │ └── src │ │ └── main.rs ├── btest │ ├── Cargo.toml │ ├── build.rs │ ├── linker.ld │ └── src │ │ └── main.rs ├── ctest │ ├── Cargo.toml │ ├── build.rs │ ├── linker.ld │ └── src │ │ └── main.rs └── hello │ ├── Cargo.toml │ ├── build.rs │ ├── linker.ld │ └── src │ └── main.rs ├── bochs.conf ├── boot ├── Cargo.toml ├── build.rs ├── linker.ld └── src │ ├── boot.asm │ ├── disk.rs │ └── main.rs ├── bootloader ├── Cargo.toml ├── build.rs ├── linker.ld └── src │ ├── disk.rs │ ├── gdt.rs │ ├── main.rs │ ├── print.rs │ └── splash.rs ├── disk.layout ├── kernel ├── Cargo.toml ├── build.rs ├── linker.ld └── src │ ├── drivers │ ├── disk.rs │ ├── keyboard.rs │ ├── mod.rs │ └── pic.rs │ ├── filesystem │ ├── fat.rs │ └── mod.rs │ ├── interrupts │ ├── exceptions.rs │ ├── idt.rs │ ├── mod.rs │ └── timer.rs │ ├── main.rs │ ├── memory │ ├── allocator.rs │ ├── mod.rs │ └── paging.rs │ ├── multitasking │ ├── mod.rs │ └── task.rs │ ├── shell │ ├── mod.rs │ └── shell.rs │ └── syscalls │ ├── handler.rs │ ├── mod.rs │ └── print.rs ├── lib ├── Cargo.toml └── src │ ├── lib.rs │ ├── mutex.rs │ └── print.rs ├── lorem ├── pacciani ├── rust-toolchain.toml ├── thesis.pdf ├── x86_16-felix.json └── x86_32-felix.json /.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/.cargo/config.toml -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- 1 | /build 2 | /target 3 | bx_enh_dbg.ini 4 | -------------------------------------------------------------------------------- /.github/workflows/docker.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/.github/workflows/docker.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | /target 3 | bx_enh_dbg.ini 4 | out.txt 5 | 6 | .idea 7 | -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/Cargo.toml -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/README.md -------------------------------------------------------------------------------- /apps/atest/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/atest/Cargo.toml -------------------------------------------------------------------------------- /apps/atest/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/atest/build.rs -------------------------------------------------------------------------------- /apps/atest/linker.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/atest/linker.ld -------------------------------------------------------------------------------- /apps/atest/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/atest/src/main.rs -------------------------------------------------------------------------------- /apps/btest/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/btest/Cargo.toml -------------------------------------------------------------------------------- /apps/btest/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/btest/build.rs -------------------------------------------------------------------------------- /apps/btest/linker.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/btest/linker.ld -------------------------------------------------------------------------------- /apps/btest/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/btest/src/main.rs -------------------------------------------------------------------------------- /apps/ctest/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/ctest/Cargo.toml -------------------------------------------------------------------------------- /apps/ctest/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/ctest/build.rs -------------------------------------------------------------------------------- /apps/ctest/linker.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/ctest/linker.ld -------------------------------------------------------------------------------- /apps/ctest/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/ctest/src/main.rs -------------------------------------------------------------------------------- /apps/hello/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/hello/Cargo.toml -------------------------------------------------------------------------------- /apps/hello/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/hello/build.rs -------------------------------------------------------------------------------- /apps/hello/linker.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/hello/linker.ld -------------------------------------------------------------------------------- /apps/hello/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/apps/hello/src/main.rs -------------------------------------------------------------------------------- /bochs.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/bochs.conf -------------------------------------------------------------------------------- /boot/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/boot/Cargo.toml -------------------------------------------------------------------------------- /boot/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/boot/build.rs -------------------------------------------------------------------------------- /boot/linker.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/boot/linker.ld -------------------------------------------------------------------------------- /boot/src/boot.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/boot/src/boot.asm -------------------------------------------------------------------------------- /boot/src/disk.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/boot/src/disk.rs -------------------------------------------------------------------------------- /boot/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/boot/src/main.rs -------------------------------------------------------------------------------- /bootloader/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/bootloader/Cargo.toml -------------------------------------------------------------------------------- /bootloader/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/bootloader/build.rs -------------------------------------------------------------------------------- /bootloader/linker.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/bootloader/linker.ld -------------------------------------------------------------------------------- /bootloader/src/disk.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/bootloader/src/disk.rs -------------------------------------------------------------------------------- /bootloader/src/gdt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/bootloader/src/gdt.rs -------------------------------------------------------------------------------- /bootloader/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/bootloader/src/main.rs -------------------------------------------------------------------------------- /bootloader/src/print.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/bootloader/src/print.rs -------------------------------------------------------------------------------- /bootloader/src/splash.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/bootloader/src/splash.rs -------------------------------------------------------------------------------- /disk.layout: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/disk.layout -------------------------------------------------------------------------------- /kernel/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/Cargo.toml -------------------------------------------------------------------------------- /kernel/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/build.rs -------------------------------------------------------------------------------- /kernel/linker.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/linker.ld -------------------------------------------------------------------------------- /kernel/src/drivers/disk.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/drivers/disk.rs -------------------------------------------------------------------------------- /kernel/src/drivers/keyboard.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/drivers/keyboard.rs -------------------------------------------------------------------------------- /kernel/src/drivers/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/drivers/mod.rs -------------------------------------------------------------------------------- /kernel/src/drivers/pic.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/drivers/pic.rs -------------------------------------------------------------------------------- /kernel/src/filesystem/fat.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/filesystem/fat.rs -------------------------------------------------------------------------------- /kernel/src/filesystem/mod.rs: -------------------------------------------------------------------------------- 1 | pub mod fat; 2 | -------------------------------------------------------------------------------- /kernel/src/interrupts/exceptions.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/interrupts/exceptions.rs -------------------------------------------------------------------------------- /kernel/src/interrupts/idt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/interrupts/idt.rs -------------------------------------------------------------------------------- /kernel/src/interrupts/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/interrupts/mod.rs -------------------------------------------------------------------------------- /kernel/src/interrupts/timer.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/interrupts/timer.rs -------------------------------------------------------------------------------- /kernel/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/main.rs -------------------------------------------------------------------------------- /kernel/src/memory/allocator.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/memory/allocator.rs -------------------------------------------------------------------------------- /kernel/src/memory/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/memory/mod.rs -------------------------------------------------------------------------------- /kernel/src/memory/paging.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/memory/paging.rs -------------------------------------------------------------------------------- /kernel/src/multitasking/mod.rs: -------------------------------------------------------------------------------- 1 | pub mod task; 2 | -------------------------------------------------------------------------------- /kernel/src/multitasking/task.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/multitasking/task.rs -------------------------------------------------------------------------------- /kernel/src/shell/mod.rs: -------------------------------------------------------------------------------- 1 | pub mod shell; 2 | -------------------------------------------------------------------------------- /kernel/src/shell/shell.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/shell/shell.rs -------------------------------------------------------------------------------- /kernel/src/syscalls/handler.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/syscalls/handler.rs -------------------------------------------------------------------------------- /kernel/src/syscalls/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/syscalls/mod.rs -------------------------------------------------------------------------------- /kernel/src/syscalls/print.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/kernel/src/syscalls/print.rs -------------------------------------------------------------------------------- /lib/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/lib/Cargo.toml -------------------------------------------------------------------------------- /lib/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/lib/src/lib.rs -------------------------------------------------------------------------------- /lib/src/mutex.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/lib/src/mutex.rs -------------------------------------------------------------------------------- /lib/src/print.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/lib/src/print.rs -------------------------------------------------------------------------------- /lorem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/lorem -------------------------------------------------------------------------------- /pacciani: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/pacciani -------------------------------------------------------------------------------- /rust-toolchain.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/rust-toolchain.toml -------------------------------------------------------------------------------- /thesis.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/thesis.pdf -------------------------------------------------------------------------------- /x86_16-felix.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/x86_16-felix.json -------------------------------------------------------------------------------- /x86_32-felix.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mrgian/felix/HEAD/x86_32-felix.json --------------------------------------------------------------------------------