Projects
This page maintains a list of academic, personal, and small non-commercial operating systems. For information regarding commercial or mainstream operating systems, please visit Wikipedia.
OSes have a high mortality rate: between 2004 and 2006, 112 of 213 OS Projects disappeared from the Internet. And looking at how often these projects are started by using the OS Project Announcement forum, in that same time period 68 projects were announced! The current total is 175 projects, but just 58 of them are active (as of January 1, 2018) and only 62 have been updated at least once since 2018 (three of which have been since abandoned), and 27 since 2019. Please help keep this list current by correcting it if you see any outdated information.
OSes without an update since 2015 are now located at Abandoned Projects.
More mature hobby operating systems can also be found at Notable Projects.
Particularly advanced and successful operating systems are listed at Advanced Projects.
Contents: 9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
9
9frontPlan9front (or 9front) is a fork of the Plan 9 from Bell Labs operating system. The project was started to remedy a perceived lack of devoted development resources inside Bell Labs, and has accumulated various fixes and improvements. Our homepage: https://9front.org/ , our artwork: https://9front.org/propaganda/ |
|
A
Acess2Acess2 is a kernel and operating system designed to do what Linux does, be customizable to any given situation. However, unlike Linux, it there is no need to maintain backwards compatibility with anything. It features a simple but extensible VFS that currently supports VFAT and Ext2, IPv4/IPv6 networking with TCP/UDP, USB input, and storage. Recently, this project has been moved to GitHub, but its old git repo—with outdated sources and some useful documentation—can be found here: https://git.mutabah.net/?p=acess2.git;a=summary . v0.14 outdated floppy image is available at its' old page: username - root, password is blank. Could try building a new floppy from the latest sources by yourself! (some software rot has been noticed but its fixable) |
|
AmethystThe goal, as much as there is one, is to produce an operating system vaguely similar to Windows 95/NT4 (if Windows 95 didn't inherit baggage from DOS and 3.1).. |
|
Amiga Research Operating SystemAROS aims to create a free open source AmigaOS like OS and make it better than the original. Our homepage: https://aros.sourceforge.net |
|
The Apollo ProjectThe Apollo project is a microkernel designed for maximum portability. Closely following the UNIX Philosophy without being unix itself. The Project has been active for about 6 years, with about 8 complete code rewrites along the way. |
|
AqeousAqeous is a new Completely-from-scratch, Not-a-UNIX 32 Bit pmode OS (basically a kernel right now), with SMP style Multi-Processor Support each using Multilevel Feedback Queuing Scheduling, Implementing its own FileSystem AqFS (also made a windows side AqFS Driver to communicate), Pretty good Shell, Pretty Neat VESA Graphics drivers, A Composting window GUI system with double buffering and Alpha-Blending, A primitive Scalable Font Rendering Engine and off-course mouse and keyboard drivers , Shell Scripting Support (like .bat in Windows) etc. Many things are in active development and its still not even in alpha. The Code may look pretty stupid but yeah that won't be that bad for long. The goal is to make something on which u can open facebook and send me a 'Hi' :) Currently It supports only Qemu :( But working on that too. |
|
AQUA OSAQUA OS is a 32 bit protected mode operation system, that has a nice organic and natural graphical interface. It is also very developer friendly, with loads of APIs. |
|
AquilaOSAquilaOS is a UNIX-like operating system, intended to be fully POSIX-compliant. Its design follows a generic and robust approach. Many POSIX interfaces are already supported including multi-threading, and many POSIX compliant applications have been ported. |
|
AsuroAsuro is an x86 Operating System that started development in 2015 as somewhat of an academic project. Written almost entirely in Freepascal, with NASM used only for bootstrapping & minimal low-level routines, Asuro is a purely hobbyist operating system that differs quite majorly in design from any mainstream OS by using a VM/SE to run anything other than kernel code. |
|
AstralAstral is a 64 bit operating system written in C which aims be compatible with POSIX. It has a growing support for networking and is able to run from disk with support for caching pages. Currently ported software ranges from Bash and GCC to X.org, Fvwm3, xterm and Quake. |
|
AuraAura is part of a larger idea, Project Asiago. It's goal is to reinvent all the currently outdated systems in one unified setup. Aura is just the kernel part of this. |
|
AwooOSawooOS is an experimental, monotasking operating system, bringing together old ideas and new technology. It is designed around a microkernel, with as much moved into libraries as possible. The kernel proper is less than 50 lines of code. |
|
aurora-xenevaaurora-xeneva is a multitasking GUI based operating system targeting x86_64 & aarch64 architecture, focusing most modern hardwares as possible. "Aurora" being the name of kernel and "Xeneva" is the name of entire operating system. Aurora kernel features SMP, Networking, HD-Audio,USB3,Graphical Drivers,..many more. |
|
B
BananaBanana is a 32-bit OS written in C and C++, designed for a 486 or better with at least 16MB of RAM. The kernel is pre-emptive and supports loading ELF drivers and modules from the disk. It runs on real hardware, and supports ATA/ATAPI/SATA/SATAPI/floppy disks, FAT/exFAT/ISO9660 filesystems, PS/2 keyboard and mouse, SB16 and AC97 audio. Banana also has ACPI support. It comes with an installer which can be run from floppies or a CD-ROM. Currently has a command line shell, and a GUI with solitaire, minesweeper, a photo viewer and text editor. |
|
BareMetalBareMetal is a 64-bit OS for x86-64 based computers. The OS is written entirely in Assembly while applications can be written in Assembly or C/C++. The two main purposes of BareMetal are for educational uses in learning low-level OS programming in 64-bit Assembly and to be used as a base for a high-speed data processing node. Source code is well documented and freely available. As of version 0.4.9 BareMetal OS officially supports multiple processors, memory management, and Ethernet communications. More information here - https://www.returninfinity.com/ |
|
BeelzebubBeelzebub (The Lord of Flies) features a hybrid kernel, accompanied by libraries and apps written mainly in C++, serving as a platform for development and experimentation of kernel/OS/runtime features. It currently targets AMD64, with plans to support IA-32 and ARM architectures later. It aims to become a clean, modern, and efficient operating system for servers and workstations. |
|
BeeOSA simple "Unix-like" x86 kernel trying to be POSIX compliant. Currently, the project does not have any long term mighty ambition, it just want to be a good learning tool for operating systems and low level programming topics. A future "on-the-field" usage, especially when ARM port will be ready, is not excluded. |
|
BleskOSBleskOS is 32-bit operating system written from scratch in C. One of main features is alternative graphic user interface that do not use windows, as classic operating systems do, but switches between programs on full screen. BleskOS is designed for older computers. Goal of BleskOS is to provide system, that could be installed on older computers to make them usable again. BleskOS have wide range of drivers such as VBE, AC97, Intel HD Audio, PS/2 keyboard, PS/2 mouse, PATA(PI), SATA(PI), USB controllers UHCI/OHCI/EHCI, FAT filesystems, ethernet cards from Realtek, Intel, AMD and more. BleskOS also supports widely used file formats like JPG, PNG, GIF, MP3, TXT, HTML and more. Every version is tested on multiple real computers. |
|
BlueKernelThe BlueKernel is a simple microkernel design intended for students. It has pre-emptive multitasking with threads, message-passing and virtual memory. It is currently targeted for the IA-32 processors, but the design is strictly separated into a hardware-dependent mechanisms layer, with an independent policy layer on top of that. It has its own basic boot loader that loads the kernel and a disk driver. It also has a basic text-mode display driver and keyboard driver. As with most microkernels, the drivers run in user space and help to demonstrate message passing and interrupts. When the system starts it loads a server that allows the user to load their own processes. There are very simple example user programs to demonstrate threads, message-passing and interrupts. The website is written like a textbook to explain how it all works, focusing on the implementation rather than theory. |
|
BoneOSBoneOS is an Operating System for everyone built by everyone. The goal is to make an Operating System for 'Everyone'. Ranging from Programmers to Normal Users. This operating system currently supports x86 and x64. Later will move forward to other architectures and platforms such as MIPS, PowerPC, ARM, etc... |
|
BrutalAn operating system inspired by brutalist design that combines the ideals of UNIX from the 1970s with modern technology and engineering. Brutal is a microkernel written in modern C that targets x86-64 and RISCV (WIP). Brutal has: its own UEFI bootloader, a WIP C compiler, an IDL, a GUI, and much more... If you want a 'complete' list of work in progress or implemented features you can take a look at the roadmap: https://github.com/brutal-org/brutal/blob/main/meta/roadmap.md |
|
BoxOSA simple, Unix-like operating system written in C and GAS assembly. Under heavy development as it cannot switch to Ring-3 as of writing. Major goals include porting many Linux applications and becoming an alternative Unix-like OS to Linux and the BSDs. |
|
C
ChaiOSModular multi-platform OS. Even Kernel C library dynamically linked (using very basic duplicates). Written in Visual C++ and NASM. |
|
Cloudium OSThis is being written in pure ASM with cloud computing in mind. Exploring the new exokernel designs and basin design decisions only on speed and cloud. Our homepage: https://sourceforge.net/projects/cloudium-os/ |
|
Cthulhu OSCthulhu OS is actively developed x86-64 based microkernel which uses C11 and custom libc. Currently supports simple user space code. Long term goals include standard desktop operating system. Cthulhu OS supports creating processes from initramfs (called rlyeh) and memory + syscall management. Sadly it has a horrible toolchain and is very difficult (if not impossible) to compile in the up-to-date development environment, unless the author of this project fixes it |
|
CatKCatK is a kernel taking inspiration from FreeBSD and similar Unix-like systems written almost completely in C. |
|
D
DawnDawn OS is a high-level operating system for the SUBLEQ instruction set. It supports SMP, 64 bit memory addressing, multitasking, it has a built-in C compiler, virtual keyboard, and its' own P2P network standard with automatic forwarding beetween clients, and contains various built-in tools like paint, text editor, sound player, chess, piano, amoeba |
|
DennixDennix is a unix-like operating system for x86 and x86_64 written in C and C++. It consists of a monolithic kernel, a standard C library, userspace applications and a graphical user interface. It also comes with several ports of third-party software. |
|
DiyOSA learn-by-doing OS with a basic GUI. |
|
DreamOsHome-made operating system, developed in C and asm for x86 architectures. |
|
DreamOs64Home-made 64 bit operating system, developed in C and asm from scratch |
|
duckOSAn x86 monolithic kernel and operating system written in modern C++. Comes with a completely in-house kernel, window manager & compositor, graphical applications, and command-line utilities. It also has ports of binutils and gcc. |
|
DuxAn x86 operating system with module loading capabilities, started in 2008 |
|
E
EscapeEscape is a 32-Bit microkernel operating system for X86 that supports multitasking and multithreading. It's implemented in ANSI C, C++ and a bit assembler and most parts of it are UNIX-like. The goal is to experiment with it and learn as much as possible about operating systems, hardware and so on. |
|
EinherjarForth computing environment for PowerPC Macs. |
|
ExectOSExectOS is a modern, EFI-enabled, general purpose operating system written from scratch and implementing the XT architecture. It runs on x86 and x86_64 architectures and provides NT drivers compatibility layer. Currently, it is in the pre-alpha state. |
|
F
Fling OSFling OS is an educational operating system with full technical documentation and aiming to have full reference and tutorial articles on every aspect of its code. As of September 2015, they had a C# kernel with ELF driver and USB 2.0 support for x86, a C# AOT compiler, and a cross-platform (x86/MIPS) compiler verification kernel. They launched over 30 articles and a series of 10 Getting Started tutorial videos on 17th September 2015 having been sponsored by Imagination Technologies over the previous summer. Stable core kernel including USB 2.0 and ELF drivers. Also first release of their AOT C# to x86/MIPS compiler and compiler verification kernel. Industry sponsored and collaborating with University Of Bristol. Our homepage: https://www.flingos.co.uk |
|
FoxOSFoxOS's goal is to develop an operation system that focuses on the terminal, performence and reliability. And hope to provide users with a functionnal, performant and stable OS. |
|
FotonA simple, clean code, multi-tasking kernel written in pure Assembly language for 64-bit processors from the AMD64 family. |
|
FreeDOSToday, FreeDOS is ideal for anyone who wants to bundle a version of DOS without having to pay a royalty for use of DOS. FreeDOS will also work on old hardware and embedded systems. FreeDOS is also an invaluable resource for people who would like to develop their own operating system. While there are many free operating systems out there, no other free DOS-compatible operating system exists. Sources are here: https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/repositories/1.3/ |
|
FROSTFROST is an OS written in FreeBASIC based on the FROST-Microkernel. Basic kernel functionality available, IPC, VFS and SMP in development |
|
FudgeFudge started as a project to see if it would be possible to create an operating system that came as close as possible to be fully deterministic by not implementing solutions with unpredictable behaviour like dynamic memory allocation, scheduling and caching. |
|
FuzzyOS32-bit x86 multiprocessing OS capable of running console or graphical user applications. The bootloader and kernel are written in NASM/C, the STL and user applications are written C/C++, while the tests are written in bash and python. It's built as a hobby project for educational purposes. |
|
FYSOSIntel/AMD 32-bit and 64-bit operating system, including most modern hardware specifically the USB and related hardware. |
|
G
Ghost OSA homemade operating system with a microkernel for the IA32 (x86) platform. The project is written in C++ and Assembly. Features: multiprocessor- & multitasking support, kernel API library, custom C library, ELF support, IPC (messages, signals, shared memory, pipes), VFS, window server & GUI with homemade toolkit, PS/2 keyboard & mouse driver, VESA video driver and more... |
|
GubernatrixA 64-bit single-address space, containerizing operating system. |
|
GreenteaOSGreentea OS is a 64-bit desktop OS for x86-64 and also potentially promising platforms like ARM64 and RISC-V. Aims to run .exe files natively and NT drivers under sandbox compatibility layer. Follows own non-NT/non-UNIX modular kernel design called Tofita Engine. Developed completely in a custom programming language Hexa tuned for the purposes of the OS. Currently in the pre-alpha state. |
|
H
HelenOSPreemptive microkernel multiserver design, SMP support, lightweight IPC, thread-local storage and user-space managed fibrils. Our homepage: https://www.helenos.org/ |
|
HeliXHeliX is a german open-source OS. It has a nice shell and already supports FAT12, multitasking, keyboards and mice and very, very much more... HeliX is still in development and it doesn't exist a long time , so there are many features to come! [at] this point of time there are no downloads at the webpage, because there are still some heavy bugs (; -please be patient; they'll come! |
|
hhuOShhuOS is a small operating system for the x86-architecture, build for teaching purposes. The main goal of this project is to show, how different aspects of operating systems theory can be implemented and linked together. The system is not aimed to be a fully featured operating system for daily use. It is implemented in C++ with small parts of assembly where needed. |
|
HohoHoho is an x86 open-source OS supporting multitasking with ELF executables, virtual memory, FAT and virtual filesystem, ATA drives and Floppy disks. Soon it will be self hosted with GCC working on top of it. |
|
HydrogenHydrogen is an operating system targeting embedded systems (servers, thin clients, SBCs) running on x86. Its written in C and assembly (NASM). There is no support for VGA, its serial-only. My homepage: https://github.com/moondeck/hydrogen/commits/master/ |
|
HypnoticOS64-bit Hobby Operating System |
|
I
J
JaeOSJust Another Embedded OS. My homepage: https://jaeos.com/ |
|
JSD/OSJSD/OS which either stands for "Jake S. Del Mastro Operating System" or "Jake'S Disk Operating System" is a tiny Pseudo Single-Tasking operating system for 32bit x86, developed on and off since 2014. The goal is to build an OS with a very small memory footprint, a fast file system and minimal overhead to allow user requests to be processed as quickly as possible, ideal for interactive applications, using a unique scheduler known as CuFS (Conciously unFair Scheduling). The system can run applications packaged in the ELF object format and has full support for memory protection via virtual address spaces. The system includes a shell which works with many DOS & Unix commands. |
|
JSLKJSLK is a 32-bit hobby kernel designed to run on the x86 architecture (although portability has been taken into consideration). It was started in August 2017 with the objective of learning how a computer operating system works and to improve the coding skills of the main developer. The kernel is mostly written in C with some bits of assembly and has partial compatibility with C++ (a runtime is provided). Some of its features are: extensive HAL API, System V ABI compatibility, memory management, interrupt handling, VGA driver, timers and delays, some synchronization primitives, a growing home-made C library, virtual memory, a VFS, a keyboard and RTC driver and more. Website: https://sofferjacob.github.io/jslk.html |
|
K
KLIKA-OSSimple x86_64 multi tasking OS with GUI. Features preemptive multitasking, memory management, userspace, FAT 12/14/16, GUI with VESA, etc. Written in C and assembly. |
|
KnightOSOpen-source operating system for Texas Instruments calculators. Features preemptive multitasking, memory management, etc. Written in z80 assembly. Mature SDK, usable kernel, usable userspace, no math. Our homepage: https://knightos.org |
|
Kolibri OSKolibri OS was a fork of the 32-bit version of Menuet OS but has changed much along the way. Despite fitting on a standard 1.44 MB floppy, this wonderful OS contains: the complete GUI desktop, a lot of drivers and great software (such as web browser and music player), system programs and games! The Kernel and most applications, libraries and drivers are written in FASM, but some are in C-- (https://en.wikipedia.org/wiki/C-- ; link to their C-- compiler: https://c--sphinx.narod.ru/). At this OS you can write the ASM code and execute it after assembling. Source code is open - https://websvn.kolibrios.org/listing.php?repname=Kolibri+OS - and the contributions are welcome! |
|
Kora OSKora is an operating system under it's way. The OS is still a young pup develop by an enthusiast engineer as a learning project. |
|
KOSKOS is a Hobby Operating System. It is meant to be minimalist and easy to understand. |
|
L
Lambda OSLambda OS is a hobby operating system developed by Peter Farley. Lambda OS is designed to work on any i386-compatible processor, but its' design allows for easier addition of new architectures without any major modification of the main kernel code |
|
Lemon OSLemon OS is a UNIX-like 64-bit operating system written in C++. It features various software ports such as DOOM, networking (TCP/UDP), and various drivers including AHCI and NVMe. |
|
LF OSMicrokernel based operating system for amd64 with high ambitions. Work primarily happens on a gitlab instance (complete with CI/CD system), but the master branch is also mirrored to github for convenience. Check out the repo if you want to know more, changes are happening too fast to update everywhere x) |
|
M
ManagarmManagarm is a 64-bit OS for x86-64. It’s written in C++ with a custom libc and a GNU like userland on top. Managarm’s main purpose is aiming for Linux compatibility while being completely asynchronous in terms of I/O. The OS is capable of running Weston and kmscon while effort is made into porting (a subset of) Xorg. Furthermore, Managarm supports many modern hardware devices, including USB 3 and has nearly full ACPI support. |
|
MaslOS 2MaslOS 2 is a goofy 64-bit OS written in C++. It has a custom stdlib, a desktop and a custom GUI-Framework. It's the follow up to the original MaslOS. The main difference being an actual scheduler and support for ELF loading/execution. It is very WIP but quite a few things work already and it boots on real hardware. Mostly done just for fun. (Not POSIX compliant or anything) |
|
MentOSMentOS (Mentoring Operating System) is an open source educational operating system. The goal of MentOS is to provide a project environment that is realistic enough to show how a real Operating System work, yet simple enough that students can understand and modify it in significant ways. There are so many operating systems, why did we write MentOS? It is true, there are a lot of education operating system, BUT how many of them follow the guideline defined by Linux? MentOS aims to have the same Linux's data structures and algorithms. It has a well-documented source code, and you can compile it on your laptop in a few seconds! |
|
MerlonMerlon is an operating system based upon my previous kernel, ATOS. It is designed to be easy to understand, and fairly lightweight (for example, it only requires 3MB of RAM to run on an x86). Currently only implemented for x86, but it should be easy to port to other platforms. Has a preemptive kernel which allows dynamic loading of kernel modules, and supports page replacements and a dynamically linked kernel-to-usermode API. Current working on implementing more of the C POSIX library. |
|
MettāMettā aims to be your mithril compass, that is, a device powerful in determining what is worth and what is not worth doing, in determining when it is the right time for doing so and also on doing the things it can do, without taking up your time. |
|
MikeOSMikeOS is an operating system for x86 PCs, written in assembly language. It is a learning tool to show how simple 16-bit, real-mode OSes work, with well-commented code and extensive documentation. It has a BASIC interpreter with 46 instructions, supports over 60 syscalls, could manage a serial terminal connection and output the sound through PC speaker. There is also a file manager, text editor, image viewer and some games |
|
MichalOSMichalOS is a new x86 hobby OS project that is based on MikeOS: it has been created during the time when it seemed that MikeOS is abandoned, and has more features/programs compared to the original project. Also, these two projects seem to have a different focus: MikeOS appears better suited for education (i.e. has more documentation) while MichalOS is more about running/creating the cool stuff: has more games, a music player with nice "retro computing"-style music, etc. |
|
MINTIAMINTIA is a late 1980s inspired multitasking and paging operating system, written entirely in a custom programming language. It runs on two hobby computer architectures, XR/station and fox32, and and sports sophisticated capabilities such as page swapping, fully shared file mapping, and fundamentally asynchronous I/O. It targets a 4MB RAM minimum, and has a custom API with 120 syscalls. |
|
mkfreeOSThe kernel is developed in C++. It is designed to run on Intel x86 architecture. Supported functionalities: Multitasking, Multithreading, FAT32 and BFS file systems (proper for mkfree), Virtual memory manager, Controllers, Hierarchical protection domains (Kernel runs in ring 0 and user applications in ring 3). Multitasking: Each task is executed every 1ms intervals. For now all tasks have the same priority. There is a main thread of execution and it can have these states: 1- suspended, 2- waiting and 3- executing. Multiple threads: Each task can have several threads of execution and can have several states: 1- suspended, 2- waiting and 3- executing. GUI: Simple graphical interface. |
|
MuMinimal software stack bootstrapped from 32-bit x86 machine code without any C. Supports SVGA with a single font (GNU Unifont), a PS/2_Keyboard, ATA disks using 28-bit PIO mode. Implemented in a memory-safe statement-oriented language, and includes a Lisp-based prototyping environment. |
|
MVS/380IBM's old IBM mainframe operating system (MVS) was public domain. With a freely available IBM hardware emulator available, this operating system was dusted off and being given a new life with some radical architecture changes. There's a similar VM/380 available too, for another IBM mainframe OS. Version 1.0 released and a group of people driving it forward on a daily basis instead of being a one-man project. Our homepage: https://mvs380.sourceforge.net |
|
MysticOSMysticOS is an exokernel based OS. Its main goal is to be able to adapt to the users wishes and abilities at run time, providing the perfect environment for anybody. Current features include FreeBasic support and hardware accelerated graphics (2D and 3D). The OS is currently pre-alpha - there are no official releases yet. However, nightly builds, source code and documentation are available |
|
N
NanoSmall and simple operating system. There are 8086 real-mode (Nano16) and 386 protected-mode (Nano32) versions. |
|
NetDOS/3232bit rewrite of my previous crappy operating system, NetDOS aka NetDOS/16. Will support multitasking and run NetDOS/16 programs. |
|
NexNixNexNix is designed to be a powerful, safe, and modern operating system. It aims to take Unix and greatly improve on it, by making the filesystem more structured, being a true microkernel, implementing modern security measures, and being more GUI-centric. It still aims to be compatible with the vast majority of Unix programs. Currently, it only supports i386 and x86_64, with slowly developing ports to aarch64 and RISC-V 64. |
|
Night KernelThe Night kernel is a 32-bit drop-in replacement for the original 16-bit kernel of the FreeDOS operating system. It uses linear memory addressing and operates in protected mode on the Intel x86 architecture. The typical user will retain compatibility with their DOS applications and gain protected mode abilities such as task switching between applications, protected memory and increased overall performance in a DOS environment. The community forum has moved from google groups to https://nightkernel.proboards.com/ |
|
nightingaleNightingale is a small operating system with a vaguely UNIX-like userland. It supports multiple processes, loadable kernel modules, networking, and has a (fairly) full featured shell with pipes and file redirection. It has no video support, and only communicates with the outside world via the serial ports and network card. |
|
NOSNOS is a microkernel OS project written in C++, making use of modern C++ standards (from C++11 onwards). It targets multiple architectures, is meant to be portable and provides a structured, object-oriented API. It is mostly inspired by the L4KA series of microkernels. Currently it is the basic kernel boot and thread creation / switching on x86 32-bit and 64-bit platforms |
|
O
Oberon SystemThe Oberon System is an academic operating system and an integrated software environment developed by Niklaus Wirth and Jürg Gutknecht since 1980s at ETH in Zürich. Currently it is a single-user, multi-core, multi-tasking system that runs on bare hardware or on top of a host operating system (currently Microsoft Windows or Linux). The developers aim at producing a reliable, real-time operating system suitable for embedded systems and for industrial and in particular medical applications. Earlier it was called "Aos" (Active Object System), a nomenclature that is still in use. It is written in the Active Oberon programming language, which evolved from Oberon, a programming language in the Pascal/Modula tradition. The graphical user interface is referred to as “Bluebottle”. See also: Oberon Operating System on Wikipedia and Lukas Mathis' Blog: Ignore the Code. Note that some stuff on these pages appear outdated, but this may be more a problem of keeping the Web-pages as current as the System. More current and in depth documentation is included in the systems, although you (sorrily) have to master their (partially) unconventional user-interface before you can access the documentation. Many dead links in Native Oberon reference site can be reanimated by replacing www with www-old. It has been revitalized in fall 2013 by Niklaus Wirth implementing a RISC processor in FPGA. See Project Oberon |
|
OSOS for x86 with the goal to provide a complex system basics implemented with a maximum delay of 1 year (virtual memory, file systems, emulation, GUI, multitasking, clean-up of general information, drivers from other OSes, USB, SATA), and general study written in NASM, C and miscellaneous language snippets gathered from the usual PC demo code repositories, books, and study of professional programs. It aims at easily building a custom OS-like DOS application manually, simple or with all the available protection and system features, to study the implementation of the different system-level tasks. It contains simple 386 malloc/free functionality for paging, simple FAT32 LBA support for displaying files and folders with a simple fopen/readdir/Read_Disk/Read_Disk_DWORD for clusters, and several functions for handling VGA, PS/2, PIT timer, ATA-ATAPI. It boots from DOS and can return to it with the exittodos command, even under the newest laptops. Contains documentation in Spanish and English. Decompress the TAR to the root directory. c:\start.bat launches it. Has miniprograms that can be invoked as commands with arguments, and has fail-proof ATA-ATAPI detection (only primary master enabled by now). In 2021 it will add a basic emulator for being able to call things like video modes natively derived from the BIOS and to access the memory map from the kernel. |
|
OS/K (OS on Kaleid)A fully free as in freedom operating system concepted from scratch, with the only goal to be a hobby OS to learn and practice. It is under regular development, since the contributors are students. |
|
opuntiaOSopuntiaOS - an operating system targeting x86 and ARMv7. It features a kernel with great features like SMP and Ext2, custom runtime libraries for C/C++/ObjC and libraries for UI. |
|
OxideOxide or "02" is an OS for the 65xx family of processors and other mpu/mcu in embedded systems. Low run levels support headless or autonomous operation while higher runlevels are for human interfaces such as games, browsers, applications and media viewers. Next release is going to include the following features: X/Y coordinates, addition and subtraction, counter, select/reset. The project is going to be released at wayfarertechnologies.net (site is down, the author is seeking a new host) |
|
P
PatienceOSA baremetal C# kernel built using a combination of Microsoft tooling and the GNU toolchain. Unlike predecessors that relied on hand-rolling IL to ASM (eg. FlingOS, COSMOS), PatienceOS leverages Microsoft's .Net 8.0 out-of-the-box native IL to AOT cross compiler. |
|
PDOS - Public Domain Operating SystemOne of very few operating systems that have an explicit "released to the public domain" notice. What that means is that if you spend time on this, and you later see a commercial use for it, there is absolutely no restriction on selling/modifying etc, any more than you would dig up Shakespeare and ask him if it's OK to use "Hamlet". It is designed to look like MSDOS, and the 8086 version can currently execute some MSDOS executables unchanged, the 80386 version can currently execute some Win32 executables (including gccwin - a modified GCC 3.2.3 for Windows msvcrt.dll) unchanged, and the S/3X0 version can currently execute some MVS executables unchanged (and on real IBM mainframe z/Arch hardware executes S/370 in effective AMODE 32 giving access to 4 GiB of memory), and the x64 UEFI version can execute some Win64 executables unchanged, including a completely public domain completely-self-hosting environment. It's written in C90, with some assembler. The public domain C compiler included (only) in the x64 version has a small amount of (included) C99 dependency. There is also a native ARM32 version. |
|
PedigreeMonolithic OS with several backends supported - x86, x64, MIPS32, ARM and PowerPC. Kernel written in C++ with the obvious bits of ASM. Offers a reasonable amount of POSIX support and a tiling GUI and can run Apache, DOSBox, and various other common programs. Planned to also offer a native API alongside POSIX for Pedigree-specific applications |
|
PerceptionAn x86-64 OS built around a microkernel. Custom build system, IPC IDL, UI toolkit. Not POSIXish. Userland is built in modern C++. |
|
PicoBSDThe stripped down version of FreeBSD for hobbyists and embedded systems developers. Its' primary difference is a tiny size, hence the "PicoBSD" name. Unlike OpenBSD (which provides the installation floppy with a limited set of features), PicoBSD is the only modern BSD system which could fit on a floppy - although, as the time passes and the BSD kernel grows in size - it becomes more and more difficult to fit. The archived floppies are available at https://sourceforge.net/projects/archiveos/files/p/picobsd/ |
|
Plan 42A small public-domain OS, based on the 'nanos' nanokernel. |
|
PlusOS (Plus Operating System)Plus operating system is hobby project. That's built to run as auxiliary OS with Major OS like Windows and Linux etc..bootable with grub2 and own boot loader.focused on eBook reading software(PDF,EPUB,MOBI,DJVU,CHM...).with programs like calculator, notepad,source code editor, hex viewer, text viewer,image viewer and many games.VESA 32bpp GUI from startup.read-only plus maybe writing support for standard file systems FAT/NTFS/EXT/CDFS.codec for archives(ZIP,RAR,7z,GZ ...).codec for image formats(JPG,BMP,GIF,PNG...).video player or at least thumbnails extract(AVI,MKV,MP4,3GP...). mountable as filesystem from ISO,ISZ file.generic drivers VBE,USB,HD Audio,Keyboard, mouse.bootable on qemu and of course on real computer systems.at least all drivers for one computer (my) this is primary goal. In summary goal is building a stable and usefull OS. A Project By Muhammad Arshad Latti. |
|
PrettyOSOS with a simple kernel created for educational purposes. A great care is put on keeping the code as readable as possible. PrettyOS is written in C and some i386 assembly (own bootloader). PrettyOS offers network, FAT12/16/32, uhci, ohci, ehci, xhci. My homepage: https://prettyos.de |
|
Project_DragonFly_VOSAn Operating System development project that started back in 2013. This project's main objective is to create a minimal runtime environment that can be expanded by any willing programmer or power-user. The details of this project are open to public viewing. For more information about the intended design/architecture of this incomplete project, please click here: [1] This project will move at a slow pace, due to prior obligations on the part of the developer. For license details and limitations please see this document: [2] Please note that code comments in the OS Development repo follow a semi-specific format, for ease of reading and refactoring. Links to the public repo can be found here: [3] The TXP-Network websites have been down for some time now, due to the loss of the last web-host. The current link will not work. |
|
Pure64Pure64 is a second stage bootloader for 64-bit PC's with compatible Intel or AMD processors. The loader gets the computer into a full 64-bit state with no legacy compatibility layers. Pure64 also enables and configures all available Cores/CPUs in the computer. An information table is stored in memory after Pure64 is finished that stores important details about the computer. Our old website (https://www.returninfinity.com/pure64.html) is dead |
|
Q
Quark Operating SystemQuark is an Object Oriented 32 bit operating system. It aims to be a complete multitasking kernel. |
|
QuasiOSQuasiOS is a x86 64-bit operating system which will be build from the ground up, currently in assembly and C, but will migrate to our own OSL (Operating System Language), when the compiler is ready. It have three main focus goals. A password capability-based system with cryptographic filesystem. A modularized kernel where the modules is hot swappable, hence updates can be made live. User friendly configuration and interaction. Some of the work are going to be our master theses for the next year, and we expect rapid development during our theses (2020-2021). |
|
QuinnQuinn OS is a 32-bit x86 compatible protected mode hobby operating system with multitasking. There is a graphical user interface, FAT file system driver and basic TCP/IP stack. |
|
qwordKernel and distro written in C and x86 assembly targeted at x86_64. Our philosophy is "keep it simple and make it work", which seems to have been working so far. |
|
R
RaidouOSx86_64 multitasking graphical operating system with support for PS/2, a round robin scheduler, and double-buffering for VESA 1280x1024 24-bit color mode. It has a custom font and simple terminal, as well as a basic desktop with window management. It can produce basic audio output through the PC speaker. |
|
RDOS32-bit x86 based OS written mostly in assembly. Provides protection with segmentation and paging. Has drivers for FAT-based file systems, TCP/IP, USB, sound, LFB based VESA support with a GUI API. The user-level API is based on C++ classes. OpenWatcom is used for building both applications and device-drivers. Stable, has some 1000 commercial installations |
|
Reaver OSOpen source project striving to provide a µkernel and a set of necessary services. Written in modern C++, currently targeting AMD64 SMP systems. Not POSIXish. Timer framework, IPI framework, thread switching are finished. There's also a basic, dumb scheduler without wait queues. Work progresses on enabling userspace and basic syscalls |
|
Red OS32-bit microkernel designed for code readability. |
|
RedoxA Rust Operating System. Our homepage: https://www.redox-os.org/ . More information and screenshots can be found at: https://github.com/redox-os/redox/ |
|
RISC OSDesigned in Cambridge, England by Acorn. First released in 1987, its origins can be traced back to the original team that developed the ARM microprocessor. Niche community using emulation, legacy systems and newer ARM hardware such as the BeagleBoard. "Shared source" fork (Castle Technology Ltd's RO 5) available for free non-commercial use, proprietary fork (RISCOS Ltd's RO 4 & 6) closed source. Stable, semi-defunct commercial use. Development currently focused on ARMv7 hardware |
|
rxv64rxv64 is a rewrite of xv6, targeting multicore 64-bit x86\_64 machines. It is written in Rust and while still a pedagogical system it supports PCIe, AHCI, the APIC, fast system calls, SYSCALLQ/SYSRETQ. |
|
S
SeaOSSeaOS is a hybrid kernel with loadable modules that supports ATA, AHCI, EXT2, ELF, and many other fancy acronyms. It has basic networking support, initial VT-x support, and is self-hosting with a fairly complete unix-like userland. Designed for simplicity. My homepage: https://dbittman.github.io/seaos |
|
SerenityOSSerenityOS is a graphical Unix-like OS written in C++. It combines a 1990's style GUI with a modern CLI. Everything is from scratch, including a web browser with JavaScript and HTTPS support. A growing number of 3rd party packages are available as optional ports, including GCC, bash, vim, Python, SDL2, etc. You can watch videos of the system being developed on YouTube: https://www.youtube.com/c/AndreasKling. |
|
SerpaeOSSerpaeOS is a free, open-sourced x86 OS. It aims to provide a good resource for OSDevers to observe how certain features are implemented. Reach out to join the development team! |
|
SilcosSilcos is a operating system that aims to provide a secure & robust environment for applications. It will sandbox all external executable files and also have advanced security in matter of object-management. It is in the development phase with the kernel being developed. The silcos kernel works in a modules which are dynamically loaded at runtime and divides itself into various modules like KernelHost, ModuleFramework, ObjectManager, and ExecutionManager, etc. It requires open-source support and will appreciate any! It is currently being developed in C++ and has a very object-oriented approach. Full documentation is provided in the code itself. Other than that, good GitHub wikis document it very well. |
|
SimpleOS,SimpleOS is a very simple Operating System coded mainly in C with a bit of Assembly. |
|
SingOSSingOS (Single Task Operating System) is a concept/pilot operating system that aims to do only one task at a time and provide all resources for that task. It is only in 16-bit real mode, with a single feature in 32-bit protected mode. The special thing is the version which is strictly using original IBM PC BIOS calls, and should be compliant with IBM PC 5150. https://git.imada.sdu.dk/Sandsized/SingOS_Legacy_BIOS This might be the only of the versions which would be active, since we have started to develop QuasiOS (which will be a full functional 64-bit OS). At the university we have a historical collection of computers, why we have fun to make a operating system which runs on those machines. It's mostly fun, and is not well developed yet. |
|
SivelkiriaOSSivelkiria is a new operating system at early stage of development. It aims to provide a platform which unites all software solutions into a harmonic whole, thus taking user experience to the next level. In Sivelkiria, compatibility of all programs is guaranteed by design. Using any device becomes easy and comfortable. The software designed for Sivelkiria OS can be used in any context. |
|
skiftOSskiftOS is a hobby operating system built for learning and fun targeting the x86 platform. It features a kernel named hjert, a graphical user interface with a compositing window manager, and familiar UNIX utilities. |
|
Snowdrop OSSnowdrop OS is a small-scale 16-bit real mode operating system for the IBM PC architecture. Snowdrop was developed from scratch, using only assembly language. Snowdrop boots from a FAT12 filesystem (floppy disk) and comes with a shell, aSMtris (a Tetris clone), and a few other example programs that could greatly simplify the development - for example, see https://sebastianmihai.com/snowdrop/gamedev.php |
|
SO3Smart Object Oriented Operating system is a compact, lightweight, full featured and extensible operating system particularly well-suited for embedded systems in general. |
|
SortixSortix is a small self-hosting operating-system aiming to be a clean and modern POSIX implementation. It is a hobbyist operating system written from scratch with its own base system, including kernel and standard library, as well as ports of third party software. It has a straightforward installer and can be developed under itself. Releases come with the source code in /src, ready for tinkering. |
|
SosoSoso is a Unix-like 32bit operating system. Its features are multitasking with processes and threads, paging, Virtual File System, FAT32, system calls, basic Musl libc port, userspace ELF files, framebuffer (/dev/fb0), mmap, PS/2 mouse, Unix local sockets, and shared memory. |
|
T
tachyontachyon is another Hobby OS, longing to support x86_64 only. Currently, it boots on qemu, bochs, virtualbox and real hardware. it has not much to see, really, but a working physical and virtual memory management (still improving), kernel and user threads and some other hardware interfacing... Basic goal was to create everything from scratch with a clean code base. It uses a plugin mechanism to load different supported kernel components. |
|
tatOSA 32bit x86 OS written in assembly featuring a protected mode driver for USB flash drive and mouse. Source package includes tedit editor and ttasm assembler. Supports UHCI, EHCI, PS2 keyboard and 800x600x8bpp graphics - has a basic GUI |
|
TempleOSTempleOS is a 64 bit lightweight OS with multitasking and multicore support, which is ring-0-only and works in a single address space. It provides the interface for communicating with God: the user has to choose a random number from the constantly changing sequences and then it is converted to the text interpretation. Whole OS with its' software has been single-handedly created during 15 years by Terry A Davis - who also developed a programming language called Holy C together with a special compiler for it. TempleOS supports the FAT32 and RedSea filesystems (the latter created by Terry) and also the file compression. It doesn't support the networking, partially for ideological reasons, but there are forks available with added functionality |
|
TilckTilck (Tiny Linux-Compatible Kernel) is a x86 monolithic preemptable kernel designed to be partially compatible with |
|
TinyOSEvent-driven operating system targeted for wireless sensor network embedded systems. Has a megalithic kernel architecture |
|
ToaruOS (とあるOS)A complete educational operating system for x86-64 PCs, with a bootloader, kernel, libc, window compositor, graphical applications, and Unix-like utilities. |
|
TravorOSA research-purpose Operating System that discovers features on Intel x86 processors which is inspired by Linux. Welcome to contribute! |
|
TupaiTupai is a monolithic unix-inspired operating system kernel that runs on i386-compatible machines. |
|
týndurThe microkernel-based community OS of the German OS development community Lowlevel. See the tyndur 0.2.2 announcement in the forum |
|
TysosThe type-safe operating system is a 64-bit multitasking microkernel written in C#. Ahead-of-time compiler is mostly complete, work has switched to implementing the kernel |
|
U
Unet Operating SystemUnet is a Unix-like operating system that offers the best compatibility for various platforms. Whether you need a server, a desktop, or an embedded system, Unet can meet your needs. Unet also provides advanced networking, security, and storage features, and supports most popular embedded storage and networking devices. |
|
UDOSA mainframe OS - yes it's compatible with z/Arch albeit lacks SYSG support. |
|
Ultibo coreA unikernel environment based on the Free Pascal compiler and Lazarus IDE, initially targeting single board computers such as Raspberry Pi and also supporting QEMU the design is intended to be portable to other platforms. The modular architecture allows applications to pick and choose what features to use in a project and the compiler produces a bootable kernel image which includes all of the required RTL components. Comes with a comprehensive list of features including pre-emptive threading, multicore support, IPv4 networking, FAT/NTFS/CDFS file systems, USB support, SD/MMC support, drivers for common peripherals such as GPIO, I2C, SPI, PWM, and DMA, C library support, hardware accelerated OpenGL ES and OpenVG graphics and much more. Packaged in an installer download for Windows or as an install script for Linux customized versions of both Free Pascal and Lazarus IDE are included along with full source and a large collection of examples. Our homepage: https://ultibo.org/ |
|
UpanixUpanix – an x86 based 32 bit operating system designed and developed in C++. It uses x86 architectural features for memory management (paging, segmentation) and process management (TSS, Call Gates, Interrupt Gates). Aim is to build a minimal complete OS which supports USB storage, ELF binaries/dlls, GCC/g++ compiler and build tools, Internet (wifi) and a basic UI |
|
U365U365 is a monolithic 32-bit OS in its alpha stage. It includes VFS, STDIO, keyboard and mouse drivers, VESA modes and some simple screen surface management. We used C and Assembly to code it. |
|
V
Vanadium OSVanadium OS is a multi-user Unix-like OS. i386, amd64. Fully protected mode. Memory, file and hardware protection. root and unprivileged users. GUI without X, modular kernel, and has a live floppy image with a single user mode! My homepage: https://www.durlej.net/contact ; project pages: https://www.durlej.net/v/ , https://www.durlej.net/nameless , https://github.com/p-durlej/newsys . One of the great features is that you can write C code and instantly compile it to execute |
|
VinixVinix is a 64-bit UNIX-like OS written in the V programming language, that aims to be source compatible with most Linux/*nix programs. It aims to be approachable and be runnable on real hardware. It can run a vast array of Linux userland software including bash, GCC, and X.org, amongst others. |
|
VSTaVSTa is a copylefted system, originally written by Andrew Valencia, which uses ideas from several research operating systems in its implementation. It attempts to be POSIXish except where POSIX gets in the way, and runs on a number of different PC configurations. VSTa is also designed to take advantage of SMP right out of the box. My homepage: https://www.vsta.org |
|
W
WingOSWingOS is an basic open source 64bit Operating System written from scratch with c++ and a little bit of assembly. WingOS has SMP support. |
|
X
XEOSXEOS is an experimental 32/64 bits Operating System for x86 platforms, written from scratch in Assembly and C. It includes a C99 Standard Library, and aims at POSIX/SUS2 compatibility.
|
|
xOSxOS is a hobbyist operating system project written mostly from scratch for the PC, entirely in FASM-style assembly. The principal goal of xOS is to be compact and lightweight, yet be suitable for use in the 21st century, in terms of speed, features and hardware support. As such, xOS supports IDE and SATA hard disks, partial support for USB, networking, a rudimentary web browser, and a compositing graphical user interface. The kernel and drivers have been written entirely in assembly, while applications can be written in C. |
|
xv6xv6 is a re-implementation of Dennis Ritchie's and Ken Thompson's Unix Version 6 (v6). xv6 loosely follows the structure and style of v6, but is implemented for a modern RISC-V multiprocessor using ANSI C.
|
|
XtOSXtOS is an operating system with a kernel written in C and a userspace written in C source code which is interpreted on runtime. The C interpreter is based on TinyC and implemented inside the kernel along with the window manager. Everything runs in Ring 0 and C applications are able to access most of the functions that the kernel is able to. |
|
Y
YaxOSYaxOS is a very primitive OS running in real mode. |
|
Z
Zeal 8-bit OSConceived as a hardware abstraction layer for Z80-based computers, Zeal 8-bit OS is a single-tasking operating system with a small, concise Unix-like API. It is ROM-able, modular and configurable. Header files are included for assembly language and C. Videos for Zeal 8-bit OS and Computer: https://www.youtube.com/@Zeal8bit Web emulator for Zeal 8-bit Computer: https://zeal8bit.github.io/Zeal-WebEmulator/ |
|
ZeldaOSWritten in C from scratch, ZeldaOS is an UNIX-like kernel which is aiming for POSX.1 compliance and running on any x86 and x86_64 processors. Also, the kernel is designed to support more and more networking features. |
|
ZeldaOS.x86_64Written in C from scratch, ZeldaOS.x86_64 is a 64_bit kernel which supports x86_64 features, it's also a bare metal hypervisor with Intel VT-x technology. |
|