Entwicklung

Wer noch nie ein eigenes Betriebssystem entwickelt hat, dem hilft vielleicht das mehrteilige Tutorial „Eigene Betriebssystementwicklung am PC“, das quasi als Logbuch während des Einstieges in die faszinierende Welt der Betriebssystementwicklung entstand. PrettyOS ist inzwischen deutlich weiterentwickelt worden. Wer bereits Erfahrung hat mit Betriebssystementwicklung, der sollte im Forum bzw. im IRC zu uns stoßen.

Technisches

PrettyOS besteht aus einem zweistufigen Bootloader, einem Kernel, Bibliotheken für den „Userspace“ sowie einigen kleinen Programmen. Der Bootloader sowie einige kleine Stellen des Kernels sind in Assembler geschrieben, während der Großteil des Kernels und des Userspaces in C (C99) geschrieben sind. Anwendungen im Userspace können auch in C++ und theoretisch beliebigen anderen Sprachen geschrieben werden.

Das System wird üblicherweise von einer Diskette (oder einem Diskettenabbild) mit dem eigenen Bootloader gestartet. Experimentell ist auch das Starten von einem mit FAT12 formatierten USB-Stick oder unter Verwendung von GRUB von diversen Medien möglich.

Informationsquellen

Entwickler werden gebeten, den Styleguide zu beachten, damit der Code möglichst harmonisch wirkt. Dieser ist im Repository unter /documentation/Styleguide.odt zu finden

Die eingesetzten Tools findet man in der Download-Sektion.

Bei Fragen bitte im IRC (Server: irc.euirc.net, Channel: #PrettyOS) vorbeischauen. Als IRC-Client kann man z.B. Nettalk einsetzen. Wesentliche Diskussionen sollten im Forum als eigenständige Threads festgehalten werden.

Entwickler

Nutzername (SVN) Nutzername (IRC) Zuständigkeit/Expertise
ehenkes ehenkes Bootprozess, paging/heap, usb-Treiber, Netzwerktreiber, Doku, Forum-Mod, Tutorials
pkeus MrX Kernel, Organisation, Tools, Design
jonasatsf JonasOSDever ATA-Treiber, Festplatten, ACPI, Paging, Heap
osmechanics Mechanics Entwickler
cooky451 cooky451 Entwickler (zur Zeit inaktiv)
neueruser neuer_user Entwickler (zur Zeit inaktiv)
internet internet Entwickler (zur Zeit inaktiv)
badestrand badestrand Paging, Heap (zur Zeit inaktiv)