OSDev http://osdev.su/ |
|
Вторичный загрузчик, проверки состояний http://osdev.su/viewtopic.php?f=6&t=477 |
Страница 1 из 1 |
Автор: | pavia [ 30 дек 2011, 12:27 ] |
Заголовок сообщения: | Вторичный загрузчик, проверки состояний |
Тема уже много раз обсуждалось. Но ещё раз хочу спросить. Для того чтобы проверить перешли мы в защищённый режим или нет. Хочу задействовать проверку придела. И тут не очень понятно как себя должен вести компьютер в реальном режиме на инструкции вида. mov ax,ds:[10000h] Будет прерывание или нет? И второй вопрос какой корректный алгоритм для проверки линии открытия линии A20? Достаточно ли проверить адрес из диапазона 100000h-10FFEFh ? |
Автор: | pavia [ 30 дек 2011, 12:46 ] |
Заголовок сообщения: | Re: Вторичный загрузчик, проверки состояний |
На первый вопрос нашел будет исключение 12(для SS) или 13. Без кода ошибки. А вот насколько эмуляторы это эмулируют корректно? |
Автор: | Himik [ 30 дек 2011, 17:14 ] |
Заголовок сообщения: | Re: Вторичный загрузчик, проверки состояний |
Для проверки режима можно прочитать CR0, бит 0. Для проверки А20 можно сравнить блоки памяти размером 1КБ по адресам 0 и 100000h, должны быть разные. Обычно отличие обнаруживается в первых нескольких байтах, поэтому цикл получается не длинный. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |