Learning operating system development using Linux kernel and Raspberry Pi
-
Updated
Jun 14, 2021 - C
{{ message }}
Learning operating system development using Linux kernel and Raspberry Pi
A completely-from-scratch hobby operating system: bootloader, kernel, drivers, C library, and userspace including a composited graphical UI, dynamic linker, syntax-highlighting text editor, network stack, etc.
A proof-of-concept microkernel that implements a WebAssembly "usermode" that runs in Ring 0.
The virtio_scsi driver enqueues buffers to the eventq but does not actually handle them on completion. The following events could be reported to the driver which require some action to be taken:
libhermit-rs: A Rust-based library operating system
Although a new inline assembly syntax asm! was announced in Rust on 2020/06/08[1], KRaBs still uses llvm_am!.
[1] New inline assembly syntax available in nightly
According to the blog, the asm! macro should be safer and easier to use. This is expected to become the mainstream of inline assembly in the future, so
RustyHermit - A Rust-based, lightweight unikernel
Unikraft is an automated system for building specialized OSes known as unikernels. Unikraft can be configured to be POSIX-compliant. (Core repository)
the binary memory map describes only one space, starting with the physical address 0x00100000
process the rest of the memory map entries and describe them in a binary memory map
An operating system written in C
A hobby operating system developed from scratch
Add a description, image, and links to the osdev topic page so that developers can more easily learn about it.
To associate your repository with the osdev topic, visit your repo's landing page and select "manage topics."
This is on hold because of the many bugs in the compiler
The build has received support for C++20 modules and it's now time to port the whole codebase to it.
The battle plan is to first port applications and utilities and then works our way down the dependency chain except everything needed by the kernel and the libc: libsystem, libio, libutils, libjson
Applications