Learn OS development by building your own 32-bit operating system.
Project details
lytlnyblOS is a practical educational project designed to guide beginners through the intricacies of operating system development. This lightweight, from-scratch 32-bit OS teaches essential concepts while allowing learners to create a functioning system. Complete with a comprehensive guide, users will implement a bootloader, memory management, processes, a filesystem, and more.
lytlnyblOS, or little nibble OS, is an educational project designed to guide beginners through the practical development of a 32-bit operating system from scratch. This operating system can be run on a QEMU virtual machine and is accompanied by The lytlnyblOS Book, which systematically instructs users in creating their OS, covering essential topics such as bootloaders, protected mode, interrupts, memory management, processes, filesystems, and a user shell.
The repository contains the source code corresponding directly to the comprehensive explanations found in the accompanying book. Each segment of code is fully aligned with the educational objectives laid out, ensuring a cohesive learning experience.
By progressing through this project, users will build essential components of an operating system, including:
The project is complete and deemed feature complete for educational purposes, with ongoing refinements aimed at improving the guide and user experience. Feedback from users working through the guide is valuable and encouraged. For contributions or suggestions, please refer to the CONTRIBUTING.md.
guide/ - Contains the source for the book, created using mdbook.lytlnybl/ - Source files for the operating system.blog_playground/ - Chronicles the history of the OS's creation, although it is not maintained.No special hardware is necessary. Users will need standard tools such as NASM, an i686 cross-compiler for C, QEMU, Make, and GDB. The project is primarily designed to be run in a UNIX-like environment, particularly Linux, with Windows users recommended to use WSL.
Any errors or unclear sections in the guide can be reported by opening an issue. Contributions in the form of feedback, technical corrections, or questions are crucial for the continuous improvement of this resource.
Further information regarding acknowledgements can be found in the book's Introduction.
Engage with this project to gain a deeper understanding of OS development, where each line of code written contributes to the mastery of creating a custom operating system.
Comments
0Start the conversation
Share the first comment.