awesome-os

OS projects

A curated list of operating system projects and resources for learning and development

A list of operating systems and stuff

GitHub

2k stars
55 watching
162 forks
last commit: almost 2 years ago
Linked from 3 awesome lists

awesomeawesome-listkernellinuxlinux-kerneloperating-systemosos-devosdev

Awesome Operating System Stuff / Open Source Operating Systems

9frontA fork of Plan 9, designed for distributed, networked computing
AROSResearch Operating System is a lightweight, efficient, and flexible desktop operating system, designed to help you make the most of your computer. It's an independent, portable and free project, aiming at being compatible with AmigaOS at the API level
AlmeidaOS58over 4 years agox86-64 OS with its own bootloader, scheduler and limited libc all written from scratch
Animal646almost 2 years ago32 bit multithreaded operating system (formerly Gramado)
AurixOS15almost 2 years agoA small multiplatform Operating System designed for developers and creators
AquilaOSOperating System that is designed to be POSIX compliant and mostly ISA transparent
BareMetal, - 64 bit operating system written in Assembly for x86-64
Basekernel812over 2 years agoA simple OS kernel for research, teaching, and fun
BoneOS129about 2 years agoOS for everyone built by everyone
Bottlerocket OS8,847almost 2 years agoLinux-based OS meant for hosting containers
Brutal1,057about 3 years agoAn operating system inspired by brutalist design that combines the ideals of UNIX from the 1970s with modern technology and engineering
cavOS303almost 2 years agoAmd64 operating system in C. Trying to make a full OS, with a simple and readable codebase
Charlotte115almost 2 years agoCharlotteOS kernel in Rust
ChibiOSa complete development environment for embedded applications including RTOS, an HAL, peripheral drivers, support files and tools
CliveA unikernel OS inspired by Plan9 and Nix developed at
Cyjon435about 2 years agopure x64 assembly language operating system (related to project)
DragonOS915almost 2 years agoAn x86-64 OS build from scratch
Dreamos64169almost 2 years agoAn x86-64 hobby os built from scratch
EmboxConfigurable operating system kernel designed for resource constrained and embedded systems
ExectOS, - ExectOS 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
Fern-Night20about 2 years agoC language operating system (related to project)
Fiwix, - A UNIX-like kernel for the i386 architecture
Fomos963about 3 years agoExperimental OS, built with Rust
FreeRTOS, - IoT operating system for microcontrollers, by Amazon
GarnOS11almost 2 years agoHobby OS powered by a modular kernel
GenodeA FOSS operating system framework consisting of a microkernel abstraction layer and a collection of userspace components
Gloire126almost 2 years agoAn OS built with the kernel (a partially formally verified kernel with a small footprint for general-purpose and embedded OSes, written in SPARK and Ada) and GNU tools
GreenteaOS, - A free OS designed to be compatible with Windows executables
HalideOSexperimental operating system written entirely from scratch
HarveyOSA distributed operating system
HelenOS1,382almost 2 years agomultikernel multiserver OS
HouseHaskell User's Operating System and Environment
HubrisHubris is an operating system for microcontrollers developed by Oxide Computer Company in Rust
Illumosillumos is a Unix operating system which provides next-generation features for downstream distributions (like OmniOS, OpenIndiana, and Tribblix)
Interim1,252over 5 years agoMinimalist OS with concepts from Lisp machines and Plan9
JSD-OS58about 4 years agoA small operating system for 32 bit x86
Jehanne, - OS inspired by Plan9, 9front and Harvey OS
KiddieOS47about 2 years agoUNIX-like 64-bit operating system written in Assembly, C++
KnightOS1,295over 5 years agofor z80 calculators
KolibriOSMenuetOS fork
L4re78almost 2 years agoOperating system and hypervisor for security/safety-critical and virtualization-enabled applications
LemonOS, - UNIX-like 64-bit operating system written in C++
Mako63almost 2 years agoHobby OS for x86 from scratch, written in C
MaslOS92over 2 years agoA 64 bit GUI multitasking Hobby OS written mostly from scratch in C++ and a bit of C/ASM
MeetixOS189over 3 years agoA hobby OS written in modern C++20 which aims to be Unix-like
MentOS156almost 2 years agoAn educational 32-bit linux-like Operating System
MenuetOSHobby OS supporting 32 and 64 bit, written in Assembly language
Mimiker, - Simple unix-like operating system for education and research purposes. MIPS microkernel
Mimosa, - Research Operating System that runs Scheme on bare-metal
Minoca OS2,723almost 5 years agoGeneral purpose OS, written in C
MollenOS448almost 2 years agoMollenOS/Vali is a modern operating system that is built with focus on abstraction and a modular design, allowing anyone to port it to any architecture. It currently targets the x86-32 and x86-64 platform
MyXomycotaMonolithic kernel in C
NESOSAn OS for the Nintendo Entertainment System!
Nanos2,670almost 2 years agoUnikernel that is linux-compatible, written in C
NodeOS6,948over 3 years agoOS using NodeJS and Linux
Northport88almost 2 years agoMonolithic kernel and support libraries for riscv64 and x86_64
PathOSHobby OS based on , written in Assembly Language
Pidi OS38almost 4 years agoIndependent and minimalistic OS
PonyOS, - ToaruOS-based, My Little Pony themed OS
PouplyOS9over 3 years agoSimple OS for fun and learning, named after the ESISAR mascot Poulpy
PureDarwin2,253almost 2 years agoPureDarwin is a community project to extend Darwin into a complete, usable operating system
Qubes OSSecurity-focused OS built on the Xen hypervisor, designed to isolate different compartments based on levels of trust
RavynOS5,705almost 2 years agoA BSD-based OS project that aims to provide an experience like and some compatibility with macOS (formerly known as airyxOS)
Redox15,232almost 2 years agowritten in Rust
RustyHermit1,703almost 2 years agoA Rust-based, lightweight unikernel
Sanos, - Sanos is a minimalistic 32-bit x86 operating system kernel for network server appliances running on standard PC hardware
SayoriOS31almost 2 years agoHobby OS for x86 computers, currently under active development, written in C
Sculpt OSGenode based OS
Serenity30,858almost 2 years agoGraphical Unix-like operating system for x86 computers
SimpleOS133almost 2 years agoSimple Operating System coded in C and Assembly
Snowdrop OSa homebrew operating system from scratch, in assembly language
SortixHobby OS in C and C++ by Jonas 'Sortie' Termansen
SyllableSuccessor of AtheOS, Syllable is designed in the tradition of the Amiga and BeOS, but built using many parts from the GNU project and Linux
SynestiaOS41almost 5 years ago32/64 bit operating system written in C for arm platform
TempleOS3,163almost 3 years agoReligious OS :-)
Theseus2,936almost 2 years agoA modern experimental OS written from scratch in Rust to explore novel OS structure and state management techniques
Thor1,667almost 2 years ago64bit operating system mostly written in C++
ToaruOS6,149almost 2 years agoHobby operating system from scratch
TýndurHobby operating system build by the Lowlevel community. Written in C and Pascal
Ultron OS176almost 9 years agox86 Operating System written in C++, High School Project
Unikraft2,891almost 2 years agoA modular unikernel for specialization, high efficiency, performance, and security; Linux/POSIX-compatible; mostly in C
Vinix1,962almost 2 years agoVinix is an effort to write a modern, fast, and useful operating system in the V programming language
VisopsysOpen Source Hobby OS developed since 1997
Windows 95 in Electron22,290over 2 years agoHobby Windows 95 implementation in Electron
Xv6A teaching operating system developed in the summer of 2006 for MIT's operating systems course
ZealOS1,579almost 2 years agoThe Zeal Operating System is a modernized, professional fork of the 64-bit Temple Operating System, TempleOS
ackOS87almost 2 years agoA simple 64-bit operating system
aurora_os7about 2 years agoWritten in Rust
dahliaOSdahliaOS is a modern, secure, lightweight and responsive operating system, combining the best of GNU/Linux and Fuchsia OS
duckOS623about 2 years agoA hobby UNIX-like OS with a graphical window manager for x86 computers
eggos2,239about 3 years agoA Go unikernel running on x86 bare metal
emerald318about 5 years agoAn operating system kernel written for fun in C
gopher-os2,584about 6 years agoA proof of concept OS kernel written in Go
hhuOS152almost 2 years agohhuOS is a small operating system written in C++ and Assembler for the x86-architecture. The main purpose 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 full-featured operating system for daily use
hydrogen36over 6 years agotoy OS. 64-bit, preemptive multitasking kernel supporting EFI, PCIe, SATA, framebuffer graphics mode, HFS+
lyrex86 kernel and distribution powered by mlibc, GNU userland tools, and other common *nix software
managarm1,595almost 2 years agoPragmatic microkernel-based OS with fully asynchronous I/O
menix19almost 2 years agoA minimal and expandable Unix-like operating system
moros928almost 2 years agoMOROS is a hobby operating system written in Rust for the x86 architecture
mOS372almost 5 years agoA hobby operating system developed from scratch
nopeos44almost 2 years agoSimple OS kernel with BASIC interpreter for x86
octox1,504about 2 years agoUnix-like OS in Rust inspired by xv6-riscv
oneOS661over 3 years agox86-32 and ARMv7 kernel with pre-emptive multi-threading, window manager and editor
opuntiaOS661over 3 years agoan operating system targeting x86, ARMv7, Aarch64
orange_slice516over 5 years agoA research kernel and hypervisor attempting to get fully deterministic emulation with minimum performance cost. In Rust
OrchestrOS2almost 2 years agoA simple, hobby, 64-bit operating system. This is a rewrite of GarnOS that focuses on simplicity, portability and maintainability. Written in C
pranaOS162almost 2 years agoA unix operating system written from scratch in c / c++
quickOSAn OS made by an independant developer, still in developement, like MS-DOS, but in qbasic. It's MADE with qb64
r380almost 4 years agoA hobby x86_64 Operating System kernel written in Rust -- with minimal functionalities
ravynOS5,705almost 2 years agoBSD-based OS project that aims to provide an experience like and some compatibility with macOS (formerly known as airyxOS)
skiftOS, - A simple, handmade, operating system with a graphical user interface
soso907over 3 years agoSimple unix-like operating system written in Nasm assembly and mostly in C
tilck2,387almost 2 years agoA Tiny Linux-Compatible Kernel
tock, - A secure embedded operating system for microcontrollers
unox-os23about 4 years agoUnox is an educational unix-like operating system
willOS332over 2 years agoA minimal 64 bits kernel (Operating System that cannot "operate" a lot of things)
Darwin XNU1,872almost 2 years agoThe XNU kernel source code for use in MacOS and iOS
FreeBSD, - Unix-like operating system based on the BSD
FreeDOSDOS compatible OS
Haiku1,938almost 2 years agoBeOS inspired OS
Linux184,315almost 2 years agoLinux kernel
Minix, - Unix-like operating system based on a microkernel architecture
MS-DOS30,820over 2 years agoThe original sources of MS-DOS 1.25 and 2.0
NetBSD, - Unix-like operating system based on the BSD
OpenBSD, - Unix-like operating system based on the BSD
Plan 9 from Bell LabsAn OS from the creators of Unix, extending the Unix philosophy of "everything is a file" with a network-centric file system, namespaces and distributed computing
ReactOS, - A free Windows-compatible Operating System
SystemVAT&T UNIX System V Source Code

