Raspberry Pi: Write Your Own Operating System Step by Step
|
Learn how to build a simple operating system for the ARM64 architecture with this comprehensive course. Understand the fundamentals of ARM64, handle interrupts and exceptions, and write OS kernel using assembly and C code. Develop a memory manager using ARM paging mechanism, build a process manager to schedule processes, and implement a system call module. Interact with the OS kernel using a simple console and learn to write a file system module. Perfect for students, curious individuals, and hobbyists looking to put their operating system knowledge into practice. Start developing your own 64-bit operating system today.
What you’ll learn
- Be able to build a simple operating system for the ARM64 architecture.
- Understand the fundamentals of ARM64
- How to handle interrupts and exceptions in ARM64 mode
- How to write OS kernel with the assembly code and C code
- Be able to build a memory manager using ARM paging mechanism
- How to write timer handler for the process manager
- How to build a process manager to schedule processes and change them among different states (sleep, ready, killed)
- How to implement system call module to make user programs running in the system
- Write a simple console and interact with OS kernel using commands
- Be able to write a simple file system module which supports reading fat16 system.
Welcome to Raspberry Pi: Write Your Own Operating System course.
This course teaches you how to build a simple operating system from scratch. It covers basics about the AArch64 architecture and low-level programming. In this course, we will take you through the process of building a small working system step by step.
The first part of the course teaches all you need to know (processor modes, paging, exceptions and interrupts handling, etc.) before you can build the kernel on the AArch64 architecture. In this part, we will see how to prepare for mode switching. We switch from EL2 to EL1 and then jump to EL0. Our kernel is running in 64-bit mode. We will see how to handle exceptions and interrupts, how to switch between kernel mode and user mode.
The second part of the course teaches you how to build kernel modules such as processes, memory management, interrupt handling, etc. In this part, we will see how to interact with the OS kernel using the console. After finishing this part, you should know how to write user programs and make them running in your own operating system.
In this course you will learn:
How to build a simple operating system for the AArch64 architecture.
How to handle interrupts and exceptions
How to write OS kernel with the assembly code and C code
Be able to write print function to print characters on the screen
Be able to build a memory manager using paging mechanism
How to write timer handler for the process manager
How to build a process manager to schedule processes and change them among different states (sleep, ready, killed)
How to implement system call module to make user programs running in the system
Write a UART driver
Write a simple console and interact with OS kernel using commands
Be able to write a simple file system module which supports reading fat16 system.
At the end of the course, you should be able to develop your own 64-bit operating system.
Who this course is for:
- Students who learned the operating system concepts and want to put them into practice
- Students curious about the fundamental mechanisms used in the OS
- People who want to build a hobby OS but don’t know how and where to start
User Reviews
Be the first to review “Raspberry Pi: Write Your Own Operating System Step by Step” Cancel reply
You must be logged in to post a review.

There are no reviews yet.