SigmaOS 2 banner

SigmaOS 2

2 devlogs
4h 37m 9s

A new operating system from scratch.

This project uses AI

Used ChatGPT and GitHub Copilot for explanations, coding assistance, autocomplete, and NEX (Next Edit Suggestions).

Repository

Loading README...

itsha123

Before I get started with what I worked on, here are some high-level OS terms you need to know:
Bootlaoder - The thing that first runs when you boot an operating system. Normally written in Assembly and ~5% of the total effort put into an operating system. It’s job is to load the kernel.
Kernel - The backbone of the OS. It does memory, process, and resource management. Normally written in C or C++ and ~60% effort.
Shell - The user-facing part of the OS. It can be GUI or CLI. This is where all the apps are displayed and how you interact with the OS. Idk what language it’s normally written in, but it’s ~35% effort.


I’m still stuck on bootloader right now, so you can see I have a long way to go :D Unfortunately, basically all the work I’ve done so far has to be scrapped, because UEFI is completely different and that’s the end goal. Yay!


What you see right now is the last edition of BIOS SigmaOS 2, which crashes with an error message since it’s finally loading the kernel correctly but the OS is running in 16 bit and the kernel is 32 bit.


Here’s what to expect going forward:

  • Make a Hello World in UEFI
  • Initial release and long term roadmap
  • Make OS work across ARM and x86 with an abstracted print function
  • Rest will be on the roadmap
Attachment
0
itsha123

Add a kernel, bootloader, and build script. Kernel is completely dysfunctional because OS is in 16 bit instead of 32 or 64 bit mode.
Main achievement: Printing letter a from bootloader! (then kernel crashes, and OS hangs (i think) with a on the screen)

Next update:

  • Enter 64 bit long mode
  • Print Hello World from kernel

After that (short-term roadmap):

  • Use UEFI to print Hello World
  • Bootloader for ARM + x86/ARM abstracted print function
Attachment
0