Статус
нашего
сайта:
ICQ Secrets Center is Online  ICQ Information Center


ICQ SHOP
     5-значные
     6-значные
     7-значные
     8-значные
     9-значные
     Rippers List
ОПЛАТА
СТАТЬИ
СЕКРЕТЫ
HELP CENTER
OWNED LIST
РОЗЫСК!New!
ICQ РЕЛИЗЫ
Протоколы ICQ
LOL ;-)
Настройка компьютера
Аватарки
Смайлики
СОФТ
     Mail Checkers
     Bruteforces
     ICQTeam Soft
     8thWonder Soft
     Other Progs
     ICQ Patches
     Miranda ICQ
ФорумАрхив!
ВАШ АККАУНТ
ICQ LiveJournal

Реклама

Наш канал:

irc.icqinfo.ru

Скотт Мюлле- Модернизация и ремонт ПК стр.459


Скотт Мюлле- Модернизация и ремонт ПК стр.459

Преобразования CHS/LBA и LBA/CHS

Адресация секторов может выполняться как в режиме CHS, так и в режиме LBA. Для данного накопителя существует определенное соответствие между адресациями CHS и LBA, которое, в частности, позволяет преобразовывать адреса CHS в адреса LBA и наоборот. Спецификация ATA-1 предлагает довольно простую формулу, с помощью которой можно преобразовывать параметры CHS в LBA:

LBA = (((C х HPC) + H) х SPT) + S - 1.

Реверсирование этой формулы позволяет выполнить обратное преобразование, т.е. преобразовать параметры LBA в адрес CHS:

C = int (LBA/SPT/HPC),

H = int ((LBA/SPT) mod HPC),

S = (LBA mod SPT) + 1.

В этих формулах использованы следующие выражения:

■ LBA — logical block address;

■ C — цилиндр (cylinder);

■ H — головка (head);

■ S — сектор (sector);

■ HPC — количество головок в каждом цилиндре (общее количество головок);

■ SPT — количество секторов на каждой дорожке;

■ int X — целочисленная часть X;

■ X mod Y — модуль (остаток) от X/Y.

С помощью этих формул можно вычислить параметры LBA практически для любого адреса CHS и наоборот. Данный накопитель содержит 16 383 цилиндров, 16 головок и 63 сектора на каждой дорожке. Соотношение адресов CHS и LBA показано в табл. 7.10.

Таблица 7.10. Параметры CHS и соответствующая им нумерация секторов LBA для

накопителя, содержащего

16 383 цилиндров,

16 головок и 63

сектора на каждой дорожке

(общее количество секторов — 16 514 064)

   

Цилиндр

Головка

Сектор

LBA

О

бЗ

бЗ

1 007 999

1 000

О

1 008 000

9 999

бЗ

10 079 999

10 000

О

10 080 000

16 382

бЗ

16 514 063

Команды BIOS и команды ATA

Помимо двух методов адресации секторов (CHS и LBA), существует еще два уровня интерфейса, в которых используется адресация секторов. Одним из интерфейсов является область взаимодействия операционной системы и базовой системы ввода-вывода (с помощью команд BIOS); другим — область сопряжения базовой системы ввода-вывода и накопителя (с помощью команд ATA). На каждом из этих уровней используются определенные команды, которые поддерживают как режим CHS, так и LBA. На рис. 7.8 показаны различные уровни интерфейса.

Скотт Мюлле- Модернизация и ремонт ПК

Рис. 7.8. Взаимоотношения между BIOS и схемой физической адресации секторов. (Здесь выражение L-CHS обозначает логический CHS, а выражение P-CHS — физический CHS)

Когда операционная система обращается к BIOS для чтения или записи секторов, она выдает соответствующие команды через программное прерывание INT13h, которое представляет собой стандартную подпрограмму BIOS, используемую для доступа к диску. Подфункции прерывания INT13h позволяют выполнять чтение или запись секторов, используя при этом адресацию LBA или CHS. После этого стандартные программы базовой системы ввода-вывода преобразуют команды BIOS в аппаратные команды ATA, которые передаются через порты шины ввода-вывода на контроллер дисковода. Аппаратные команды ATA также могут использовать адресацию CHS или LBA, несмотря на то что существуют определенные ограничения. Будет ли использоваться базовой системой ввода-вывода и накопителем адресация CHS или LBA, зависит от емкости жесткого диска, срока службы накопителя и "возраста" BIOS, установленных параметров BIOS Setup и используемой операционной системы.


⇐ Предыдущая страница| |Следующая страница ⇒

.