2021-05-02 16:02:00 +00:00
# Writing an Operating system
2021-05-03 00:22:12 +00:00
## As a learning experience!
Inspired by people like Linus Torvalds and Andreas Kling
2021-05-26 18:51:35 +00:00
2021-05-26 19:03:53 +00:00
![Logo ](images/BarinkOS.png )
2021-05-26 18:58:27 +00:00
2021-05-03 00:22:12 +00:00
________________________
### Screenshot(s)
2021-05-26 19:03:53 +00:00
![Scrolling the terminal ](screenshots/Screenshot1.png ) \
2021-05-03 18:46:11 +00:00
The first scrolling boot screen. 😲
2021-07-22 21:14:58 +00:00
![Interrupt handeling ](screenshots/WIP_interruptHandling.png ) \
2021-05-16 14:53:14 +00:00
W.I.P - Working on interrupt handling
2021-07-22 21:14:58 +00:00
![Multiboot integration ](screenshots/multiboot.png ) \
Multiboot information can be read by the kernel.
2022-08-18 23:05:10 +00:00
![Page faulting ](screenshots/PageFault.png ) \
Enabled paging and am getting page faults!
2021-11-28 20:12:12 +00:00
![PCI enumeration ](screenshots/PCIBusEnumeration.png ) \
Enumerating the PCI bus
2021-11-30 23:00:45 +00:00
![ATAPI CD-ROM Identification ](screenshots/CD-ROM_Identify.png ) \
Correctly identified our ATAPI device 🎉
2022-03-12 16:04:38 +00:00
![Reading Files from FAT-16 ](screenshots/ReadingFilesFromFAT16.png ) \
2023-02-26 12:44:41 +00:00
Reading a FILE from a FAT-16 Formatted drive
2022-08-18 23:05:10 +00:00
2021-05-03 00:22:12 +00:00
________________________
2021-05-02 16:02:00 +00:00
### The goal
2022-02-26 19:44:16 +00:00
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.
2021-05-02 16:02:00 +00:00
2021-05-03 00:22:12 +00:00
________________________
### 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.
2021-05-02 16:02:00 +00:00
2021-05-03 00:22:12 +00:00
________________________
### Planning
2021-11-22 19:04:14 +00:00
[See TODO ](todo.md ) \
[See Features ](features.md )
2021-05-03 00:22:12 +00:00
________________________
### Docs
[Intro ](docs/Intro.md ) \
[Manuals ](docs/Manuals.md ) \
[Project structure ](docs/ProjectStructure.md )
________________________
2021-05-02 16:02:00 +00:00
### Resources:
2021-05-03 00:22:12 +00:00
#### General kernel stuff
2021-05-02 16:02:00 +00:00
[wiki.osdev.org/Main_Page ](wiki.osdev.org/Main_Page )
[Modern Operating Systems [book]](https://www.amazon.com/Modern-Operating-Systems-Tanenbaum-Andrew/dp/1292061421/ref=sr_1_1?__mk_nl_NL=%C3%85M%C3%85%C5%BD%C3%95%C3%91& dchild=1& keywords=Modern+Operating+systems& qid=1619967779& sr=8-1)
2021-05-02 19:53:31 +00:00
2021-05-03 00:22:12 +00:00
[whiteheadsoftware.dev ](https://whiteheadsoftware.dev/operating-systems-development-for-dummies/ )
#### More specific stuff
[VFS explained: science.unitn.it ](https://www.science.unitn.it/~fiorella/guidelinux/tlk/node102.html )
2021-05-02 19:53:31 +00:00