| Zeile 1: | Zeile 1: | ||
== Einleitung == | == Einleitung == | ||
| − | Hi, | + | Hi, |
| + | |||
wie ihr sicher auch schon gemerkt habt, ist das Weiterführen vom Magazin nicht immer unproblematisch. Deshalb haben N00B und ich vor, einige Änderungen durchzuführen. Im Wesentlichen betrifft das das Kategoriesystem. Es wird keine 10 Kategorien mehr geben, die in allen Ausgaben vorhanden sind. Stattdessen hat jede Ausgabe einen Thmenschwepunkt. Das könnten z.B. Protected Mode Features sein, mit Tutorials über Paging, Hardware MT, usw. Natürlich gibt es trotzdem noch einige Standard Kategorien, nämlich die News, das OS-Showcase, usw. | wie ihr sicher auch schon gemerkt habt, ist das Weiterführen vom Magazin nicht immer unproblematisch. Deshalb haben N00B und ich vor, einige Änderungen durchzuführen. Im Wesentlichen betrifft das das Kategoriesystem. Es wird keine 10 Kategorien mehr geben, die in allen Ausgaben vorhanden sind. Stattdessen hat jede Ausgabe einen Thmenschwepunkt. Das könnten z.B. Protected Mode Features sein, mit Tutorials über Paging, Hardware MT, usw. Natürlich gibt es trotzdem noch einige Standard Kategorien, nämlich die News, das OS-Showcase, usw. | ||
In dieser Ausgabe wird der Schwerpunkt bei Speichergeräten liegen, wir haben dazu eine IDE-Übersicht, ein ext2-Tutorial, und noch einiges mehr. | In dieser Ausgabe wird der Schwerpunkt bei Speichergeräten liegen, wir haben dazu eine IDE-Übersicht, ein ext2-Tutorial, und noch einiges mehr. | ||
| − | + | ||
Dies wird außerdem die erste Ausgabe sein, die nicht nur als PDF File sondern auch im Wiki erscheint. Das hat natürlich den Vorteil, dass Fehler schnell verbessert werden können. | Dies wird außerdem die erste Ausgabe sein, die nicht nur als PDF File sondern auch im Wiki erscheint. Das hat natürlich den Vorteil, dass Fehler schnell verbessert werden können. | ||
| − | + | ||
Wir wünschen euch viel Spaß mit der neuen Ausgabe! | Wir wünschen euch viel Spaß mit der neuen Ausgabe! | ||
== News == | == News == | ||
Viel neues ist passiert seit der letzten Ausgabe - auch nicht weiter verwunderlich, wenn man bedenkt wieviel Zeit ins Land gegangen ist ;) . Vor wenigen Wochen, am 22.7 ist QEMU 0.8.2 herausgekommen. Als einer der wenigen Emulatoren verfügt er über ein Kernelmodul um die Ausführung der ganzen VM erheblich zu beschleunigen - mir fällt sonst nur VMWare ein, dass diese Möglichkeit nutzt. Neu in der aktuellen Version sind u.a. ACPI Support und einige Verbesserungen der USB-Fähigkeiten. | Viel neues ist passiert seit der letzten Ausgabe - auch nicht weiter verwunderlich, wenn man bedenkt wieviel Zeit ins Land gegangen ist ;) . Vor wenigen Wochen, am 22.7 ist QEMU 0.8.2 herausgekommen. Als einer der wenigen Emulatoren verfügt er über ein Kernelmodul um die Ausführung der ganzen VM erheblich zu beschleunigen - mir fällt sonst nur VMWare ein, dass diese Möglichkeit nutzt. Neu in der aktuellen Version sind u.a. ACPI Support und einige Verbesserungen der USB-Fähigkeiten. | ||
| − | + | ||
Auch beim längst totgeglaubten Community-OS LOST gibt es Fortschritte. Seitdem taljeth die Projektleitung übernommen hat, sind einige Fortschritte zu beobachten. Mittlerweile funktioniert sogar eine erste Form des Multitasking, welche Jidder/PorkChicken zusammen mit dem Phys. Speichermanagment entwickelt hat. Es fehlt also nicht mehr viel bis die ersten Treiberprogramme (Für die die es nicht wissen, LOST ist ein Microkernel) geschrieben werden können. | Auch beim längst totgeglaubten Community-OS LOST gibt es Fortschritte. Seitdem taljeth die Projektleitung übernommen hat, sind einige Fortschritte zu beobachten. Mittlerweile funktioniert sogar eine erste Form des Multitasking, welche Jidder/PorkChicken zusammen mit dem Phys. Speichermanagment entwickelt hat. Es fehlt also nicht mehr viel bis die ersten Treiberprogramme (Für die die es nicht wissen, LOST ist ein Microkernel) geschrieben werden können. | ||
| Zeile 38: | Zeile 39: | ||
Problem los. Wie schreibt man nun ein Betriebssystem auf eine CD-ROM. | Problem los. Wie schreibt man nun ein Betriebssystem auf eine CD-ROM. | ||
Ich werde das nun versuchen Schritt für Schritt zu erklären: | Ich werde das nun versuchen Schritt für Schritt zu erklären: | ||
| − | + | ||
| − | # Man compiliert sein Betriebssystem ganz normal, und erstellt eine .IMG | + | # Man compiliert sein Betriebssystem ganz normal, und erstellt eine .IMG Datei - wie es auch für Disketten-Betriebssysteme gemacht wird. |
| − | Datei - wie es auch für Disketten-Betriebssysteme gemacht wird. | + | # Man öffnet 'Ahead Nero Burning ROM' (btw: ich finde den Namen sehr gelungen :D). |
| − | # Man öffnet 'Ahead Nero Burning ROM' (btw: ich finde den Namen sehr | ||
| − | gelungen :D). | ||
# Neue Zusammenstellung -> 'CD-ROM (Boot)' | # Neue Zusammenstellung -> 'CD-ROM (Boot)' | ||
| − | # Das Options-Feld 'Image-Datei' anklicken und den Pfad zum Image des | + | # Das Options-Feld 'Image-Datei' anklicken und den Pfad zum Image des Betriebssystems eingeben. 'Neu' klicken. |
| − | Betriebssystems eingeben. 'Neu' klicken. | + | # Dann, schlussendlich, das Dialogfeld 'CD Brennen' klicken und die CD-ROM brennen. |
| − | # Dann, schlussendlich, das Dialogfeld 'CD Brennen' klicken und die | + | |
| − | CD-ROM brennen. | ||
| − | |||
Wenn wir nun den Computer neu starten, und im BIOS die Option "von CD-ROM | Wenn wir nun den Computer neu starten, und im BIOS die Option "von CD-ROM | ||
Booten" auswählen, startet unser Betriebssystem als wäre es eine Diskette. | Booten" auswählen, startet unser Betriebssystem als wäre es eine Diskette. | ||
| Zeile 57: | Zeile 54: | ||
"ISO El-Torito". Das ist der gängige Standard für bootfähige CD-ROMs, die | "ISO El-Torito". Das ist der gängige Standard für bootfähige CD-ROMs, die | ||
fast alle BIOS-Systeme erkennen. | fast alle BIOS-Systeme erkennen. | ||
| − | + | ||
Zuerst ist wichtig: Ein Sektor auf einem ISO-Datenträger ist 0x800 Byte groß | Zuerst ist wichtig: Ein Sektor auf einem ISO-Datenträger ist 0x800 Byte groß | ||
| − | (im Gegensatz zu Sektoren auf FAT Systemen, die | + | (im Gegensatz zu Sektoren auf FAT Systemen, die grundsätzlich 0x200 Byte groß |
sind). | sind). | ||
| − | + | ||
Bei El-Torito CD-ROM wird im Grunde nichts anderes gemacht als eine Diskette | Bei El-Torito CD-ROM wird im Grunde nichts anderes gemacht als eine Diskette | ||
emuliert, die das bootfähige Image beinhaltet. | emuliert, die das bootfähige Image beinhaltet. | ||
Das ISO-El-Torito Format ist grundsätzlich so aufgebaut: | Das ISO-El-Torito Format ist grundsätzlich so aufgebaut: | ||
| − | + | ||
+-------------------------+ | +-------------------------+ | ||
Sector 0: | SYSTEM | | Sector 0: | SYSTEM | | ||
| Zeile 89: | Zeile 86: | ||
| CD-ROM Image | | | CD-ROM Image | | ||
+-------------------------+ | +-------------------------+ | ||
| − | + | ||
Das bedeutet im Sektor 17 (an der Adresse 17 * 0x800) ist das Boot-Record Volume. | Das bedeutet im Sektor 17 (an der Adresse 17 * 0x800) ist das Boot-Record Volume. | ||
Dieses hat einen Zeiger auf den Boot-Catalog, und sieht folgendermaßen aus: | Dieses hat einen Zeiger auf den Boot-Catalog, und sieht folgendermaßen aus: | ||
| − | + | ||
{| border="1" | {| border="1" | ||
| Zeile 113: | Zeile 110: | ||
| 4A-7FF || Byte || Unused, must be 0. | | 4A-7FF || Byte || Unused, must be 0. | ||
|} | |} | ||
| − | + | ||
Wie wir hier deutlich erkennen können, ist an der Adresse 0x47-0x4A im | Wie wir hier deutlich erkennen können, ist an der Adresse 0x47-0x4A im | ||
17. CD-ROM Sektor der Pointer zum Boot-Catalog. Wir folgen nun diesem | 17. CD-ROM Sektor der Pointer zum Boot-Catalog. Wir folgen nun diesem | ||
Pointer und sehen uns den Boot Catalog an: | Pointer und sehen uns den Boot Catalog an: | ||
| − | + | ||
{| border="1" | {| border="1" | ||
| Offset | | Offset | ||
| Zeile 137: | Zeile 134: | ||
| 1F || Byte || Key Byte, must be AA. | | 1F || Byte || Key Byte, must be AA. | ||
|} | |} | ||
| − | + | ||
Hier sehen wir zuerst einige Standard-Strings und Zeichen ("0x55, 0xAA" | Hier sehen wir zuerst einige Standard-Strings und Zeichen ("0x55, 0xAA" | ||
sollten wir schon kennen). 0x20 Byte weiter (also 32 Bytes weiter) im selben | sollten wir schon kennen). 0x20 Byte weiter (also 32 Bytes weiter) im selben | ||
Sektor befindet sich dann der "Initial/Default Entry", der auch den Pointer | Sektor befindet sich dann der "Initial/Default Entry", der auch den Pointer | ||
zu unserem Boot-Image beinhaltet: | zu unserem Boot-Image beinhaltet: | ||
| − | + | ||
{| border="1" | {| border="1" | ||
| Offset | | Offset | ||
| Zeile 164: | Zeile 161: | ||
| 0C-1F || Byte || Unused, must be 0. | | 0C-1F || Byte || Unused, must be 0. | ||
|} | |} | ||
| − | + | ||
An der Adresse 0x08-0x0B befindet sich schließlich der Pointer zum Image | An der Adresse 0x08-0x0B befindet sich schließlich der Pointer zum Image | ||
unseres Betriebssystems. Hier befindet sich also das Image - und wir | unseres Betriebssystems. Hier befindet sich also das Image - und wir | ||
wissen nun auch ein bisschen, wie unser Betriebssystem auf einer CD-ROM | wissen nun auch ein bisschen, wie unser Betriebssystem auf einer CD-ROM | ||
gespeichert ist. | gespeichert ist. | ||
| − | + | ||
Wer mehr wissen möchte, sollte folgende Dokumente lesen: | Wer mehr wissen möchte, sollte folgende Dokumente lesen: | ||
* FAT: Gerneral Overview of On-Disk Formation by Microsoft Corporation | * FAT: Gerneral Overview of On-Disk Formation by Microsoft Corporation | ||
| Zeile 179: | Zeile 176: | ||
im Artikel finden. Falls nicht, mir egal - ich bin endlich müde und kann vielleicht | im Artikel finden. Falls nicht, mir egal - ich bin endlich müde und kann vielleicht | ||
weiterschlafen ;). | weiterschlafen ;). | ||
| + | |||
Also, schön weiterprogrammieren, lernen, Ideen entwickeln und so weiter. | Also, schön weiterprogrammieren, lernen, Ideen entwickeln und so weiter. | ||
Und: Von nichts und niemandem vom Kurs abbringen lassen ;) | Und: Von nichts und niemandem vom Kurs abbringen lassen ;) | ||
| Zeile 319: | Zeile 317: | ||
* ppc | * ppc | ||
* ARM | * ARM | ||
| − | FreeBSD besitzt heute schon Funktionen im Bereich Netzwerk, Leistungsfähigkeit, Sicherheit und Kompatibilität, die andere Systeme, auch kommerzielle, nicht besitzen. So kann man zum Beispiel durch Kompatibilitäts-Module Programme von anderen Systemen, wie zum Beispiel Linux, SCO UNIX und System V Release 4, auf FreeBSD laufen lassen. Aber auch für die Sicherheit im Netzwerk ist gesorgt, da IPsec und IPv6 unterstützt werden. | + | FreeBSD besitzt heute schon Funktionen im Bereich Netzwerk, Leistungsfähigkeit, Sicherheit und Kompatibilität, die andere Systeme, auch kommerzielle, nicht besitzen. So kann man zum Beispiel durch Kompatibilitäts-Module Programme von anderen Systemen, wie zum Beispiel Linux, SCO UNIX und System V Release 4, auf FreeBSD laufen lassen. Aber auch für die Sicherheit im Netzwerk ist gesorgt, da IPsec und IPv6 unterstützt werden. |
| + | |||
Da unter FreeBSD viele Anwendungen laufen, ist es eine gute Alternative zu kommerziellen UNIX® Workstations und kann sowohl für Arbeitsplätze wie auch als Server benutzt werden. | Da unter FreeBSD viele Anwendungen laufen, ist es eine gute Alternative zu kommerziellen UNIX® Workstations und kann sowohl für Arbeitsplätze wie auch als Server benutzt werden. | ||