12 Punkte von xguru 2021-10-12 | 1 Kommentare | Auf WhatsApp teilen
<p>- Ein OS, das sich anfühlt wie eine Mischung aus der UI von Windows/Mac aus den späten 1990ern und einem *nix-Kern aus den späten 2000ern <br /> - Begann als Ein-Personen-Projekt und wächst seit 3 Jahren mit Unterstützung der Community <br /> - Vom Kernel bis zum Webbrowser/IDE alles „von Grund auf selbst entwickelt, ohne externe Bibliotheken“<br /> - Das System selbst wird in Serenity C++ entwickelt. <br /> → eine moderne C++-Variante mit eigener Standardbibliothek<br /> <br /> Repo : https://github.com/SerenityOS/serenity<br /> <br /> - Kernel-Funktionen <br /> → x86- (32bit) / x86_64- (64bit) Kernel mit Unterstützung für präemptives Multithreading <br /> → IPv4-Stack (ARP, TCP, UDP, ICMP)<br /> → ext2-Dateisystem <br /> → Unterstützung für POSIX-Signale <br /> → Unterstützung für das /proc-Dateisystem <br /> <br /> - Systemdienste <br /> → Launch-/Session-Daemon (SystemServer)<br /> → Compositing Window Server (WindowServer)<br /> → Textkonsolen-Manager (TTYServer)<br /> → DNS-Client (LookupServer)<br /> → Server für Netzwerkprotokolle (RequestServer and WebSocket)<br /> → Sound-Daemon mit Software-Mixing (AudioServer)<br /> → Desktop-Benachrichtigungen (NotificationServer)<br /> → HTTP-Server (WebServer)<br /> → Telnet-Server (TelnetServer)<br /> → DHCP-Client (DHCPClient)<br /> <br /> - Bibliotheken<br /> → C++-Templates und Container (AK)<br /> → Event Loop und Utilities (LibCore)<br /> → 2D-Grafikbibliothek (LibGfx)<br /> → OpenGL-1.x-kompatible Bibliothek (LibGL)<br /> → GUI-Toolkit (LibGUI)<br /> → Bibliothek für prozessübergreifende Kommunikation (LibIPC)<br /> → HTML/CSS-Engine (LibWeb)<br /> → JavaScript-Engine (LibJS)<br /> → Markdown (LibMarkdown)<br /> → Audio (LibAudio)<br /> → Chains für digitale Signalverarbeitung/Synthesizer (LibDSP)<br /> → PCI-Datenbank (LibPCIDB)<br /> → Terminalemulation (LibVT)<br /> → Out-of-process Netzwerkprotokoll-I/O (LibProtocol)<br /> → Mathematische Funktionen (LibM)<br /> → Verarbeitung von ELF-Dateien (LibELF)<br /> → POSIX-Threading (LibPthread)<br /> → Höherstufiges Threading (LibThreading)<br /> → Transport Layer Security (LibTLS)<br /> → HTTP und HTTPS (LibHTTP)<br /> → IMAP (LibIMAP)<br /> <br /> - Userland-Funktionen<br /> → Unix-ähnliche libc und Userland<br /> → Shell mit Pipes und I/O-Umleitung<br /> → Online-Hilfesystem (sowohl Terminal- als auch GUI-Varianten)<br /> → Webbrowser (Browser)<br /> → C++-IDE (HackStudio)<br /> → Desktop-Synthesizer (Piano)<br /> → E-Mail-Client (Mail)<br /> → Verschiedene Desktop-Apps &amp; Spiele<br /> → Farbthemen</p>

1 Kommentare

 
xguru 2021-10-12
<p>Ich glaube, das ist eines der ungewöhnlichsten Hobby-OS-Projekte. Es ist auch beeindruckend, dass dort diese enorme Menge an Libraries und Apps implementiert und eingebaut wurde.<br /> Der ursprüngliche Autor Andreas Kling begann das Projekt 2018, nachdem er ein dreimonatiges Reha-Programm wegen Drogenabhängigkeit abgeschlossen hatte und plötzlich viel freie Zeit hatte, die er füllen wollte.<br /> Zuvor war er als Entwickler an WebKit bei Apple und Nokia tätig. Aufgrund seiner Erfahrungen bei Apple verfolgt er offenbar den Ansatz, alles ohne externe Pakete selbst zu entwickeln. <br /> <br /> Seit Mai dieses Jahres sind die Spenden nun groß genug, sodass er Vollzeit an SerenityOS arbeitet.<br /> Über GitHub Sponsors unterstützen ihn derzeit 232 Personen. https://github.com/sponsors/awesomekling<br /> Bei Patreon sind es 279 Personen: https://www.patreon.com/serenityos<br /> <br /> Die Zahl der Contributor hat 500 überschritten, und auf dem YouTube-Kanal werden jeden Monat OS-Updates veröffentlicht. <br /> https://youtube.com/playlist/… /> Anfang 2019 waren diese noch etwa 10 Minuten lang, inzwischen dauern die Updates eher 30 bis 40 Minuten. <br /> <br /> Bekannt ist auch ein Video, in dem Devilution, ein per Reverse Engineering nachgebautes Diablo 1, in nur einer Stunde auf SerenityOS portiert wurde.<br /> https://github.com/diasurgical/devilution<br /> https://www.youtube.com/watch?v=ZOzZ8R4gphE</p>;