Autor Thema: Os auf Diskette  (Gelesen 7767 mal)

Phier

  • Beiträge: 26
    • Profil anzeigen
Gespeichert
« am: 15. March 2004, 14:35 »
Hi,

ich hab laut: http://www.tutorials.de/showthread.php?threadid=20706&highlight=Assembler

ein kernel gemacht und nen bootloader, ob ichs verstanden hab is ne andere frage da ich in assembler  nen newbie bin. aufjedenfall funkioniert alles schon soweit dass er kernel lädt. habt ihr jetzt evtl nen tipp damit wenn ich dir sage er mir den inhalt von der festplatte zeigt ( da is schon ein win95 drauf ) und ich evtl die directorys switchen kann ?

thxle
phier

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #1 am: 15. March 2004, 16:21 »
Mein Tipp:

Schreib dir einen Treiber für das FAT Dateisystem :)

So ohne weiteres geht das leider nicht. Du musst dir Funktionen schreiben mit denen du auf die Festplatte zugreifen kannst, einzelne Sektoren lesen kannst und dann musst du die Strukturen des Dateisystems verstehen und enutzen können.
----------------------
Redakteur bei LowLevel

Phier

  • Beiträge: 26
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 15. March 2004, 16:57 »
hab leider keine großen ahnung von assembler hab erst gestern mit angefangen, bei dem link da, das versteh ich nur im groben die einzelnen befehle weiss ich net genau was das ist. könnte also net selber machen, vondaher hab ich auch keine ahnung wie ein treiber zu programmieren geht in assembler wenn sich aber einer mit mir bereit erklärt den kernel zu coden mit ner shell und den treiber ... und den nerv behält mir das schritt für schritt am anfang bis ich drin bin zu erklären. fände ich das klasse ...

mfg
phier

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #3 am: 15. March 2004, 17:34 »
Also Assembler solltest du dir selbst beibringen. Dazu gibts genug Tutorrials und eBooks im Netz.

Für alles was danach kommt, kannst du dir die LowLevel Magazine anschauen.
----------------------
Redakteur bei LowLevel

kleiner

  • Beiträge: 131
    • Profil anzeigen
Gespeichert
« Antwort #4 am: 15. March 2004, 17:40 »
ob ich jetzt gleich mit einer Shell und einem FAT16 oder FAT32 Treiber anfangen würde. Naja, wohl eher nicht. Das is alles schon ein Schritt weiter und wenn Du den Quellcode von OS und Bootloader noch nicht verstanden hast, dann solltest Du erst recht erst einmal ASM lernen und dann die Quellen verstehen. Wenn Du natürlich schon C programmierst könntest Du es auch darüber versuchen.
ASM-Tutorial: http://www.robsite.de

Phier

  • Beiträge: 26
    • Profil anzeigen
Gespeichert
« Antwort #5 am: 15. March 2004, 17:52 »
danke ich werds beherzigen ...

;-) dachte da aber eher an learning-by-doing

Phier

  • Beiträge: 26
    • Profil anzeigen
Gespeichert
« Antwort #6 am: 15. March 2004, 18:47 »
den kernel den ihr da habt in der ersten ausgabee von lowlevel wie kann ich mit dem rumspielen und so ne art shell machen like einfach tastatur schreiben usw ...
und wenn bestimmter text kommt, soll er was bestimmtes ausgeben ..

mfg
phier

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #7 am: 15. March 2004, 20:08 »
Im Resource Center ist ein Codebeispiel für ne Shell.
Den kannst du dir ja mal anschauen.
----------------------
Redakteur bei LowLevel

Phier

  • Beiträge: 26
    • Profil anzeigen
Gespeichert
« Antwort #8 am: 16. March 2004, 12:53 »
jo hab ich, blos das problem die ist ja größer als 512 byte oder ? und beim bootloader werden ja nur 512 byte geladen ... also kann ich die garnicht voll verwenden ...

mfg
phier

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #9 am: 16. March 2004, 14:06 »
Ne ne. Der Bootloader SELBST hat meistens nur 512 Bytes.

Der Kernel der durch den Bootloader geladen wird kann wesentlich größer sein.
Theoretisch könnte er so groß sein, wie Speicher auf der Diskette frei ist :)

Von daher hast du da kein Problem.
----------------------
Redakteur bei LowLevel

kleiner

  • Beiträge: 131
    • Profil anzeigen
Gespeichert
« Antwort #10 am: 16. March 2004, 17:06 »
Oder glaubst Du echt Systeme wie Windows oder Linux wären nur 512 Bytes groß?

Phier

  • Beiträge: 26
    • Profil anzeigen
Gespeichert
« Antwort #11 am: 27. March 2004, 17:26 »
ne aber ich hab gedacht dass systeme so aufgebaut sind dass er immer die nächsten bytes einlädt weil nur 512 bytes immer geladen werden können...
da unterlag ich wohl einem irrtum ;-)

aber hier nen kleiner vorschlag, wollt ihr das nicht so machen, dass ihr jede zeile von dem os ( bootloader, kernel ) mal schön dokumentiert, wieso da jetzt mov steht und wieso ax oder so ? wäre für mich als anfänger dann leichter sich reinzuarbeiten find ich.


Phier

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #12 am: 27. March 2004, 17:43 »
Also dokumentieren ist ok.

Aber jede einzelne Assemblerzeile wäre etwas zu viel.

Wir müssen irgendwo auch erwarten können, das sich jeder der dieses Tuts liest auch "selbst" ein wenig mit Assembler auseinandersetzt.
----------------------
Redakteur bei LowLevel

Phier

  • Beiträge: 26
    • Profil anzeigen
Gespeichert
« Antwort #13 am: 27. March 2004, 17:47 »
da geb ich dir auch recht, aber oft ist es für mich jetzt z.b. nicht nachvollziehbar wieso man gerade jetzt so mov geschrieben hat usw, mir ist klar dass es hier um hinundherschieben handelt, aber warum und welchen zweck das verfolgt nicht.

codekrank

  • Beiträge: 10
    • Profil anzeigen
Gespeichert
« Antwort #14 am: 09. April 2004, 11:12 »
Also ich habe erst vor ein paar Tagen mit Assembler lernen angefangen, verstehe aber schon das meiste.
Ein einfaches Taschenbuch für 8086 assembler Programmierung sollte da schon eine Menge weiter helfen.

Another Stupid Coder

  • Beiträge: 749
    • Profil anzeigen
Gespeichert
« Antwort #15 am: 13. April 2004, 10:31 »
Ja nur das Problem da bei ist das die meisten Tutorials doch tatsächlich so einen [...] wie TASM oder MASM beschreiben... Wie ist eigentlich der GNU Assembler? kennt den einer?
Außerdem kann ich auch nur sehr wenig Asm aber ich finde TeeJay's Tuts sind sehr gut dokumentiert.

 

Einloggen