BIOS и прямой доступ
Прямой доступ к контроллеру
В предыдущем разделе было показано, что жесткий диск подключается к контроллеру, передающему команды диску по плоскому кабелю. В одном из вариантов чтения/записи данных программа «общается» напрямую с контроллером, который затем взаимодействует с жестким диском.
Чтобы взаимодействие было организовано подобным образом, программа должна знать способ адресации контроллера и уметь отдавать ему команды. В частности, программе должен быть известен код команды для операции чтения
и режим идентификации читаемых секторов, а также способ получения у жесткого диска дополнительной информации (такой, как тип и размер).
Доступ к контроллеру через BIOS
Прямой доступ к контроллеру обеспечивает максимальную скорость чтения и записи на диск, однако для него программа должна располагать подробной информацией об оборудовании. С другой стороны, одной из целей системы BIOS является изоляция программ от технических деталей. BIOS располагает полной информацией об устройствах и предоставляет свой сервис программам, чтобы последним было удобнее работать с оборудованием.
Как говорилось ранее в разделе «Местонахождение загрузочного кода», BIOS используется при запуске компьютера. В процессе загрузки BIOS решает много задач, но сейчас нас интересуют две из них. Первая — это сбор подробной информации об установленных дисках, а вторая — заполнение таблицы прерываний, используемой для обслуживания запросов операционной системы и прикладных программ.
Чтобы воспользоваться сервисом жестких дисков BIOS, программа должна загрузить необходимые данные (например, адрес и размер сектора) в регистры процессора и выполнить команду программного прерывания 0xl3h (INT 13h). Получив команду программного прерывания, процессор обращается к таблице прерываний и находит в ней адрес кода обработки запроса на прерывание. Как правило, для прерывания 0x13 в таблице хранится адрес кода BIOS, который использует имеющуюся информацию о жестких дисках для взаимодействия с контроллером. В сущности, BIOS выполняет функции посредника между программным обеспечением и жестким диском.
Вообще говоря, прерывание INT 13h представляет целую категорию дисковых функций. В эту категорию входят функции записи на диск, чтения с диска, форматирования дорожек и получения информации о диске. Исходные функции INT 13h использовали для чтения/записи адреса CHS и позволяли программам работать с дисками объемом 8,1 Гбайт и менее. Для снятия этого ограничения в код BIOS были добавлены новые функции, называемые «расширенными обработчиками INT 13h».
Расширенные обработчики INT 13h требовали нового кода BIOS и использовали 64-разрядные адреса LBA. В целях совместимости старые функции CHS были сохранены, и для использования новых функций LBA INT 13h пришлось вносить изменения в программное обеспечение.
Еще по теме BIOS и прямой доступ:
- Прямой доступ или BIOS?
- А) Прямой метод в прогностике
- 3. Подбор прямой и репрезентативный
- 6.3.4. Метод прямой экспертной оценки
- 5.4.4. Порядок доступа к сведениям реестра
- 9. Институты прямой демократии. Выборы и референдумы
- Глава 5 Информационное обслуживание – система доступа к информации
- НЕПРАВОМЕРНЫЙ ДОСТУП К КОМПЬЮТЕРНОЙ ИНФОРМАЦИИ (ст. 272 УК РФ).
- 10.10. Исключение доступа к рынку, принудительный ассортимент, барьеры входа
- Свобода доступа к информации. Гласность
- Продажа опционов "с покрытием". Ведет ли она прямой дорогой к прибыли?
- РАСШИРЕНИЕ ДОСТУПА К ЗАЕМНЫМ СРЕДСТВАМ МЕЛКОМУ ПРОИЗВОДИТЕЛЮ НА ОСНОВЕ СУБСИДИРОВАНИЯ ПРОЦЕНТНЫХ СТАВОК ПО КРЕДИТАМ
- 2. Неравный доступ к управлению компанией при примерном равенстве долей основных собственников
- 21.9. Доступ к средствам судебной защиты — оплата по окончании разбирательства, коллективные иски, компенсация судебных расходов и правило 11
- Программная блокировка записи
- Местонахождение загрузочного кода
- Категория файловой системы
- КАК МЫ ЗАСВЕТИЛИСЬ НА РЫНКЕ, НО НЕ С ТЕМ БИЗНЕСОМ, С КОТОРЫМ СОБИРАЛИСЬ
- Строение и функции биосферы. Круговорот веществ