006
10.04.2009, 22:08 Uhr
0xdeadbeef
Gott (Operator)
|
Grub kann sogar eine Reihe von Dateisystemen lesen.
Wie dem auch sei, lüg mich nicht an. Ich hab mir die letze Version (0.1.1) runtergeladen, und Paging ist nicht vorhanden, ihr hantiert nicht mal mit Segmenten. Es gibt überhaupt keine Speicherverwaltung. Ihr schreibt sogar in uninitialisierte Zeiger, also ist es reiner Zufall, dass der ganze Kram überhaupt funktioniert. Man vermisst irgendeine Art von Kernelschnittstelle, was für ein Betriebssystem definierend wäre. Der Protected Mode und das A20-Gatter werden nirgendwo aktiviert (die a20gate-Funktion wird nirgends aufgerufen), obwohl entsprechende Aussagen gemacht werden. Der gesamte Code umfasst 1121 Zeilen, und wenn ihr auch nur grundlegende C-Kenntnisse (wie etwa Array-Initialisierung) hättet, wäre es noch bedeutend weniger.
Das, was ihr da macht, ist Kinderkram, und wenn du es für komplizierter als Parser hältst, hast du keine Ahnung von Parsern.
Tu dir selbst einen Gefallen und schnapp dir ein Buch über C für Anfänger, und eins über Registermaschinen. Ich habe echt keinen Nerv, dir zu erklären, wofür Header gedacht sind, wie man Arrays initialisiert, warum Aliase für magic numbers eine gute Idee sind und dergleichen mehr. -- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe Dijkstra |