All Projects → sigma-os → Sigma

sigma-os / Sigma

Licence: BSD-2-Clause License
Abandoned overcomplicated Microkernel using modern x86_64 features

Programming Languages

C++
36643 projects - #6 most used programming language
assembly
5116 projects
c
50402 projects - #5 most used programming language
Meson
512 projects

Projects that are alternatives of or similar to Sigma

poplar
Microkernel and userspace written in Rust exploring modern ideas
Stars: ✭ 217 (+502.78%)
Mutual labels:  kernel, os, osdev, microkernel
biefircate
Running x86-16 or x86-32 code from x86-64 UEFI; _very experimental_ • mirror of https://gitlab.com/tkchia/biefircate • developer notes at https://gitlab.com/tkchia/biefircate/-/blob/main/doc/NOTES.asciidoc
Stars: ✭ 47 (+30.56%)
Mutual labels:  kernel, os, osdev
kernel
Main kernel tree
Stars: ✭ 28 (-22.22%)
Mutual labels:  kernel, os, osdev
os
x86-64 assembly µkernel
Stars: ✭ 15 (-58.33%)
Mutual labels:  kernel, os, osdev
chaos-2
A hand-made SMP-aware kernel
Stars: ✭ 20 (-44.44%)
Mutual labels:  kernel, os, osdev
SynapseOS
SynapseOS - модульная операционная система на языке C.
Stars: ✭ 93 (+158.33%)
Mutual labels:  kernel, os, osdev
Macaron
A sweet hobby made operating system written in C++ for x86 CPUs with GUI
Stars: ✭ 34 (-5.56%)
Mutual labels:  kernel, os, osdev
Snowflakeos
"It is very special"
Stars: ✭ 190 (+427.78%)
Mutual labels:  kernel, os, osdev
mcube
Mcube Kernel: Operating System Supporting Dynamically Switchable Kernel Models
Stars: ✭ 42 (+16.67%)
Mutual labels:  kernel, os, microkernel
duckOS
Yet another hobby x86 UNIX-like operating system written in C and C++. Features a dynamically linked userspace, an in-house c standard library, and more! And yes, it runs DOOM.
Stars: ✭ 250 (+594.44%)
Mutual labels:  kernel, os, osdev
DentOS
Experimental Stand-alone 32-bit Kernel with Bootloader written in AT&T Assembly and Freestanding C
Stars: ✭ 32 (-11.11%)
Mutual labels:  kernel, os, osdev
Cardinal
Operating system designed to be fast and secure.
Stars: ✭ 20 (-44.44%)
Mutual labels:  kernel, os, osdev
MoonOS
MoonOS (just a kernel atm) is a micro kernel designed for the x86_64 and arm architecure.
Stars: ✭ 82 (+127.78%)
Mutual labels:  os, osdev, microkernel
xtrix
xtrix OS repo
Stars: ✭ 23 (-36.11%)
Mutual labels:  os, osdev, microkernel
Kernel
The Stupid Operating System
Stars: ✭ 217 (+502.78%)
Mutual labels:  kernel, os, osdev
OpenHarmony
华为鸿蒙分布式操作系统(Huawei OpenHarmony)开发技术交流,鸿蒙技术资料,手册,指南,共建国产操作系统万物互联新生态。
Stars: ✭ 373 (+936.11%)
Mutual labels:  kernel, os, microkernel
Cyjon
A simple, clean code, multi-tasking operating system written in pure assembly language for 64-bit processors from the AMD64 family.
Stars: ✭ 184 (+411.11%)
Mutual labels:  kernel, os, osdev
Unikraft
Unikraft is an automated system for building specialized POSIX-compliant OSes known as unikernels. (Core repository)
Stars: ✭ 183 (+408.33%)
Mutual labels:  kernel, os, osdev
SnowFlake
Technology is free, SnowFlakeOS
Stars: ✭ 38 (+5.56%)
Mutual labels:  kernel, os, osdev
beeos
A simple "Unix-like" kernel trying to be POSIX compliant
Stars: ✭ 103 (+186.11%)
Mutual labels:  kernel, os, osdev

Sigma 🚀

Sigma OS is located in this repo

It is an x86_64 (semi)POSIX (semi)Microkernel but still in early development

How to build

Look in sigma-os/bootstrap

Features

  • Full x86_64 long mode support
  • Support for a lot of x86(_64) minor features (e.g. SMEP, SMAP, PCID and x2APIC)
  • ACPI and AML support with lai
  • APIC support + LAPIC timer for scheduling IRQs
  • PCI / PCI-Express Configuration space enumeration
  • SMP + Simple Queue based scheduler
  • Dynamically linked userland backed by mlibc
  • Modern disk drivers (AHCI, NVMe)
  • Virtualization (AMD-V only for now)
  • Protection against malicious drivers with IOMMU (VT-d only for now)

Notes

  • Sigma does try to have as much drivers and things in userspace(PL3) but it doesn't attempt to move the memory manager and process management / scheduler out of the kernel.

  • When running vbox use the ich9 chipset, if you must use the piix3 chipset you need to explicitly enable the HPET with this command VBoxManage modifyvm <your vm name> --hpet on

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].