42-archive/kernel-rs
2018-03-29 20:29:04 +02:00
..
mk major refactoring for upcoming cross platform, also recycle allocator for the physical frames 2018-03-29 17:10:42 +02:00
multiboot2-elf64@73530c4190 little correctif 2018-03-20 13:37:51 +01:00
src pio and x86/pic 2018-03-29 20:29:04 +02:00
x86@3cef2945c8 major refactoring for upcoming cross platform, also recycle allocator for the physical frames 2018-03-29 17:10:42 +02:00
.gitignore Merge branch 'master' of https://github.com/jzck/kernel 2018-02-12 16:25:45 +01:00
.gitmodules WIP 2018-03-13 20:06:25 +01:00
.travis.yml travis and readme 2018-02-21 15:52:44 +01:00
Cargo.toml major refactoring for upcoming cross platform, also recycle allocator for the physical frames 2018-03-29 17:10:42 +02:00
Makefile major refactoring for upcoming cross platform, also recycle allocator for the physical frames 2018-03-29 17:10:42 +02:00
README.md travis and readme 2018-02-21 15:52:44 +01:00
x86-bluesnow.json i must have done something right becuase now 0xffff_f000 points to p2 as expected, hurray 2018-03-11 18:41:34 +01:00
Xargo.toml heap allocator in place, no free yet 2018-03-12 17:48:24 +01:00

Kernel from scratch (KFS) series of projects at Ecole 42 !

documentation

dependencies

  • nasm compiles the bootcode
  • ld links the bootcode and rust binary
  • grub-mkrescue builds the iso
  • xargo builds rust code
  • qemu runs the iso

See .travis.yml to get an ubuntu environment ready
on archlinux pacman -S rustup make grub xorriso mtools binutils gcc qemu

rust setup

rustup override add nightly
rustup component add rust-src
cargo install xargo

running

make run runs the OS in a tmux window with qemu + gdb
make iso generate an iso to run wherever

References