Awesome Operating System Stuff / Books and Guides / Online books

How to Make a Computer Operating System21,539almost 5 years agoin C++
IntermezzosA follow along book to build IntermezzosOS in Rust
Linux Kernel in a NutshellCovers the entire range of kernel tasks, available as chapters or one PDF
The little book about OS developmentby and
Think OSA Brief Introduction to Operating Systems by
Operating System Development SeriesOS from the ground up in C
Operating Systems: Three Easy PiecesEasy to read book covering virtualization, concurrency and persistence
xv6: a simple, Unix-like teaching operating systemBook for Xv6
Operating Systems: From 0 to 1Bootstrap yourself to write an OS from scratch by
Osdev Notes602almost 2 years agoHow to write an operating system from scratch by and

Awesome Operating System Stuff / Books and Guides / Tutorials

Baking Pi – Operating Systems Developmentby University of Cambridge
Build a minimal multi-tasking OS kernel for ARM from scratch1,072over 4 years agoby Jim Huang
Bran's Kernel Developmentby Brandon Friesen
How to write a Linux kernel patch and submit it1,112over 5 years agoby Greg Kroah-Hartman
Presentation on how the Linux kernel is developed624almost 3 years agoby Greg Kroah-Hartman
os-tutorial - How to create an OS from scratch27,561about 2 years agoby Carlos Fenollosa
Roll your own toy UNIX-clone OSby James Molloy
Writing an OS in Rustby Philipp Oppermann
Making a RISC-V Operating System using Rustby Stephen Marz
Operating systems development for Dummiesby Leo Whitehead
Kernels 101 – Let’s write a Kernelby Arjun Sreedharan
Kernels 201 - Let’s write a Kernel with keyboard and screen supportby Arjun Sreedharan
Writing a Tiny x86 Bootloaderby Joe Bergeron
Writing a Bootloaderby Alex Parker
Learning operating system development using Linux kernel and Raspberry Pi13,278over 2 years ago
mya11over 2 years agoa fun project to create OS from scratch by Erfan

Awesome Operating System Stuff / Books and Guides / Websites

GenodiansStories around the Genode Operating System
os-devWiki with everything you need to know
LowlevelA wiki about creating an OS from scratch. In German
POSIXStandards for maintaining compatibility between operating systems
Rust OSDevNewsletter about OS development in Rust
OSRTOSList of open source real-time operating systems
MulticiansThe Multicians web site presents the story of the Multics operating system for people interested in the system's history

Awesome Operating System Stuff / Books and Guides / Papers

The benefits and costs of writing a POSIX kernel in a high-level languageby Cody Cutler, M. Frans Kaashoek, and Robert T. Morris, MIT CSAIL
Running Scheme On Bare Metalby Samuel Yvon, Marc Feeley, Scheme 2020
Unikraft: Fast, Specialized Unikernels the Easy Wayby Kuenzer et al., EuroSys 2021

Awesome Operating System Stuff / Books and Guides / Video Tutorials

Write your own Operating System
Nanobyte
Kernel dev from scratch by Dragon Zap Education
OSDev Lecture Series by AptRock327

Awesome Operating System Stuff / Linux specific / Tools

b471almost 2 years ago, , a tool to help with email-based patch workflows
clang-extract17almost 2 years agoa tool to extract code content from source files using the clang and LLVM infrastructure
hackermail21almost 2 years agoa mails management tool for hackers who collaborate using mailing lists
kworkflow131almost 2 years agoreduce the overhead with infrastructure setup for Linux development
virtme-ng471almost 2 years agoquickly build and run kernels inside a virtualized snapshot of your live system

Awesome Operating System Stuff / Linux specific / Debugging

Bug hunting
Bisecting a bug
Dynamic Debug
Who Made That Change and When: Using Cregit for Debuggingby Shuah Khan
Make stack dump output useful again
Debugging Analysis of Kernel panics and Kernel oopses using System Mapby Sanjeev Sharma
Understanding a Kernel Oops!by Surya Prabhakar

Awesome Operating System Stuff / Conferences / Presentations

Linux Plumbers,
The Linux Foundation

Backlinks from these awesome lists:

More related projects: