Lowlevel
Lowlevel => OS-Design => Thema gestartet von: Below Zero am 19. November 2004, 20:14
-
... der ersten Spur ?
Hab mich mal an den PC gesezt und mal ein paar Sachen getestet für meine Matura Arbeit.
Also ich habe nun einen Bootsektor , jetzt möchte ich den Kernel vom zweiten Sektor auf der ersten Spur lesen und ausführen lassen.
Nur wie bekomm ich den Kernel auf den zweiten Sektor ? Kann ich vielleicht den Bootsektor 512Byte groß machen und dann, sobald ich von beiden eine *.bin Datei habe mittels DOS Copy auf die boot.bin mit der kernel.bin zusammenfügen und dann auf eine Diskette schreiben so, dass dann der
Kernel direkt im 2. Sektor steht ?
-
Sollte klappen, der Bootloader muss ja immer 512b groß sein...warum testest du es nicht einfach?^^
-
Da würde ich aufpassen.
Das Doscopy ist leider nicht so doll, das es die Dateien einfach direkt hintereinanderkopiert. Bei mir hat er zwischen den Dateien oftmals Nullbytes eingefügt.
Daher hatte ich mir ein kleines Programm geschrieben das 2 Dateien Bytegenau vereint.
Bei Bedarf schreib mir eine PM oder ICQ.
-
Das programm gabs glaube ich auch beim C-Kernel Tutorial oder beim PMode-Tut...jedenfalls hat es bei mir unter Linux immer geklappt, halt mit cp nicht mit dem doscopy
-
also mit dem echten copy unter win hatte ich bis jezt noch keine probleme, außer, dass er manchmal bei ein paar bytes aufgehört hat, aber das kann man ja mithilfe des parameters /b ausschalten...
-
Ich hatte mit copy unter Windows 5.1 Probleme: Die Zieldatei war kleiner als die Summe der Einzeldateien, und das ganze hat nie gefunzt, hat mich echt aufgeregt.
-
jo, das lag warscheinlich daran, dass unter windows durch einen bestimmten byte-code das dateiende angezeigt wird, und wenn das dann in deinem code vorkommt, hört das dings auf! deswegen musste mit "\b" das copy machen...
-
Jo geht.
Habe es noch nicht ausprobieren können, weil ich den Kernel in der Schule hatte. Habs jetzt erstmal mit Linux gemacht. Mit Windows kann ich die Datei kernel.bin nicht kopieren da sie nicht formatiert sei, aber egal , funktioniert.
-
Was ist den Windows 5.1, oder meinst du 3.1 ?
-
5.1 = eXPerience ;)