Configs2026年5月20日·1 分钟阅读

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.

Agent 就绪

这个资产可以被 Agent 直接读取和安装

TokRepo 同时提供通用 CLI 命令、安装契约、metadata JSON、按适配器生成的安装计划和原始内容链接,方便 Agent 判断适配度、风险和下一步动作。

Native · 98/100策略:允许
Agent 入口
任意 MCP/CLI Agent
类型
Skill
安装
Single
信任
信任等级:Established
入口
SerenityOS Overview
通用 CLI 安装命令
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

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产