Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «АппаратныС интСрфСйсы ПК. ЭнциклопСдия». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 165

Автор ΠœΠΈΡ…Π°ΠΈΠ» Π“ΡƒΠΊ

ΒΉ Π’олько для фиксированных дисков.

Β² Π’олько для дискСт ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… смСнных носитСлСй.

Β³ ΠΠ°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ отличаСтся ΠΎΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ.


Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ сСрвис позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с дисками, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌΠΈ Π΄ΠΎ 1024Γ—256Γ—63 = 16 515 072 сСкторов (ΠΎΠΊΠΎΠ»ΠΎ 8,4 Π“Π±Π°ΠΉΡ‚). Ряд ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ, Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ объСм, допустимый Π΄Π°Π½Π½Ρ‹ΠΌ сСрвисом. Для дисков объСмом Π±ΠΎΠ»Π΅Π΅ 15 481 935 сСкторов слСдуСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ функциями Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠ³ΠΎ сСрвиса (см. Π½ΠΈΠΆΠ΅). Однако ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с устройствами ATA имССтся Π΅Ρ‰Π΅ ΠΈ Π±Π°Ρ€ΡŒΠ΅Ρ€ Π² 528 ΠœΠ±Π°ΠΉΡ‚. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ТСсткого диска ATA, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ Int 13h, ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 4-Π±ΠΈΡ‚Π½Ρ‹ΠΉ рСгистр Π½ΠΎΠΌΠ΅Ρ€Π° Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ (Π° Π² BIOS β€” 6 Π±ΠΈΡ‚). ΠŸΡ€Π°Π²Π΄Π°, этот ΠΆΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ способСн ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ 16-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ Ρ†ΠΈΠ»ΠΈΠ½Π΄Ρ€Π° (Π² BIOS β€” 10 Π±ΠΈΡ‚). ΠŸΠΎΠ½ΡΡ‚Π½ΠΎ, Ρ‡Ρ‚ΠΎ нСпосрСдствСнно Π±Π΅Π· искаТСний Ρ‡Π΅Ρ€Π΅Π· эти Π΄Π²Π° Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° (Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π²Ρ‹Π·ΠΎΠ²Π° ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ рСгистров ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°) ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹Π·ΠΎΠ² с самыми ТСсткими ограничСниями ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅. Π’ΠΎΠ³Π΄Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ΅ Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠ² ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚, получаСтся ΠΎΠΊΠΎΠ»ΠΎ 528 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² Π±Π°ΠΉΡ‚:

(210 = 1024 Ρ†ΠΈΠ»ΠΈΠ½Π΄Ρ€Π°) Γ— (24 = 16 Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ) Γ— (26 β€“ 1 = 63 сСктора) Γ— 512 Π±Π°ΠΉΡ‚ = 528 482 304 Π±Π°ΠΉΡ‚.

Для прСодолСния 528-ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚Π½ΠΎΠ³ΠΎ Π±Π°Ρ€ΡŒΠ΅Ρ€Π° дисков ATA, Π½Π΅ трогая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ интСрфСйса, Π² BIOS Π²Π²Π΅Π»ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ дискового сСрвиса. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ATA Π² Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠΉ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ позволяСт Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ довольно большой (Π½ΠΎ ΡƒΠΆΠ΅ Π½Π΅ Π·Π°ΠΏΡ€Π΅Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ) объСм диска:

(216 = 65 536 Ρ†ΠΈΠ»ΠΈΠ½Π΄Ρ€ΠΎΠ²) Γ— (24 = 16 Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ) Γ— (28 β€“ 1 = 255 сСктора) Γ— 512 Π±Π°ΠΉΡ‚ = 136,9 Π“Π±Π°ΠΉΡ‚.

Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ хотя Π±Ρ‹ интСрфСйсного ограничСния BIOS (8,4 Π“Π±Π°ΠΉΡ‚), стали ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ‚Ρ€Π°Π½ΡΠ»ΡΡ†ΠΈΡŽ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Int 13h, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄Π΅ΠΌ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ логичСскими, Π² физичСскиС[6] ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°ΠΌ ATA-дисков. Π’ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, которая сообщаСт ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ диска (функция 8), производится обратная трансляция, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π½Π° сторонС Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ интСрфСйса Int 13h ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ логичСскиС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. ЕстСствСнно, логичСский объСм диска Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Ρ‚ΡŒ физичСского: (Π‘ Γ— H Γ— S)Π›ΠžΠ“ ≀ (Π‘ Γ— H Γ— S)Π€Π˜Π—.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΏΡ€Π΅ΠΎΠ΄ΠΎΠ»Π΅Π½ΠΈΠΈ Π±Π°Ρ€ΡŒΠ΅Ρ€ΠΎΠ² ΠΈ способах трансляции (LBA, Large Disk, ECHS) см. Π² [1, 4, 9]

Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ сСрвис BIOS

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‡Π΅Ρ€Π΅Π· BIOS с дисками объСма Π±ΠΎΠ»Π΅Π΅ 8,4 Π“Π±Π°ΠΉΡ‚, ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ ввСсти Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ дискового сСрвиса.

Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ дисковый сСрвис BIOS, Enhanced Disk Drive Services (EDD), ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ³Π°Π΅ΠΌΡ‹ΠΉ Ρ„ΠΈΡ€ΠΌΠΎΠΉ Phoenix Technologies LTD, рСализуСтся ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ BIOS ΠΈ устройств массовой памяти. Он позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с устройствами, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌΠΈ объСм Π΄ΠΎ 264 сСкторов, эффСктивно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ процСссоров IA-32 ΠΈ IA-64. БСрвис ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΌ логичСским адрСсом сСктора (LBA). ВмСсто Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ† ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² дисков Π² Π½Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π½ΠΎΠ²Ρ‹Π΅, Π΄Π°ΡŽΡ‰ΠΈΠ΅ ΠΈΡΡ‡Π΅Ρ€ΠΏΡ‹Π²Π°ΡŽΡ‰ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± устройствах, ΠΈΡ… физичСской ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ интСрфСйсС. Устройства ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ смСнныС носитСли ΠΈ сами Π±Ρ‹Ρ‚ΡŒ ΡΡŠΠ΅ΠΌΠ½Ρ‹ΠΌΠΈ Π² процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΊ шинС USB ΠΈΠ»ΠΈ IEEE 1394), Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ понятиС Β«ΡΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ носитСля» нСсколько размываСтся. Π’Π°ΠΊΠΈΠ΅ устройства Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ увСдомлСния ΠΎ смСнС носитСля ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ смСны носитСля. По ΠΏΡ€ΠΎΠ³Π½ΠΎΠ·Π°ΠΌ Смкости Π΄Π°Π½Π½ΠΎΠ³ΠΎ интСрфСйса Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ Π½Π° 15–20 Π»Π΅Ρ‚.

Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ BIOS Int 13h ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ОБ Windows 95, Windows 98, Windows 2000. ΠŸΡ€Π°Π²Π΄Π°, это использованиС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ лишь Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ ΠΈ процСссом установки (FDISK, FORMAT), ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² рСгулярной Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ собствСнныС 32-разрядныС Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹. Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ BIOS Int 13h Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ DOS (всС вСрсии), Windows 3.1x, Windows NT, Novell NetWare, OS/2 Warp, Linux, Unix.

Π’ настоящСС врСмя ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Ρ‚Ρ€ΠΈ Π½Π°Π±ΠΎΡ€Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ:

♦ Π΄ΠΎΡΡ‚ΡƒΠΏ ΠΊ фиксированным дискам (fixed disk access subset) β€” Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ 41-44h, 47h ΠΈ 48h;

♦ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΈ смСна носитСля (device locking and ejecting subset) β€” Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ 41h, 45h, 46h, 48h ΠΈ 49h;

