Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/arthurmco/rainos

A hobby operating system, designed for old computers
https://github.com/arthurmco/rainos

c easy-to-use hobby-os operating-system x86-32

Last synced: 3 months ago
JSON representation

A hobby operating system, designed for old computers

Awesome Lists containing this project

README

        

# RainOS

RainOS is a simple OS with a monolithic kernel, designed for old computers.

## Setup
To run it, you need a cross compiler for the i686 target. [Here](http://wiki.osdev.org/GCC_Cross-Compiler) you'll find some directions

To compile it, just type

```
$ make
```

The makefile assumes your cross-compiler folder is in the PATH.
Out-of-tree builds aren't tested.

You can also type ```make iso``` to create an ISO with the system or ```make qemu``` to launch it on QEMU.

## Minimal Requirements
- A P6-level processor
- 2 MiB of RAM

## ToDo list

If you want, you can help me with these tasks

- [X] Jump to usermode and run some basic code
- [X] Improve VFS and create filesystem drivers, like
- [X] a FAT driver
- [ ] a ext driver
- [ ] Add virtual 8086 support
- [ ] Add VBE support (for creating framebuffers in BIOS systems)
- [ ] Add DMA support in ATA driver
- [X] Add an ELF parser
- [ ] Launch ELF code in usermode
- [ ] Create some syscalls
- [ ] Support x86-64
- [ ] Support UEFI
- [ ] Add GOP framebuffer support (framebuffers in UEFI)
- [ ] Support, at least, one ARM board, like
- [ ] Integrator/CP
- [ ] Beaglebone
- [ ] Raspberry PI
- [ ] Add SATA disk support
- [ ] Add networking
- [ ] Add USB support