IDE: 48bit-Adressierung unter DOS

Auswahl, Einrichtung und Betrieb von Rechnern und Komponenten
Antworten
Benutzeravatar
Lode
MemMaker-Benutzer
Beiträge: 91
Registriert: Mi 5. Sep 2007, 19:24

IDE: 48bit-Adressierung unter DOS

Beitrag von Lode »

Hallihallo DOS-Verrückte :-D

So wie ich mich informiert habe besitzen ältere Mainboards 28bit-LBA und unterstützen so nicht mehr als 128gb pro Festplatte. Erst mit 48bit-LBA wird diese Grenze gesprengt und kommt heute ja oft genug zum Einsatz. Allerdings macht dies ja bekanntlich Probleme, wenn man ältere Betriebssysteme im Einsatz hat. Angeblich sollen diese anstatt die hinteren Bereiche der HD zu beschreiben, wieder von vorne anfangen und es besteht das Risiko, die Partitionstabelle zu überschreiben. Für 98se gibt es inoffizielle Treiber dies zu beheben.

Aber wie sieht es unter dem blanken DOS aus? Kann ich PQMagic 8 gefahrenlos nutzen oder würde es Probleme geben? Selbes gilt für xfdisk oder ähnliche Programme.

Ein bisschen etwas darüber befindet sich schon in diesem Thread:
http://www.dosforum.de/viewtopic.php?t= ... hlight=lba

So richtig verstehen tu ich das aber nicht.

Ich weiß nicht wie eng DOS mit dem BIOS zusammenarbeitet und wirkt oder ob zusätzlich eine Programmierschnittstelle vorhanden sein muss.
socialismo o muerte
elianda
DOS-Übermensch
Beiträge: 1150
Registriert: Mi 31. Jan 2007, 19:04
Wohnort: Halle
Kontaktdaten:

Beitrag von elianda »

Schau mal Ralf Browns Interrupt Liste, Interrupt 13h, Funktion 40h und folgende. Da kann man schauen wie gross die Zahlen bei den erweiterten Int13 Funktionen sein duerfen (also LBA).

Wenn das nicht geht muss man direkt ran. Das wird aber nicht so schwer sein, da die IDE Controller auf Multi-IO Karten eine Standardschnittstelle haben. Man muss dafuer unter DOS ja keinen extra Treiber etc.pp. laden.

Wie man einer Platte LBA48 sagt, ist auch recht einfach, am besten mal mit ATA Standard nachschauen, da reicht ATA Version 4.0. Im Prinzip schreibt man einmal LBA28 rein und setzt ein zusaetzliches Bit, das sagt dass man gerade eine LBA48 Adressierung durchfuehrt.
Danach schreibt man nochmal in die gleichen Register weitere 20 Bit und fuehrt z.B. Read Sector aus...
Diverse Retro-Computer vorhanden.
Benutzeravatar
Lode
MemMaker-Benutzer
Beiträge: 91
Registriert: Mi 5. Sep 2007, 19:24

Beitrag von Lode »

Mir ist es ein bisschen peinlich zu sagen, aber ich kann nichts mit deinem Post anfangen :oops:

Die Interruptliste hab ich ergooglet, aber bei den besagten Interrupts seh ich nur Kauderwelsch. Ich kann damit einfach nichts anfangen. Meine Programmierkenntnisse belaufen sich leider gegen 0, da ich damals nicht die Möglichkeit hatte mich mal reinzufitzen. Ich befinde mich hier eigentlich im Forum um zu lernen. Kenntnisse bringe ich nur wenig mit :(

Wenn DOS direkt auf die Hardware zugreift ist also kein API nötig. Nur macht es das? Treiber werden ja nicht extra geladen. Was wird denn dann überhaupt geladen um überhaupt grafisch Output zu haben? Liegt das an der VGA-Normung,d ass ein problemloser Zugriff gewährleistet wird?
socialismo o muerte
Benutzeravatar
ChrisR3tro
Administrator
Beiträge: 1986
Registriert: Mo 7. Mär 2005, 23:33
Wohnort: NRW
Kontaktdaten:

Beitrag von ChrisR3tro »

Ich glaub, es müßte erstmal grundsätzlich geklärt werden, ob DOS eigene Routinen verwendet, um auf die Platte zuzugreifen oder ob BIOS-Funktionen verwendet werden. Und wie sieht es bei DOS-Software aus? Die verwenden entweder auch BIOS-Funktionen oder von DOS bereitgestellte Software-Interrupts.

Bei letzterem kommt man um ein BIOS-Update wahrscheinlich nicht herum (zumindest wenn man DOS einsetzt), oder?

Gruß,
Christoph
Antworten