Skip to content
/ NoobOS Public template

A simple barebones OS kernel template for developers to get started with OS dev

License

Notifications You must be signed in to change notification settings

vinsdragonis/NoobOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

e4c6516 · May 17, 2024

History

35 Commits
Jun 2, 2023
Jul 21, 2022
Jun 2, 2023
May 17, 2024
Jul 23, 2022
May 17, 2024
Jul 21, 2022
Jul 21, 2022
Apr 8, 2024
Jul 21, 2022
Jun 2, 2023
Jun 2, 2023
Jul 21, 2022

Repository files navigation

NoobOS

A simple OS template for developers to get started with OS dev

What does this do?

This is a simple and minimalistic implementation of a bootloader and a kernel to boot the OS from the disk, load the kernel, and indicate the same by printing a message on the screen.

Purpose

If you want to learn more about OS dev but can't find any simple source on the same, then you can use this repository as a reference. Modern operating systems are much more complex compared to this implementation, so it is advisable to refer to other sources such as OSdev Wiki once you have a better understanding of OS dev

Building the project

If your system needs to set file permissions for the build script, use the command below:

chmod +x build.sh

Once permissions are set, run the command below to compile the source files and boot the OS:

./build.sh

See dependencies for more info on required libraries and software installed

Working Screenshot

NoobOS

Dependencies

  • QEMU
  • gcc
  • NASM
  • WSL (Windows machines only)

Pre-requisites

  • Knowledge of C programming
  • Basics of Assembly x86
  • Basics of operating systems
  • Registers and flags (x86 architecture)

References

Alternative sources

Credits