https://serenityos.org/ - 1990년대말 윈도우/맥의 UI와 2000년대말의 *nix 코어를 합친 느낌의 OS - 1인 프로젝트로 시작되어 3년동안 커뮤니티의 지원으로 성장중 - 커널부터 웹브라우저/IDE 까지 모두 "외부 라이브러리 없이 밑바닥부터 손수 개발" - 시스템 자체는 Serenity C++ 로 개발됨. ㅤ→ 자체 표준 라이브러리를 가진 최신 C++의 변형
Repo : https://github.com/SerenityOS/serenity
- 커널 기능 ㅤ→ 선점형 멀티스레딩 지원하는 x86(32bit) / x86_64(64bit) 커널 ㅤ→ IPv4 스택 (ARP, TCP, UDP, ICMP) ㅤ→ ext2 파일 시스템 ㅤ→ POSIX signal 지원 ㅤ→ /proc 파일시스템 지원
- 시스템 서비스 ㅤ→ Launch/session daemon (SystemServer) ㅤ→ Compositing window server (WindowServer) ㅤ→ Text console manager (TTYServer) ㅤ→ DNS client (LookupServer) ㅤ→ Network protocols server (RequestServer and WebSocket) ㅤ→ Software-mixing sound daemon (AudioServer) ㅤ→ Desktop notifications (NotificationServer) ㅤ→ HTTP server (WebServer) ㅤ→ Telnet server (TelnetServer) ㅤ→ DHCP client (DHCPClient)
- 라이브러리 ㅤ→ C++ templates and containers (AK) ㅤ→ Event loop and utilities (LibCore) ㅤ→ 2D graphics library (LibGfx) ㅤ→ OpenGL 1.x compatible library (LibGL) ㅤ→ GUI toolkit (LibGUI) ㅤ→ Cross-process communication library (LibIPC) ㅤ→ HTML/CSS engine (LibWeb) ㅤ→ JavaScript engine (LibJS) ㅤ→ Markdown (LibMarkdown) ㅤ→ Audio (LibAudio) ㅤ→ Digital Signal Processing/Synthesizer Chains (LibDSP) ㅤ→ PCI database (LibPCIDB) ㅤ→ Terminal emulation (LibVT) ㅤ→ Out-of-process network protocol I/O (LibProtocol) ㅤ→ Mathematical functions (LibM) ㅤ→ ELF file handling (LibELF) ㅤ→ POSIX threading (LibPthread) ㅤ→ Higher-level threading (LibThreading) ㅤ→ Transport Layer Security (LibTLS) ㅤ→ HTTP and HTTPS (LibHTTP) ㅤ→ IMAP (LibIMAP)
- Userland 기능들 ㅤ→ Unix-like libc and userland ㅤ→ Shell with pipes and I/O redirection ㅤ→ On-line help system (both terminal and GUI variants) ㅤ→ Web browser (Browser) ㅤ→ C++ IDE (HackStudio) ㅤ→ Desktop synthesizer (Piano) ㅤ→ E-mail client (Mail) ㅤ→ Various desktop apps & games ㅤ→ Color themes |