kernel icon indicating copy to clipboard operation
kernel copied to clipboard

A custom OS kernel that followed (then diverged from) Philipp Oppermann's tutorial on writing an OS in Rust

Results 27 kernel issues
Sort by recently updated
recently updated
newest added

Bumps [spin](https://github.com/mvdnes/spin-rs) from 0.9.4 to 0.9.8. Changelog Sourced from spin's changelog. [0.9.8] - 2023-04-03 Fixed Unsoundness in Once::try_call_once caused by an Err(_) result [0.9.7] - 2023-03-27 Fixed Relaxed accidentally restricted...

dependencies

Bumps [spin](https://github.com/mvdnes/spin-rs) from 0.9.3 to 0.9.8. Changelog Sourced from spin's changelog. [0.9.8] - 2023-04-03 Fixed Unsoundness in Once::try_call_once caused by an Err(_) result [0.9.7] - 2023-03-27 Fixed Relaxed accidentally restricted...

dependencies

Here is what we have so far and what needs to be done. Contributions appreciated! Feel free to jump right in and start development of anything on this list --...

Currently everything is compiled directly into the kernel. This is a very unfeasible design since the kernel binary (in both debug and release) is quite large already, and building *every*...

help wanted
good first issue
Difficulty: easy

The kernel currently uses asynchronous scheduling via a Rust `async` runtime. This works, but has a few drawbacks: * Each function runs in sequence (even if it is marked as...

help wanted
good first issue
Difficulty: hard

The kernel should be able to at least time itself using the TSC as defined in the Intel manuals. Though I believed the formulas from EDK II were correct, testing...

help wanted
Difficulty: medium

Sometime in the future the kernel is going to need to execute AML in a safe and secure way (e.g. I'd like to avoid an in-kernel VM if possible; preferably,...

help wanted
good first issue
Difficulty: hard

The local APIC contains a timer that is controlled by the initial count, current count, and divide configuration registers (offsets 380h, 390h, and 3E0h). The kernel currently only uses the...

help wanted
good first issue
Difficulty: easy

Currently, the kernel uses Rusts async function support, but async functions run sequentially. There needs to be a way a driver or kernel function can tell the asynchronous scheduler to...

enhancement
help wanted
good first issue
Difficulty: medium

The code may need to be refactored. Though I've done my best to follow best practices and coding patterns, I may not have succeeded (e.g. I may have overused iterators)....

help wanted
good first issue