19.05.2019, 20:41 [+3 UTC]
в нашей команде: 3 617 чел. | участники онлайн: 7 (рекорд: 21)

:: РЕГИСТРАЦИЯ

задать вопрос

все разделы

правила

новости

участники

доска почёта

форум

блоги

поиск

статистика

наш журнал

наши встречи

наша галерея

отзывы о нас

поддержка

руководство

Версия системы:
7.75 (18.05.2019)
JS-v.1.33 | CSS-v.3.35

Общие новости:
28.04.2019, 09:13

Форум:
16.05.2019, 21:07

Последний вопрос:
19.05.2019, 18:12
Всего: 149645

Последний ответ:
19.05.2019, 16:03
Всего: 258485

Последняя рассылка:
19.05.2019, 15:15

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
13.10.2009, 14:27 »
Соколов В.В.
Спасибо большое! Именно то, что требовалось, ни больше, ни меньше! Все понятно, комментарии избыточны. [вопрос № 173075, ответ № 255210]
09.03.2019, 21:14 »
dar777
Это самое лучшее решение! [вопрос № 194916, ответ № 277620]

РАЗДЕЛ • Assembler

Создание программ на языке Assembler.

[администратор рассылки: Лысков Игорь Витальевич (Старший модератор)]

Лучшие эксперты в этом разделе

Коцюрбенко Алексей Владимирович
Статус: Модератор
Рейтинг: 612
Зенченко Константин Николаевич
Статус: Старший модератор
Рейтинг: 229
Лысков Игорь Витальевич
Статус: Старший модератор
Рейтинг: 94

Перейти к консультации №:
 

Консультация онлайн # 194939
Раздел: • Assembler
Автор вопроса: Arthur (Посетитель)
Отправлена: 12.03.2019, 11:02
Поступило ответов: 0

Уважаемые эксперты! Пожалуйста, ответьте на вопрос:

если линейный адрес в защищенном режиме (с выключенным страничной адресацией CR0:PG = 0) указывает на начало памяти, то есть база - 00.. доступ (00 - ядро) чтение\запись и по этому адресу записать 1мг данных и перейти в реальный режим, то получится что вектор прерываний,данные биос и все что находится физически по адресу 0-1мг будут удалены и перезаписаны?

Состояние: Консультация закрыта

Oтветов пока не поступило.

Мини-форум консультации № 194939

Лысков Игорь Витальевич
Старший модератор

ID: 7438

# 1

 +1 
 
= общий = | 12.03.2019, 12:57 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер
Arthur:

Естественно smile
Память-то одна и та же. Разные только способы доступа.

=====
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен

Arthur
Посетитель

ID: 401281

# 2

= общий = | 12.03.2019, 13:20 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер
Лысков Игорь Витальевич:

спасибо за ответ

Зенченко Константин Николаевич
Старший модератор

ID: 31795

# 3

 +1 
 
= общий = | 12.03.2019, 14:07 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер
Arthur:

Как бы Вы не старались, 1-й метр угробить можно только с помощью таких "извращений", которые книгах не описаны. Селекторная организация памяти, как и Страничная, исключает 1-й метр, из числа доступной памяти. Это жертва тому объему памяти, который будет доступен, что значит 1-ин метр, когда у Вас пару гектаров доступны.
smile
Даже если у Вас это получится, то при переходе в RM - постоянно(18,2 раза в секунду) будет вызываться, IRQ0(int 08h) и если там не будет осмысленного кода(т.к. таймер, кроме изменения CMOS времени, еще выполняет "КУЧУ" дополнительных функций), то в лучшем случае железо перегрузится, в худшем зависнет.

-----
Последнее редактирование 12.03.2019, 14:09 Зенченко Константин Николаевич (Старший модератор)

=====
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.
smile

Arthur
Посетитель

ID: 401281

# 4

= общий = | 13.03.2019, 19:29 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер
Зенченко Константин Николаевич:

меня терзали сомнения а что если память в РМ начинается с начала XMS адреса, вот и решил узнать у специалистов smile

Зенченко Константин Николаевич
Старший модератор

ID: 31795

# 5

 +1 
 
= общий = | 15.03.2019, 20:37 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер
Arthur:

Давайте думать логично.
smile
Для перехода из RM в PM, и нормальной работы CPU в РМ, нужна GDT, остальное не важно для кратковременного перехода туда-обратно. Минимальный размер GDT, это 8-ть байт = "0" + 8-мь байт для описания сегмента кода. Прыгнули, присели пару раз, вернулись. Не нужно данных, таймер, тоже не успеет сработать.

Т.е. нужно всего 128 бит(2*8*8), сам регистр GDTR = 48-мь бит. Другими словами, он хранит в себе ссылку на таблицу GDT, где она определена? Угадали? В RM, т.е. 1-ый метр.

Да, с помощью LGDT, можно переместить(GDT, и сформировать новые LDT, IDT, TSS, . . . . ) в другую область памяти, отличную от первого метра.

А теперь вопрос к Вам:
- LGDT RM и LGDT РM, сообщают CPU, что GDT, уже не там, где была раньше(т.е. первый метр).
- CPU безразлично, что записано в GDTR, ему важно, что некоторое количество бит, указывают адрес на саму GDT, где этот адрес находится - безразлично.
- О том, что перенесли GDT, он не знает, т.к. сравнивать интервалы от .. до .., ему нет времени, поэтому он считает, что GDT в первом метре.

И сам вопрос: CPU позволит Вам портить первый метр?

=====
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.
smile

Arthur
Посетитель

ID: 401281

# 6

= общий = | 16.03.2019, 13:56 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

я думаю да, если таблица GDT не находится в 1 мб и во время перезаписи процессор не возобновит теневую копию регистра (значение базы и лимита),я сомневаюсь конечно но вы же сами сказали что если так извращаться то можно и Лысков Игорь Витальевич то же подтвердил что можно

Arthur
Посетитель

ID: 401281

# 7

= общий = | 16.03.2019, 16:16 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер
Зенченко Константин Николаевич:

я не ленюсь все мои знания это теория на практике я только могу написать программу переход РМ,пустой цикл и обратно в RM я пока не могу проверить ответ кодом и все таки можно узнать правильный ответ

 

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

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.15333 сек.

© 2001-2019, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.75 от 18.05.2019
Версия JS: 1.33 | Версия CSS: 3.35