- Maestro ist ein Unix-ähnlicher Kernel und ein Betriebssystem, das von Grund auf in der Sprache Rust geschrieben wurde.
- Anfangs wurde es in C implementiert, doch als es schwierig wurde, die Codebasis sauber zu halten, erfolgte der Wechsel zu Rust.
- Rust ermöglichte es, das Projekt von Grund auf neu zu starten, was innovativer war, als einen Linux-ähnlichen Kernel in C zu schreiben, und hilft dank der Sicherheitseigenschaften von Rust dabei, die Schwierigkeiten der Kernel-Programmierung zu verringern.
Aktueller Stand des Projekts
- Maestro ist derzeit ein monolithischer Kernel, der nur die x86-Architektur (32 Bit) unterstützt.
- Zum Zeitpunkt des Schreibens sind etwa 135 Linux-Systemaufrufe implementiert, was rund 31 % entspricht.
- Neben dem Kernel enthält das OS weitere Komponenten wie das Boot-System und den Daemon-Manager Solfège, die System-Utility-Befehle
maestro-utils sowie den Paketmanager blimp.
- Es wurde getestet, dass Drittanbieter-Software wie musl (C-Standardbibliothek), bash, einige GNU-coreutils-Befehle und neofetch (gepatchte Version) auf dem OS funktioniert.
Selbst testen!
- Das OS befindet sich noch in einem frühen Entwicklungsstadium und ist sehr instabil, daher wird die Installation auf Maschinen mit wichtigen Daten nicht empfohlen.
- Getestet wurde es hauptsächlich mit QEMU, VMWare und VirtualBox.
- Es gibt zwei Möglichkeiten, das OS zu installieren: eine vorgefertigte
.iso-Datei herunterladen oder das ISO selbst bauen.
- Installierte Pakete werden nicht auf der Festplatte, sondern im RAM (
initramsfs) gespeichert, daher wird ausreichend RAM (mindestens 1 GB) benötigt.
Über diesen Blog
- Ziel dieses Blogs ist es nicht, ein Tutorial zum Erstellen eines OS zu schreiben, sondern fortgeschrittenere Themen zu erkunden, Lösungswege für Probleme zu teilen und zu entdecken, wie Computer, Betriebssysteme und das Internet funktionieren.
- Besonders empfohlen werden osdev.org und der Blog von Philipp Oppermann.
Was als Nächstes kommt
- Die Codebasis muss aufgeräumt und die Performance optimiert werden.
- Das Beheben von Memory Leaks und Performance-Optimierung könnten Themen künftiger Blogartikel sein.
- Das nächste Ziel ist, den Paketmanager vollständig im OS lauffähig zu machen.
- Unterstützung für Netzwerk und Shared Libraries wird benötigt.
Wie man helfen kann
- Man kann in Kontakt bleiben, indem man dem Github-Repository einen Stern gibt, den Newsletter abonniert, den RSS-Feed verfolgt oder dem Discord beitritt.
Meinung von GN⁺
- Das Maestro-Projekt ist ein Unix-ähnliches Betriebssystem, das in Rust geschrieben wurde und bei der Kernel-Entwicklung auf Sicherheit und Innovationskraft setzt.
- Das Projekt bietet eine interessante Gelegenheit für Entwickler, die zur Open-Source-Community beitragen möchten, und kann helfen, das Zusammenspiel realer Hardware und Software besser zu verstehen.
- Für angehende Softwareingenieure, die die Vorteile und Grenzen der Systemprogrammierung mit Rust praktisch kennenlernen möchten, kann es nützliches Lernmaterial sein.
1 Kommentare
Hacker-News-Kommentare
Dank für die Unterstützung des Projekts
Kommentar zu einem großartigen kleinen Projekt
Kommentar zu Sicherheit/Penetrationstests
Erwähnung des Kerla-Projekts
Kommentar zu den Nachteilen der Verwendung von C und den Schwierigkeiten der OS-Entwicklung
Erwähnung der Einstellung des Kerla-Projekts
Kommentar zur Komplexität von Computern
Rat zum Abbau technischer Schulden
Interesse an Gource
Interesse am Bau eines Kernels