[linux-l] kernels, lilo und ide

Thomas Knop tknop at maxrelax.de
Mo Jan 26 07:58:50 CET 2004


* Volker Mueller <volker at flinux.in-berlin.de> [25.01.04 21:30]:
> flinux:~# lilo
> Warning: Int 0x13 function 8 and function 0x48 return different
> head/sector geometries for BIOS drive 0x81
> Added Linux *
> Added LinuxOLD
> 
> Das finde ich unschoen und ich wuerd's gerne weg haben bzw. die
> eindeutige, begruendete Aussage haben, dass das nicht schlimm ist.
Mal ein Versuch:

int 0x13, AH=08 ist die ursprüngliche Funktion, die schon in jedem 8086 
basiertem System vorhanden war. Rückgabe u.a.

CH = low eight bits of maximum cylinder number
CL = maximum sector number (bits 5-0)
     high two bits of maximum cylinder number (bits 7-6)
DH = maximum head number

Schöner, guter 8-Bit Code, was sagt da wohl ECX zu ;-)

6 Bits => max. 63 Sectoren / Cylinder. Zu damaligen Zeiten mußte man noch
das BIOS neu brennen, wenn man eine neue "unbekannte" Platte eingebaut hat
(Novell 3 hat das u.a. verlangt). Die Werte wurden nicht von der Platte
gelesen sonder sind aus einer fest verdrahteten Tabelle. Häufig gabs da 
auch einen Eintrag "User" bei dem man die Werten, die man von der Platte
abgelesen (damals stand das noch auf den Platten) und eingetragen
konnte. Ging aber nur mit DOS'e; Novell hat den Eintrag ignoriert.

int 0x13, AH=48 ist eine Erweiterung, die später hinzugekommen ist. Rückgabe 
ist gefüllter Puffer bei DS:SI (boh, 16 Bit Code)
mit u.a.
04h    DWORD   number of physical cylinders on drive
08h    DWORD   number of physical heads on drive
0Ch    DWORD   number of physical sectors per track
10h    QWORD   total number of sectors on drive
18h    WORD    bytes per sector

Diese werden heute von der Platte gelesen, wobei die meisten Platten
lügen und Sectoren und Heads so umrechnen, dass Sectors = 63 ist. Das
ganze lobt die PC-Industrie LBA.

So, wenn deine Platte also mehr als 63 Sectoren / Cylinder hat - weil sie
vermutlich nicht über 256 Köpfe (= 128 Scheiben) verfügt - dann ist das nicht
schlimm, sondern nett von deiner Platte, das sie nicht lügt ;-)

Gruß Thomas



Mehr Informationen über die Mailingliste linux-l