♦ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Ρ… дисков (enhanced disk drive (EDD) support subset) β€” Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ 41h ΠΈ 48h.

Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ сСрвис, ΠΊΠ°ΠΊ ΠΈ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ, вызываСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ Int 13h с Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΡΠ²Ρ‹ΡˆΠ΅ 3Fh (рСгистр АН); Π½ΠΎΠΌΠ΅Ρ€ устройства (рСгистр DL) допустим Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ 80h-FFh. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π²Ρ‹Π·ΠΎΠ²Π° β€” Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ адрСс Π±Π»ΠΎΠΊΠ°, число сСкторов для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈ адрСс Π±ΡƒΡ„Π΅Ρ€Π° β€” ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· адрСсный ΠΏΠ°ΠΊΠ΅Ρ‚ (device address packet). Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π² сравнСнии с ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ сСрвиса Ρ‡Π΅Ρ€Π΅Π· рСгистры процСссора довольно просторный.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ BIOS ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ, имССтся функция ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π΅Π³ΠΎ наличия (Π½ΠΎΠΌΠ΅Ρ€ 41h). Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·Π±ΠΈΡ€Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ (Π½Π΅ для всСх устройств), Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π°Π΄ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ устройства, ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π΄Π°Π΅Ρ‚ Π½ΠΎΠΌΠ΅Ρ€ вСрсии Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΈ ΠΊΠ°Ρ€Ρ‚Ρƒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Π½Π°Π±ΠΎΡ€ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠ³ΠΎ чтСния, записи, Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ поиска (42h, 43h, 44h ΠΈ 47h) ΠΏΠΎ смыслу Π½Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ ΠΈΡ… Π°Π½Π°Π»ΠΎΠ³ΠΎΠ² ΠΈΠ· Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ сСрвиса. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со смСнными носитСлями Π²Π²Π΅Π΄Π΅Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ отпирания/запирания, извлСчСния ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ„Π°ΠΊΡ‚Π° смСны носитСля (45h, 46h ΠΈ 49h). ΠžΡ‚ ΠΈΠ΄Π΅ΠΎΠ»ΠΎΠ³ΠΈΠΈ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ сСрвиса сильно отличаСтся функция получСния ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² устройства (48h). Она Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π² ΠžΠ—Π£ Π±ΡƒΡ„Π΅Ρ€ с Π½Π°Π±ΠΎΡ€ΠΎΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ описаниСм устройства, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΌ ОБ ΠΈ прилоТСниям Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½ΠΈΠΌ, минуя BIOS. Ѐункция установка Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ (4Eh) позволяСт ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌΠΎΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ (PIO, DMA), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΎΠΉ (поиском).

Для эмуляции дисков Π½Π° Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Ρ… CD-ROM ΠΊ сСрвисам BIOS Int 13h добавляСтся нСсколько Π½ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ:

♦ Π½Π°Ρ‡Π°Ρ‚ΡŒ/Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ ΡΠΌΡƒΠ»ΡΡ†ΠΈΡŽ диска (4Ah/4Bh), Π½Π°Ρ‡Π°Ρ‚ΡŒ ΡΠΌΡƒΠ»ΡΡ†ΠΈΡŽ диска ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ (4Ch);

♦ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ сСкторы Π·Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° (4Dh); Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ 41-48h ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Π»ΡŽΠ±Ρ‹ΠΌ логичСским сСкторам CD-ROM (Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ LBA с Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ сСктора 2048 Π±Π°ΠΉΡ‚), ΠΊΠΎΠ³Π΄Π° для Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° эмуляция.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ сСрвис рассмотрСн Π² [4].

12.8.4. Int 14h β€” ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° БОМ-ΠΏΠΎΡ€Ρ‚ΠΎΠ²

БОМ-ΠΏΠΎΡ€Ρ‚Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ сСрвисом BIOS Int 14h, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ обСспСчиваСт описанныС Π½ΠΈΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

♦ 00h β€” инициализация (установка скорости ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° посылок, Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… рСгистром AL; Π·Π°ΠΏΡ€Π΅Ρ‚ источников ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ). На сигналы DTR ΠΈ RTS влияния Π½Π΅ ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ (послС Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ сброса ΠΎΠ½ΠΈ пассивны).

♦ 01h β€” Π²Ρ‹Π²ΠΎΠ΄ символа ΠΈΠ· рСгистра AL (Π±Π΅Π· Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ). ΠΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΡŽΡ‚ΡΡ сигналы DTR ΠΈ RTS, ΠΈ послС освобоТдСния рСгистра THR Π² Π½Π΅Π³ΠΎ помСщаСтся Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ символ. Если Π·Π° Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ врСмя рСгистр Π½Π΅ освобоТдаСтся, фиксируСтся ошибка Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π° ΠΈ функция Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ.

