SalernOS is a small, work-in-progress, one-man project to learn Operating System development by building one from scratch.
Every component of SalernOS resides in its own repository, all respositories are hosted on this GitHub account. The structure of individual SalernOS Components is not standardized.
SalernOS is a toy Operating System. "toy" as in a piece of software that is written for non-commercial and non-professional use, but is rather intended for entertainment and improvement of programming skills. That said, I would like to achieve some milestones. These are, in no particular order:
- Establishing a framework for Hobbist Operating Systems - See OpenBIT
- Building an alternative userland - Just for fun
- Bringing SalernOS to other processor platforms such as AARCH64 and RISC-V
- Bringing SalernOS to a self-designed processor architecture and running it in emulation or physical hardware (If possible)
- Porting the GNU System to SalernOS - Building GNU/SalernOS
- Building a Graphics Stack (GPU Drivers, X11/Wayland Server, Window Manager, OpenGL Implementation)
- Overall, making a farely simple, yet usable FOSS graphical Operating System
Currently, most of the work on SalernOS is concentrated on the SalernOS-Kernel, and on building the OpenBIT System Specification. Despite all the effort, progress is slow, the SalernOS-Kernel is not yet ready for prime time, but I'm determined to get a somewhat usable version out by the end of 2022.
As shown in the picture, the short to medium term goal of SalernOS is to build a simple OS. Allthough the project is not fully outlined, the idea is to use a distribution model similar to that of Linux and other Free Operating SYstems. The SalernOS Standard Distribution would be the polished and working distro using GNU, while the SalernOS Experimental Distribution would be the 100% self-built software distribution. Standard Distribution components may include:
- GCC - The GNU Compiler Collection
- BASH
- Binutils - The GNU Linker
- GNU Coreutils
- X11/Wayland Server
- SalernOS MultiShell Window Manager
- Some random package manager
While the SalernOS Experimental Distribution may include:
- The SalernOS C Compiler
- The SalernOS Assembler
- The SalernOS Linker
- The OpenBit Shell
- X11/Wayland Server
- SalernOS MultiShell Window Manager
- SalernOS Core Utilities
- SGet - The SalernOS Package Manager