C-Kernel mit GRUB — Änderungen 4199 → 4200

Zeile 1: Zeile 1:
−
== Vorwort ==
+
In diesem Tutorial werde ich beschreiben wie man einen in [[C]] programmierten [[Kernel]] mithilfe von [[Grub]] bootet.
−
In diesem Tutorial werde ich beschreiben wie man einen in C programmierten Kernel mithilfe von Grub bootet.
+
== Hinweis für Windowsianer ==
  
−
Ich werde hier beschreiben, wie ich es unter Linux mache. Unter Windows geht es auch, aber du musst sicherstellen, dass du ELF als Binärformat benutzt - das heißt, du solltest dir erst den Artikel [[Crosscompiler für Windows]] durchlesen und eine entsprechende Entwicklungsumgebung aufsetzen.
+
Ich werde hier beschreiben, wie ich es unter [[Linux]] mache. Unter [[Windows]] geht es auch, aber du musst sicherstellen, dass du ELF als Binärformat benutzt - das heißt, du solltest dir erst den Artikel [[Crosscompiler für Windows]] durchlesen und eine entsprechende Entwicklungsumgebung aufsetzen.
  
 
== Kernel ==
 
== Kernel ==
−
Der eigentliche Kernel soll ja in C programmiert sein. Ein Teil des Kernels muss aber immernoch in Assembler sein.
+
Der eigentliche Kernel soll ja in [[C]] programmiert sein. Ein Teil des [[Kernel]]s muss aber immernoch in [[Assembler]] sein.
  
 
=== Kernel - C ===
 
=== Kernel - C ===
−
Als erstes kannst du dir einen kleinen Test-Kernel ausdenken, oder einfach den hier benutzen:
+
Als erstes kannst du dir einen kleinen Test-[[Kernel]] ausdenken, oder einfach den hier benutzen:
 
<c>
 
<c>
 
int main() {
 
int main() {
Zeile 67: Zeile 67:
  
 
== Zusammenbauen ==
 
== Zusammenbauen ==
−
Nun müssen wir den Kernel "zusammenbauen". Dafür müssen wir den Assembler-Code assemblieren, den C-Code kompilieren und am Ende beides linken.
+
Nun müssen wir den [[Kernel]] "zusammenbauen". Dafür müssen wir den [[Assembler]]-Code assemblieren, den [[C]]-Code kompilieren und am Ende beides linken.
  
 
=== Assemblieren ===
 
=== Assemblieren ===
Zeile 121: Zeile 121:
  
 
== Grub-Image erstellen ==
 
== Grub-Image erstellen ==
−
Wir müssen jetzt natürlich noch ein Disketten-Image erstellen und dann Grub und unseren Kernel draufladen.
+
Wir müssen jetzt natürlich noch ein Disketten-Image erstellen und dann [[Grub]] und unseren [[Kernel]] draufladen.
  
 
=== Floppy-Image erstellen ===
 
=== Floppy-Image erstellen ===
−
Wir erstellen uns erstmal ein Floppy-Image und formatieren es mit ext2. Es können auch andere Dateisysteme benutzt werden, z.B FAT, man muss nur drauf achten, dass Grub dieses Dateisystem unterstützt.
+
Wir erstellen uns erstmal ein Floppy-Image und formatieren es mit [[ext2]]. Es können auch andere [[Dateisysteme]] benutzt werden, z.B [[FAT]], man muss nur drauf achten, dass [[Grub]] dieses [[Dateisystem]] unterstützt.
  
 
Mit ''dd'' erzeugen wir ein 1,44MB großes Floppy-Image:
 
Mit ''dd'' erzeugen wir ein 1,44MB großes Floppy-Image:
Zeile 138: Zeile 138:
 
  $ cp kernel.bin floppy/
 
  $ cp kernel.bin floppy/
  
−
Grub muss auch noch drauf. Hierzu legen wir einen Ordner namens ''grub'' auf der Diskette an und kopieren ''stage1'' und ''stage2'' aus ''/boot/grub'' auf die Diskette.
+
[[Grub]] muss auch noch drauf. Hierzu legen wir einen Ordner namens ''grub'' auf der Diskette an und kopieren ''stage1'' und ''stage2'' aus ''/boot/grub'' auf die Diskette.
 
  $ mkdir floppy/grub
 
  $ mkdir floppy/grub
 
  $ cp /boot/grub/stage1 floppy/grub
 
  $ cp /boot/grub/stage1 floppy/grub
Zeile 181: Zeile 181:
 
* [[Grub auf CD]]
 
* [[Grub auf CD]]
  
−
[[Category:Tutorials]]
+
[[Kategorie:Tutorials]]