♦ 02h β€” Π²Π²ΠΎΠ΄ символа (Π±Π΅Π· Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ). АктивируСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сигнал DTR (RTS ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² пассивноС состояниС), ΠΈ оТидаСтся Π³ΠΎΡ‚ΠΎΠ²Π½ΠΎΡΡ‚ΡŒ принятых Π΄Π°Π½Π½Ρ‹Ρ…, принятый символ помСщаСтся Π² рСгистр AL. Если Π·Π° Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ врСмя Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹, функция Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ с ошибкой Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π°.

♦ 03h β€” опрос состояния ΠΌΠΎΠ΄Π΅ΠΌΠ° ΠΈ Π»ΠΈΠ½ΠΈΠΈ (Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ рСгистров МSR ΠΈ LSR). Π­Ρ‚Ρƒ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ Π±Ρ‹ΡΡ‚Ρ€ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π΅Π΄ функциями Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° Π²ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ риска оТидания Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π°.

ΠŸΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Int 14h Π½ΠΎΠΌΠ΅Ρ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ задаСтся Π² рСгистрС АН, Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠΎΡ€Ρ‚Π° (0–3) β€” Π² рСгистрС DX (0 β€” COM1, 1 β€” COM2…). ΠŸΡ€ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π΅ ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ 0, 1 ΠΈ 3 рСгистр АН содСрТит Π±Π°ΠΉΡ‚ состояния Π»ΠΈΠ½ΠΈΠΈ (рСгистр LSR), AL β€” Π±Π°ΠΉΡ‚ состояния ΠΌΠΎΠ΄Π΅ΠΌΠ° (MSR). ΠŸΡ€ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π΅ ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ 2 Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΠΈΡ‚Π° 7 рСгистра АН ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ принятого символа Π² рСгистрС AL; Π½Π΅Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΠΈΡ‚Π° 7 β€” Π½Π° ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΏΡ€ΠΈΠ΅ΠΌΠ°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ 3.

Π‘Π°ΠΉΡ‚ состояния Π»ΠΈΠ½ΠΈΠΈ (рСгистр АН) ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚:

♦ Π±ΠΈΡ‚ 7 β€” ошибка Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π° (послС Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ 2 β€” ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ любой ошибки);

♦ Π±ΠΈΡ‚ 6 β€” рСгистр сдвига ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ° пуст (ΠΏΠ°ΡƒΠ·Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ);

♦ Π±ΠΈΡ‚ 5 β€” ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ рСгистр ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ° пуст (Π³ΠΎΡ‚ΠΎΠ² ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ символ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ);

♦ Π±ΠΈΡ‚ 4 β€” ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ ΠΎΠ±Ρ€Ρ‹Π² Π»ΠΈΠ½ΠΈΠΈ;

♦ Π±ΠΈΡ‚ 3 β€” ошибка ΠΊΠ°Π΄Ρ€Π° (отсутствиС стоп-Π±ΠΈΡ‚Π°);

♦ Π±ΠΈΡ‚ 2 β€” ошибка ΠΏΠ°Ρ€ΠΈΡ‚Π΅Ρ‚Π° принятого символа;

♦ Π±ΠΈΡ‚ 1 β€” ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ (потСря символа);

♦ Π±ΠΈΡ‚ 0 β€” рСгистр Π΄Π°Π½Π½Ρ‹Ρ… содСрТит принятый символ.

Π‘Π°ΠΉΡ‚ состояния ΠΌΠΎΠ΄Π΅ΠΌΠ° (рСгистр AL ΠΏΡ€ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π΅ ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ 0, 1, 3) ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚:

♦ Π±ΠΈΡ‚ 7 β€” состояниС Π»ΠΈΠ½ΠΈΠΈ DCD;

♦ Π±ΠΈΡ‚ 6 β€” состояниС Π»ΠΈΠ½ΠΈΠΈ RI;

♦ Π±ΠΈΡ‚ 5 β€” состояниС Π»ΠΈΠ½ΠΈΠΈ DSR;

♦ Π±ΠΈΡ‚ 4 β€” состояниС Π»ΠΈΠ½ΠΈΠΈ CTS;

♦ Π±ΠΈΡ‚ 3 β€” ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния DCD;

♦ Π±ΠΈΡ‚ 2 β€” ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΠ³ΠΈΠ±Π°ΡŽΡ‰Π΅ΠΉ RI;

♦ Π±ΠΈΡ‚ 1 β€” ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния DSR;