Esta página se muestra en inglés. Una traducción al español está en curso.
ConfigsMay 20, 2026·3 min de lectura

SerenityOS — Unix-Like Operating System Built from Scratch

SerenityOS is a graphical Unix-like operating system written from scratch in C++ with its own kernel, userland, browser engine, and desktop environment. It serves as a learning platform for systems programming.

Listo para agents

Este activo puede ser leído e instalado directamente por agents

TokRepo expone un comando CLI universal, contrato de instalación, metadata JSON, plan según adaptador y contenido raw para que los agents evalúen compatibilidad, riesgo y próximos pasos.

Native · 98/100Política: permitir
Superficie agent
Cualquier agent MCP/CLI
Tipo
Skill
Instalación
Single
Confianza
Confianza: Established
Entrada
SerenityOS Overview
Comando CLI universal
npx tokrepo install 20fcb6f3-5447-11f1-9bc6-00163e2b0d79

Introduction

SerenityOS is a from-scratch Unix-like operating system that includes its own preemptive kernel, graphical desktop environment, web browser, text editor, terminal emulator, and hundreds of other utilities — all written without using third-party code. Started by Andreas Kling in 2018, the project has grown into a large community effort and serves as both a usable hobby OS and an educational resource for systems programming.

What SerenityOS Does

  • Provides a complete graphical desktop environment with a 1990s-inspired aesthetic
  • Runs a custom preemptive multitasking kernel with POSIX compatibility
  • Includes a web browser with its own HTML/CSS rendering and JavaScript engine
  • Ships with development tools: an IDE, debugger, profiler, and SQL database
  • Supports networking, audio, games, and a growing collection of ported applications

Architecture Overview

The SerenityOS kernel is a monolithic kernel written in modern C++ with support for SMP, virtual memory, ext2 and FAT filesystems, and TCP/IP networking. The display server (WindowServer) handles compositing and input routing. LibWeb and LibJS form the browser engine, which evolved into the independent Ladybird browser project. IPC between processes uses a custom serialization protocol over Unix sockets. The entire system builds with a custom cross-compilation toolchain.

Self-Hosting & Configuration

  • Build from source using the included Meta/serenity.sh script on Linux or macOS hosts
  • Run in QEMU, VirtualBox, or on bare-metal x86-64 hardware (experimental)
  • The cross-toolchain build takes 30-60 minutes on first setup
  • Configuration files live in /etc within the SerenityOS filesystem
  • Hack on individual components by editing C++ source and rebuilding incrementally

Key Features

  • Every component is written from scratch with no dependency on external libraries
  • Active contributor community with thousands of merged pull requests
  • The Ladybird browser engine spun off into its own cross-platform project
  • Comprehensive LibC and POSIX compatibility layer for porting Unix software
  • Built-in developer tools including HackStudio IDE and Profiler

Comparison with Similar Tools

  • Linux — production-grade kernel with vast hardware support; SerenityOS prioritizes simplicity and educational value over production use
  • Redox OS — Rust-based microkernel OS; SerenityOS uses a monolithic kernel in C++ with a more complete desktop experience
  • Haiku — continuation of BeOS with similar retro aesthetics; SerenityOS is Unix-like while Haiku follows the BeOS API model
  • MINIX 3 — microkernel OS for education and reliability research; SerenityOS focuses on a full graphical desktop experience

FAQ

Q: Can SerenityOS be used as a daily-driver operating system? A: Not yet. It is a hobby and educational OS that lacks driver support and stability for daily use.

Q: What is the relationship between SerenityOS and Ladybird? A: Ladybird started as the SerenityOS browser and became an independent cross-platform browser project using the same LibWeb engine.

Q: What programming language is SerenityOS written in? A: Modern C++ (C++23) with no third-party runtime dependencies.

Q: Can I run SerenityOS on real hardware? A: Experimental bare-metal support exists for x86-64, but QEMU is the recommended way to run it.

Sources

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados