Jak napisać system operacyjny w 64 sesjach z wykorzystaniem sieci neuronowej
Niedawno natknąłem się na projekt VibeOS i wzbudził on we mnie mieszankę ekscytacji i lekkiej zazdrości. Autor postanowił napisać pełnoprawny system operacyjny dla ARM64 od zera. Ale najciekawsze jest to, że zrobił to we współpracy z Claude Code, dokumentując cały proces — od pierwszej linii kodu po uruchomienie DOOM-a.
To nie jest tylko zabawka typu "Hello World". Mamy do czynienia z projektem obejmującym GUI w stylu macOS, własny stos sieciowy, obsługę HTTPS, a nawet wbudowany interpreter Pythona.
Co to w ogóle jest
VibeOS to hobbystyczny system operacyjny napisany w C dla architektury aarch64. Działa w emulatorze QEMU oraz na prawdziwym sprzęcie, konkretnie na Raspberry Pi Zero 2W. Prace nad nim wymagały 64 sesji interakcji z AI. Jeśli spojrzysz na logi sesji w repozytorium, możesz prześledzić, jak projekt zyskiwał na substancji: od bootloadera i obsługi przerwań po implementację menedżera okien.

Autor szczerze przyznaje: nie wszystko działa, niektóre części kodu nawet nie zostały przetestowane. Ale to, co działa, robi wrażenie. To świetny przykład na to, jak nowoczesne duże modele językowe obniżają barierę wejścia w tak złożonych dziedzinach jak programowanie systemowe i rozwój jądra.
Co w środku: jądro i interfejs
U podstaw leży własne jądro z kooperatywnym wielozadaniowością. Jest obsługa systemu plików FAT32 z długimi nazwami plików, co często stanowi przeszkodę dla amatorskich systemów.
GUI wygląda zaskakująco nowocześnie. Oto co oferuje:
- Pulpit z przeciąganymi oknami.
- Panel dock i menu.
- Pełna obsługa myszy i klawiatury.
- Animacje minimalizacji i zamykania okien.

Wizualnie przypomina uproszczoną wersję macOS, a jak na system pisany "dla zabawy", wygląda bardzo dopracowanie.
Sieć i programowanie wewnątrz systemu
Zazwyczaj amatorskie systemy operacyjne ograniczają się do tekstowego wyjścia w konsoli. VibeOS poszedł dalej. System ma wbudowany stos TCP/IP, resolver DNS, a nawet klienta HTTP z obsługą TLS 1.2. Dzięki temu wbudowana przeglądarka (tak, istnieje) może renderować prosty HTML i CSS.
Ale najbardziej przykuła moją uwagę narzędzia deweloperskie wewnątrz samego VibeOS:
- Tiny C Compiler (TCC). Możesz pisać kod w C bezpośrednio w systemie i kompilować go na miejscu.
- MicroPython. Istnieją powiązania z API jądra, więc możesz automatyzować zadania w Pythonie.
- VibeCode IDE. Alternatywa w stylu VS Code dla tego systemu.

A oczywiście klasyka: DOOM został przeniesiony na VibeOS. Aby go uruchomić, musisz samodzielnie zdobyć plik doom1.wad i wrzucić go do folderu games, ale sam fakt istnienia tego portu świadczy o żywotności wywołań systemowych.
Sprzęt i niuanse działania
Jeśli zdecydujesz się uruchomić to na Raspberry Pi Zero 2W, przygotuj się na przygody. Autor ostrzega, że sterownik USB jest kapryśny. Na przykład musisz podłączyć klawiaturę do huba ściśle przed myszą, w przeciwnym razie system może ich nie rozpoznać. Hotplug nie jest obsługiwany: jeśli odłączysz coś, będziesz musiał ponownie uruchomić system.
Na prawdziwym "Pi" nie ma jeszcze dźwięku ani sieci (brak sterowników Wi-Fi), ale GUI w Full HD (1920x1080) działa stabilnie.
Jak samodzielnie wypróbować
Najłatwiejszy sposób to uruchomić projekt w QEMU. Potrzebujesz kompilatora krzyżowego aarch64-elf-gcc. Na macOS instalacja wygląda prosto:
brew install aarch64-elf-gcc qemu
make disk
make run
Polecenie make disk utworzy obraz dysku, a make run zbuduje jądro, wszystkie programy użytkowe i uruchomi emulator.
Kto skorzysta
VibeOS nie jest zamiennikiem Linuksa ani kandydatem na "zabójcę Windows". To przede wszystkim podręcznik. Jeśli zawsze chciałeś zrozumieć, jak działają przerwania, jak napisać własny alokator pamięci lub jak zaimplementować przeciąganie okien na poziomie framebuffera, to repozytorium jest kopalnią złota.
Szczególnie interesujące jest studiowanie logów sesji z Claude. To praktyczny przewodnik po "inżynierii promptów" w kontekście niskopoziomowego kodu. Możesz zobaczyć, gdzie sieć neuronowa popełniła błędy i jak autor prowadził ją do naprawiania bugów w sterownikach czy systemie plików.
Projekt warto przejrzeć przynajmniej po to, by zobaczyć: tworzenie własnego systemu operacyjnego dzisiaj to nie dekada odosobnienia, a całkiem wykonalny kilkumiesięczny projekt, jeśli masz pod ręką odpowiednie narzędzia.
Powiązane projekty