UnixLite: Betriebssystem als Lehrmaterial
In C++ geschriebenes Unix ist binärkompatibel zu Linux
Das an der Nanjing University of Aeronautics and Astronautics entwickelte, freie Betriebssystem UnixLite ist eine schlanke Unix-Version, die sich vor allem zu Lehrzwecken eignen soll, aber beispielsweise auch in Embedded-Geräten eingesetzt werden kann. Der Kernel des in C++ geschriebenen UnixLite soll nur etwa 20.000 Code-Zeilen umfassen.
UnixLite wird derzeit noch vor allem zu Lehr- und Lernzwecken entwickelt. Dafür soll es sich besonders gut eignen, da es mit 20.000 Code-Zeilen sehr schlank ist und die Funktionen nach Aussage der Entwickler alle gut dokumentiert sind. Sowohl Informatikstudenten als auch Programmierer, die sich in Betriebssystemtechnik einarbeiten möchten, sollen daher mit UnixLite etwas anfangen können. In Zukunft möchte man sich jedoch auch mehr auf den Einsatz in Embedded-Systemen konzentrieren.
Der Großteil des Systems ist in C++ geschrieben, wobei UnixLite nur der monolithische Kernel selbst ist. Als Bibliothek kommt uClibc zum Einsatz, die Applikationen stammen vom GNU Projekt, so dass beispielsweise Bash und der GCC funktionieren. Neben diesen Portierungen sind auch etwa 80 häufig genutzte POSIX-Systemaufrufe implementiert und UnixLite ist binärkompatibel zu Linux.
Das System unterstützt darüber hinaus Memory Paging und das Flat-Memory-Modell und bietet eine rudimentäre TCP/IP-Implementierung, die ausreichen soll, um einen Webserver zu betreiben. Außerdem wird das Minix-Dateisystem eingesetzt. UnixLite braucht mindestens einen 486er mit 4MByte RAM sowie 100 MByte Speicher auf der Festplatte und eine Diskette, da der Kernel noch nicht direkt von der Festplatte starten kann.
Die aktuelle Version UnixLite 0.2 steht ab sofort unter unixlite.org zum Download bereit und ist unter der GPL lizenziert.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Man mag es kaum glauben, aber sogar Unix kann jetzt auch ACPI
Es geht hier nicht um Lehrzwecke im Rahmen des Informatik-Kurses eines Gymnasiums.
Ist deiner besser? ;)