Nigel 5051b8903c Divided the kernel into seperate distinct phases
The first stage after GRUB will be Pre-Kernel. This stage will organize the
information we receive from the bootloader. (in our case that will be grub)

The second stage is for now called early_main. The program will at this
point already be running in virtual higher-half / higher-quarter address space.
The goal of the second stage is to set up the kernel in such a way that we are
ready to jump in to usermode.

The third stage is for now called kernel_main. This stage will jump us into
usermode and load the startup programs.

- Added a GRUB entry for tests
- Started writing the pre-kernel stage
- Removed knowledge of multiboot from early_main
- Edited the linkerscript to link variables in pre-kernel to
	lower address space. ( from 1MB and up)
2022-08-22 21:16:34 +02:00
2022-08-19 01:05:10 +02:00
2022-08-19 01:05:10 +02:00

Writing an Operating system

As a learning experience!

Inspired by people like Linus Torvalds and Andreas Kling

Logo


Screenshot(s)

Scrolling the terminal
The first scrolling boot screen. 😲

Interrupt handeling
W.I.P - Working on interrupt handling

Multiboot integration
Multiboot information can be read by the kernel.

Page faulting
Enabled paging and am getting page faults!


The goal

Writing a hobby operating system to better understand the basic building blocks of any operating system.Initially I'd like for my operating system to be able to run bash.


Operating System Technical specs/details

The operating system can print strings to the screen. The terminal/screen has scrolling so the latest messages are visible on the screen.


Planning

See TODO
See Features


Docs

Intro
Manuals
Project structure


Resources:

General kernel stuff

wiki.osdev.org/Main_Page

Modern Operating Systems [book]

whiteheadsoftware.dev

More specific stuff

VFS explained: science.unitn.it

Description
Building a Kernel / Operating system from scratch.
Readme 175 MiB
Languages
C++ 61.2%
C 30.7%
Assembly 3.3%
Makefile 2.8%
Shell 1.7%
Other 0.3%