3.4 Таблицы параметров НМД и НГМД.

Для работы с диском на физическом уровне необходимо знать такие его характеристики, как количество головок, секторов и др. Эти характеристики можно определить из таблиц параметров НГМД и НМД, заполняемых BIOS в процессе инициализации системы.

Анализируя содержимое CMOS-памяти в компьютерах IBM PC/AT или установку переключателей конфигурации на основной плате в компьютерах IBM PC и IBM PC/XT, BIOS в процессе инициализации создает таблицу параметров дискеты DPT (Diskette Parameter Table), а также одну или две таблицы параметров жесткого диска HDPT (Hard Disk Parameter Table). Если имеется специальная "дисковая" система ввода/вывода, то она сама создает таблицы HDPT.

Таблица параметров дискеты DPT имеет длину 10 байт, ее адрес располагается в области данных BIOS по адресу 0000h:0078h, что соответствует вектору прерывания INT 1Eh . Таблица содержит следующие параметры:

Смещение, байт Размер, байт Имя поля Описание
0 1 srt_hut Биты 0...3:SRT (Step Rate Time) - задержка для переключения головок, лежит в пределах 1 - 16 мс и задается с интервалом 1 мс (0Fh - 1 мс, 0Eh - 2 мс, 0Dh - 3 мс, ...).Биты 4...7:Задержка разгрузки головки, лежит в пределах 16 - 240 мс и задается с интервалом 16 мс (1 - 16 мс, 2 - 32 мс, ..., 0Fh - 240 mc)
1 1 dma_hlt

Бит 0:Значение этого бита, равное 1, говорит о том, что используется прямой доступ к памяти;
Биты 2...7:Время загрузки головок HLT - интервал между сигналом загрузки головок и началом операции чтения или записи, лежит в пределах 2 - 254 мс и задается с интервалом 2 мс (1 - 2 мс, 2 - 4 мс, ..., 0FFh - 254 мс)

2 1 motor_w Задержка перед выключением двигателя
3 1 sec_size Код размера сектора в байтах:0 - 128;1 - 256;2 - 512;3 - 1024
4 1 eot Номер последнего сектора на дорожке
5 1 gap_rw Длина межсекторного промежутка для чтения или записи
6 1 dtl Максимальная длина передаваемых данных. Используется, когда не задана длина сектора
7 1 gap_f Длина межсекторного промежутка для операции форматирования
8 1 fill_char Байт-заполнитель для форматирования, обычно используется F6h
9 1 hst Время установки головки в мс
10 1 mot_start Время запуска двигателя в 1/8 долях секунды

Все времена зависят от частоты тактового генератора контроллера НГМД, приведенные значения соответствуют частоте 8 МГц.

Адреса таблиц параметров жестких дисков HDPT расположены по адресам, соответствующим векторам прерываний INT 41h (для первого физического диска) и INT 46h (для второго физического диска). Эти таблицы имеют следующий формат:

Смещение, байт Размер, байт Имя поля Описание
0 2 max_cyl Максимальное количество дорожек на диске
2 1 max_head Максимальное количество магнитных головок
3 2 srwcc Начальная дорожка для предварительной записи (Starting reduced-write current cylinder)
5 2 swpc Начальная дорожка для предварительной компенсации при записи (Starting write precompensation cylinder)
7 1 max_ecc Максимальная длина блока коррекции ошибок ECC (Maximum ECC data burst length)
8 1 dstopt

Параметры устройства:
бит 7 - запрет восстановления;
бит 6 - запрет восстановления по блоку коррекции ошибок ECC (Error Correction Code);
биты 2-0 - дополнительные параметры устройства

9 1 st_del Стандартная величина задержки
10 1 fm_del Величина задержки для форматирования диска
11 1 chk_del Величина задержки для проверки диска
12 4 reserve Зарезервировано

Таблица параметров жесткого диска содержит такие важнейшие значения, как максимальное количество дорожек и максимальное количество головок. Если вам не удалось определить тип диска, то таблица HDPT - единственное надежное место, откуда можно получить информацию о количестве дорожек и головок.

Глава 4. Программирование контроллера НГМД.

Большинство дисковых операций можно выполнить на уровне функций BIOS. Это самый простой и надежный способ работы с диском на физическом уровне. Однако в отдельных случаях вам может потребоваться непосредственный доступ к контроллеру НГМД - например, если вы разрабатываете систему защиты данных от несанкционированного копирования.

Информация, приведенная в этой главе, ориентирована прежде всего не на выполнение операций чтения или записи (которые лучше выполнять с помощью функций BIOS), а на управление контроллером и получение состояния контроллера. Именно эти операции требуются для организации защиты данных от несанкционированного копирования.


Информация о работе «Работа с дисками»
Раздел: Кибернетика
Количество знаков с пробелами: 90254
Количество таблиц: 72
Количество изображений: 0

Похожие работы

Скачать
18898
0
2

... CD, CD-Text, CD-WO (Write-Once). Полное описание их займет слишком много места, и это не является целью написания данной работы. В зависимости же от количества возможных операций записи компакт-диски разделяются на: CD-ROM (read only memory), CD-R (recordable), они же CD-WORM (write once read many), CD-RW (rewritable). Соответственно, СD-ROM изготавливается на заводе, и дальнейшая запись на ...

Скачать
19620
0
6

... форматирования жестких дисков, поэтому диски работают на любых контроллерах, по крайней мере в минимальной низкоуровневой конфигурации. Но чтобы обеспечить наилучшую производительность, следует использовать жесткий диск, рассчитанный на имеющийся контроллер. Основным недостатком EIDE является то, что к одному шлейфу (кабель, подключающийся с другой стороны к материнской плате или контроллеру ...

Скачать
16313
1
10

... информационные сектора и служебную серво-информацию и может быть выполнено контроллером винчестера под управлением соответствующей программы. Для современных винчестеров, которые содержат записанную при изготовлении сервоинформацию, полное форматирование означает и разметку информационных секторов, и перезапись сервоинформации. 1.3 Низкоуровневое форматирование Низкоуровневое форматирование ...

Скачать
15761
0
0

... их из архива; . • указанием каталога для размещения временных файлов архиватора при помещении файлов в архив; • запрещением копирования в архив определенных файлов (например, .ВАК-файлов). ОБСЛУЖИВАНИЕ ДИСКОВ Каждый водитель автомобиля помимо использования своего автомобиля для поездок должен заправлять его бензином, мыть, проводить техническое обслуживание и т.д. Если он не ...

0 комментариев


Наверх