This is my first attempt at creating an simple Operating System for educational purposes. I want to learn more about the fundamental concepts of computing, because of this I am doing several projects like writing an interpreter, compiler, web server, filesystem, this project and creating my own 8-bit computer composed of manny ttl chips, breadboards and (an unnecessary amount to make it look more complicated) LED's.
This project contains several components such as an bootloader, kernel and additional tools for building/running the operating system. The bootloader is written in the NASM assembly and the kernel will be written in C and C++. Some of the additional tools for build/run automation are going to written in Bash, Makefile and Python.
User | Contact | Role |
---|---|---|
Joris Rietveld | jorisrietveld@gmail.com | Maintainer, Developer |
Since its my fist real attempt to create an simple operating system, I have to learn a lot about almost every part needed in OS development. I enjoy to lean and found that writing tutorials and documentation really helps in my learning process. I think this is because explaining how, why and what your doing, uncovers if you really understand what and more importantly why you are doing something.
Resource types 🔗 websites, 🎬 Youtube videos 📘 PDF(downloads) and 📖 text books
-
NASM/assembly
-
C/C++
-
Bash
-
OS Development/Architecture
- 🔗 OS Development Series - BrokenThorn
- 🎬 FlingOS: Creating an OS
- Bootloader Specific
- Kernel Specific
-
Some basics
While researching the subject of OS development I found several cool projects on GitHub that inspired me during the creation of my project.
- 🔗 X86 Fuzzer, not related to OS dev but really cool) also watch a talk about it here.
Copyright (C) 2017 Joris Rietveld jorisrietveld@gmail.com This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.