flower
flower copied to clipboard
A learning OS
We need to implement system calls for Flower, preferably with `syscall`/`sysret`.
We need to be able to parse and load elf-files (at least statically linked) so that we can run programs in userspace.
Should we write a 'book'-escque doc using mdbook? I could host a rendered version.
Currently, flower hasn't been run through `rustfmt` or `clippy`... *yikes*. This should be fixed. We should also add some `deny` and `warn` lints for things such as missing debug impl's.
The PS/2 controller and keyboard should use interrupts rather than polling, when this is implemented.
Numbers on the numpad don't work, even with shift or numlock.
Tested in qemu with following code: ```rust loop { if let Ok(Some(event)) = keyboard.read_event() { if event.event_type == KeyEventType::Break && event.keycode == keymap::codes::DOWN_ARROW { break; } } } ```
This causes the kernel to freeze (panics, and we have no logger for that) when an error is thrown, as it just calls `.expect()` on the `Result`.
Device state should rather be accessed through a function, so it can be checked each time it is called. In the current state, a device could be unplugged, but this...