A simple, basic, open-sourced UNIX-like operating system built by Suriyaa.
Notice: This ReadMe only documents a subset of suriyaaOS's features. For additional documentation please see the suriyaaOS site.
The goal is to build a very simple UNIX-based operating system in C++, not just a "proof-of-concept". The OS should be able to boot, start a userland shell, and be extensible.
The OS will be built for the x86 architecture, running on 32 bits, and compatible with IBM PCs. It also works as a virtual machine nearly on all similar computers like Windows, Mac & Linux.
- Code in C++
- x86-architecture -> 32-bits
- Boot with (GNU) Grub
- Kind of modular system for drivers (it's not really great)
- Kind of UNIX style (again: It's not great)
- Multitasking
- ELF executable in userland (-> kernel.elf)
- Modules (accessible in userland using /suriyaa/...):
- IDE disks
- DOS partitions
- Clock
- EXT2 (read only)
- Boch VBE
- Userland:
- API Posix
- LibC
- "Can" run a shell or some excutables like Lua, ...
- Supports ASCII and OSCII 8 standard scheme
Buy or build a computer using x86 architecture. It should be compatible with IBM PCs.
You will need Vagrant and VirtualBox or QEMU installed. Read the INSTALL.md
file.
- ✅ Compiles
- ✅ Builds Image
- ✅ Boots
Find more information in these files:
- suriyaaOS Contributors:
AUTHORS.md
- How to contribute to suriyaaOS:
CONTRIBUTING.md
- Frequently Asked Questions:
FAQ.md
- Help me:
HELP.md
- How to install suriyaaOS:
INSTALL.md
- Copyright information:
LICENSE.md
- Questions & Issues:
QUESTIONS.md
- About suriyaaOS:
README.md
- References:
SUMMARY.md
Copyright © 2015-present Suriyaa Sundararuban. All rights reserved.
Distributed under the Apache License 2.0. See LICENSE.md
file for more copyright informations.