Mushos ist ein Unix-ähnlicher OS-Prototyp, der von Grund auf neu geschrieben wurde.
Meine Motivation, es zu schaffen, war:
Der Kernelcode wird im core gespeichert, lib Directory enthält Code für mushlib - einen STDLIB -Ersatz für Mushos.
usergroup . ? Erstellen Sie Mushlib mit dem folgenden Befehl (CMAKE -Paket erforderlich!):
make build_lib
Führen Sie Mushos mit dem folgenden Befehl aus (CMAKE- und QEMU -Pakete erforderlich!):
make run
Mushlib gilt als modulare Einheit - es gibt keine Einschränkungen dafür, wie Heap oder Dateisystem implementiert werden, solange die Implementierung die Funktionen mit Standardsignaturen (von lib/base ) enthält.
Für jeden Build von Mushlib ist es möglich, seine Quellen durch maßgefertigte zu ersetzen. Wenn Sie beispielsweise Mushlib mit einer benutzerdefinierten Heap -Implementierung erstellen möchten, müssen Sie nur eine .c -Datei erstellen, die die Funktionen in lib/base/heap.h definiert hat - und dann einfach mit dem folgenden Befehl in Mushlib einbinden (dasselbe funktioniert mit .H- und .asm -Quellen):
make C_SOURCES="path/to/your/heap.c;" build_lib
NB! Ihre Datei muss denselben Namen wie die Basis -Mushlib -Datei haben, um einen erfolgreichen Austausch zu erhalten. Wenn zwei verschiedene Dateien ersetzt werden müssen, verwenden Sie einfach ein Semikolon (ein Semikolon ist am Ende immer erforderlich!).
gcc-multilib