Re: Neuen SCSI Controller

From: J Wunsch <j(at)uriah.heep.sax.de>
Date: Wed, 23 Sep 1998 22:19:41 +0200

As Stefan Huerter wrote:

> Schreibe einen lieben Dankesbrief an Adaptec und ihrem Firmenstandard.
> Die Platten werden hervorragend an dem neuem Controller funktionieren,
> nachdem Du diese an den neuen gehängt hast und durch diesen formatiert
> wurden. Das mapping unterscheidet sich, bzgl. des Ansprechens der
> Platten(geometrie).

Naja, so schlimm ist Adaptec auch nicht. Das Mapping ist kompatibel
zum ``Big DOS'' Standard der AHA154*B/C. Ich weiß, daß NCR-BIOSse ein
``guesswork mapping'' machen, aber sonderlich warm wird mir bei dem
Gedanken auch nicht, daß das BIOS irgendwie aus dem Kaffeesatz meines
ersten Sektors eine fiktive Plattengeometrie erkennen will. ;-)

Auch wenn das hier schon gebetsmühlenartig klingt: für ``dangerously
dedicated disks'' unter FreeBSD ist das Mapping im BIOS ohnehin kein
Thema. Für alle solchen Platten, die eine richtige Partitiontabelle
haben, ist es übrigens nur deshalb ein Thema, weil die fdisk table für
Beginn und Größe/Ende einer Partition zwei redundante Angaben enthält,
die sich bei unterschiedlichen Translations dann gegenseitig
widersprechen. Zum einen stehen die Angaben als C/H/S-Werte für
Beginn und Ende in 16-bit-Zahlen codiert, die ``ready to run'' für die
int 0x13 BIOS-Funktionen sind, zum anderen stehen sie als Anfang und
Größe in 32-bit-Zahlen mit absoluten Sektornummern.

Der Bootstrap im MBR nimmt üblicherweise die ersten Werte, die
Betriebssysteme (zumindest Unixe) nehmen dagegen die zweiten Werte.
Stimmt die Translation nicht mehr überein, so liest der MBR
irgendeinen Sektor als vermeintlichen Bootstrap der eigentliche
Partition ein, der dann natürlich kein Bootsektor wirklich ist -->
``Missing operating system''.

Man kann -- wenn man genau weiß, was man tut -- dieses Problem aber
auch nachträglich beheben. FreeBSD's fdisk tut das sogar fast von
allein, wenn man ihm in der Geometrie-Abteilung am Anfang die
Translation vorgibt, die das aktuelle BIOS benutzt. Von einer
Bootdiskette booten geht ja allemal (um fdisk aufzurufen), da ja das
System selbst aus der fdisk table die 32-bit-Blocknummern nimmt, die
unabhängig von der Translation sind.

Einige neue BIOSse weigern sich, mit aus ihrer Sicht seltsamen Werten
in der fdisk table zu arbeiten (dieweil die dann nicht mehr auf einer
fiktiven Zylindergrenze beginnen, wenn man obigen Fix angebracht hat);
diese verkraften dann auch keinen ,,dangerously dedicated mode''. Am
besten in die Tonne damit... Dummerweise sind davon auch solche Teile
wie HP's Netserver betroffen. :-(

-- 
cheers, J"org
joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)
Received on Wed 23 Sep 1998 - 22:20:57 CEST

search this site