Tech News

제목SerenityOS - 90년대 GUI로 구현한 Unix-like OS2021-10-13 17:07
작성자 Level 10

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

댓글
자동등록방지
(자동등록방지 숫자를 입력해 주세요)