Go to file
2024-05-18 23:37:16 -05:00
.cargo Enable other cores and rewrite init step 2024-05-18 08:00:48 -05:00
.vscode Initial commit 2024-05-13 17:31:37 -05:00
src Rewrite some asm with riscv crate 2024-05-18 23:37:16 -05:00
.gitignore Initial commit 2024-05-13 17:31:37 -05:00
build.rs Update linker script 2024-05-18 20:02:40 -05:00
Cargo.lock Add riscv crate 2024-05-16 00:18:11 -05:00
Cargo.toml Add riscv crate 2024-05-16 00:18:11 -05:00
README.md Add another good site to readings 2024-05-18 00:15:18 -05:00

created modified
2024-05-13T14:28:49-05:00 2024-05-13T14:28:52-05:00

A kernel for RISC-V written in Rust. Currently focused on running on QEMU generic riscv64, advice and assistance welcome & encouraged.

Reading list

Beginner tutorial

  • Meyer Zinn's RISC-V kernel guide (right now, code is just copied from this - will diverge later)

Other reading

RISC-V Spec

Videos

TODO Research and implement

  • Basics
    • Processes
    • Virtual addrxess spaces, page tables
    • Files, directories
    • Pipes
    • Multitasking, time-slicing
    • Syscalls
  • CPU cache
  • User authentication, login
  • File protection, permissions
  • Mountable file systems
  • Paging to disk
  • Sockets, network support
  • Interprocess communication
  • Device drivers
  • User applications