Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Ассемблер? Это просто! Учимся программировать


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Assembler (Ассемблер)

Выпуск № 1050
от 01.09.2008, 00:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 311, Экспертов: 13
В номере:Вопросов: 1, Ответов: 1

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 142312: Уважаемые эксперты, в главе 2.3 Калашников пишет: «Работать с клавиатурой позволяет прерывание BIOS (ПЗУ) 16h, которое можно вызвать даже до запуска операционной системы, в то время как прерывания 20h, 21h и пр. доступны только после загрузки IO.SYS/...

Вопрос № 142.312
Уважаемые эксперты, в главе 2.3 Калашников пишет: «Работать с клавиатурой позволяет прерывание BIOS (ПЗУ) 16h, которое можно вызвать даже до запуска операционной системы, в то время как прерывания 20h, 21h и пр. доступны только после загрузки IO.SYS/MSDOS.SYS …»
Вопрос у меня, а как этот вызов прерывания 16h можно проверить до запуска ОС? Возможно ли на ассемблере написать программу, которая даст запуститься ОС только после того, когда я нажму клавишу на клавиатуре? Мне в голову ничего не приходит. Может, поможете с ответом.
Отправлен: 26.08.2008, 15:04
Вопрос задал: Masada (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Masada!

Да это так.
Сразу после включения компьютера BIOS производит самодиагностику всего установленого "железа" и если тесты POST прошли успешно, то она начинает перебирать все устройства указаные в списке начальной загрузки(см. приложение 1):
Код:
«Boot
Sequence» (последовательность начальной загрузки системы) — определяется последовательность опроса накопителей для загрузки операционной системы. Эти устройства обозначаются либо буквами для физических жестких дисков и обычных дисководов, либо названием устройства. Поддерживаются устройства: LS-120, Iomega ZIP, ATAPI CD-ROM, IDE- и SCSI-диски. Может принимать значения: 
«A,C» — такой выбор оправдан только для случая загрузки с дискеты и встречается в старых моделях ПК
«A,C,SCSI»
«C only»
«C,A»
«C,A,SCSI»
«C,CDROM,A»
«CDROM,C,A»
«D,A,SCSI» (предназначено при использовании минимум двух IDE-жестких дисков)
«E,A,SCSI» (аналогично для 3-х дисков)
«F,A,SCSI» (аналогично для 4-х дисков)
«LS/ZIP,C»
«SCSI,A,C»
«SCSI,C,A»
В некоторых версиях BIOS опция «Boot Sequence» трансформировалась в несколько самостоятельных опций, с большей возможностью отбора и большей гибкостью: «First Boot Device», «Second Boot Device», «Third Boot Device», «Boot Other Device» (соответственно «первое», «второе», «третье» и «другое» загрузочные устройства). Могут принимать следующие значения:
«Floppy»
«HDD-0»
«HDD-1»
«HDD-2»
«HDD-3»
«LAN»
«SCSI»
«LS/ZIP»
«CDROM»
«Enable»
«Disable»
Обычно, следует выбирать вариант, в котором первым опрашиваемым устройством является жесткий диск, чтобы система не тратила время на опрос других накопителей.

На каждом из этих устр ойств ищется главный загрузочный сектор ( MBR-Master boot record), его структуру для FDD и HDD смотрите по 7.1.24. Формат первого сектора жесткого диска (очень много полезной информации). Как только будет найден MBR, BIOS передаст ему управление и уже дальнейшую загрузки любой операционной системы будет производить код MBR. Только после этого будут доступны прерывания DOS.
В приложении программа которая запишет загрузочный сектор на дискету - FDD и при загрузке с нее будет считывать информацию об MBR - HDD с выводом на экран.
Удачи!

Приложение:

---------
И только наступив на грабли мы приобретаем драгоценный опыт!

Ответ отправил: Зенченко Константин Николаевич (статус: Профессор)
Украина, Киев
Тел.: +380979536619
Адрес: Украина г.Киев
----
Ответ отправлен: 26.08.2008, 15:59
Оценка за ответ: 5
Комментарий оценки:
Суперответ, подробный, очень оперативный, тем более с ссылками на информацию, которую я уже изучаю.


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2008, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале

∙ Версия системы: 5.1 beta(win) от 11.08.2008

Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное