ситуация такая: (речь от 1 лица) 1) к примеру я загрузчик находящийся в загрузочной области на одном из дисков 2) включаем пк 3) биос помещает меня в озу вопрос: 1) Как узнать скакого диска был загружен? 2) Обязательно ли ковырять биос? 3) Если обязательно, то какие сервисы прерываний за это отвечают?
1. В dl хранится номер загрузочного устройства. 2. Зачем? Они все разные, но протокол загрузки всегда один. Курим Bios Boot Specification. 3. См. п. 1. зы Я надеюсь есть понимание, что на этапе "биос помещает в ОЗУ MBR" понятий дисков C:, D: и т.п. нет?
ruextra Верно. Хотя, MBR bootstrap-code парсит таблицу разделов, само собой. за что? за загрузку отвечает прерывание 0x19, которое генерится после окончания POST и его обработчик грузит бутсектор. Приоритеты загрузочных носителей лежат в цмосе, насколько я помню, а диск читается стандартными биосовскими прерываниями чтения диска. (разумеется, когда я говорю "диск", речь идет про физические носители)
www.wasm.ru/forum/viewtopic.php?id=30436 Основным средством для определения загрузочного диска по его номеру является сервис EDD. Если для жесткого диска отсутствует поддержка EDD, то нужно использовать специальные методы проверки на соответствие.