Как использовать Int13H Ext для чтения / записи всех секторов на каждом разделе жесткого диска (> 8 ГБ) - PullRequest
0 голосов
/ 07 апреля 2010

Я использую стандарт C со стандартным lib для написания программы для чтения секторов на жестком диске в не-ОС

Скажите, пожалуйста, подробнее, как я могу указать и прочитать все части секторов на разделе жесткого диска?

Например: как я могу прочитать все MBR, DBR, FAT, Root и Data и получить всю информацию?

1 Ответ

2 голосов
/ 07 апреля 2010

Используйте расширенные int 13h подпрограммы, которые должны поддерживаться BIOS, который не является положительно древним.Вы начинаете с int 13h, AH = 41h.Это должно вернуться с переносом ясно, если расширения поддерживаются.Предполагая, что это дает положительный результат, вы используете ah = 48h, чтобы получить общее число секторов, ah = 42h для чтения и ah = 43h для записи.

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

...