Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/mtribiere/PoulpyOS

A toy OS for learning
https://github.com/mtribiere/PoulpyOS

Last synced: 2 months ago
JSON representation

A toy OS for learning

Lists

README

        

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)


## Description
A completely custom OS written from scratch, no Linux, no Windows, no nothing.

The bootloader is in assembly, and the Kernel written in C.


## Testing the OS
```console
user@debian:~$ sudo apt update
user@debian:~$ sudo apt install qemu qemu-system-x86
user@debian:~$ make run
```

## Compiling for dev
```console
user@debian:~$ make debug
```

## Todo List
- [X] Custom bootloader
- [x] Booting to 16 bits mode
- [x] Booting to 32 bits mode
- [x] Loading kernel and basic drivers
- [ ] Avoid pulling on input buffer driver
- [x] Basic Shell
- [x] Secret command
- [ ] Window manager
- [ ] Better timing for the clock based
- [ ] Support exporting to ISO file
- [ ] Make sure the PC doesn't blow up
- [x] Test on real hardware

## Resources and useful links
- https://wiki.osdev.org/Expanded_Main_Page
- https://github.com/cfenollosa/os-tutorial
- http://www.osdever.net/FreeVGA/vga/crtcreg.htm
- https://www.cs.bham.ac.uk/~exr/lectures/opsys/10_11/lectures/os-dev.pdf ( <- Best one )

Crafted with :heart: by mtribiere