Skip to content

A toy Raspberry Pi 3B kernel for learning (unfinished)

License

Notifications You must be signed in to change notification settings

barrettotte/pi-learn-os

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pi-learn-os

A toy Raspberry Pi 3B kernel for learning.

I wanted to learn the basics of operating system development on something besides x86.

Implemented

  • UART
  • Exception level switching
  • Basic interrupt handling
  • Generic timer
  • MMU and paging

Unimplemented

  • Mailboxes
  • FAT16 filesystem and disk driver
  • processes and process scheduling
  • system calls
  • ELF and user space programs
  • much more...

Development

# setup cross compiler
make toolchain

# build
make build

# emulate via Qemu
make run

References