2025/04/24 by Wonkyo Choe, Rongxiang Wang, Choe, Wonkyo +5 · 1 voice · 1 citation
Computer Science · #FOS: Computer and information sciences #Operating Systems (cs.OS) #Software Engineering (cs.SE) #cs.OS #cs.SE
paper · pdf · doi:10.48550/arxiv.2504.17984
arxiv published 2025/04/24 · arxiv updated 2025/10/20
Proto is a new instructional OS that runs on commodity, portable hardware. It showcases modern features, including per-app address spaces, threading, commodity filesystems, USB, DMA, multicore support, self-hosted debugging, and a window manager. It supports rich applications such as 2D/3D games, music and video players, and a blockchain miner. Unlike traditional instructional systems, Proto emphasizes engaging, media-rich apps that go beyond basic terminal programs. Our method breaks down a full-featured OS into a set of incremental, self-contained prototypes. Each prototype introduces a minimal set of OS mechanisms, driven by the needs of specific apps. The construction process then progressively enables these apps by bringing up one mechanism at a time. Proto enables a wider audience to experience building a self-contained software system used in daily life