This is an in depth tutorial on how to write an operating system for the raspberry pi. It assumes prior knowledge of the C language, but does not assume any prior OS Dev knowledge. The tutorial is broken up into pieces, where each piece is a differenet OS Concept. Each concept has explantions for how to do it, why it is done, and what purpose it serves.

If you find something confusing, or you have questions or suggestions about this tutorial, submit an issue to this repo’s issue page.

If you see a problem with the kernel itself, submit an issue to the kernel’s issue page

If you want to have a discussion, go to the gitter for this repo