Сейчас на форуме: _MBK_, ManHunter, Magister Yoda, rtsgreg1989 (+9 невидимых)

 eXeL@B —› Основной форум —› физическая структура пямяти, ее представление
Посл.ответ Сообщение

Ранг: 0.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 03 июля 2005 22:11
· Личное сообщение · #1

Привет!

У меня незадача с пониманием логического и физического смысла оперативной памяти.

1. Я запускаю DEBUG и пишу:
-d 00:00 - что это такое я смотрю?
2. Можно ли определить где физически заседает сама программа DEBUG?
3. Как программно распределяются мои 128МБ оперативной памяти?

Поясните, пожалуйста.



Ранг: 495.3 (мудрец)
Активность: 0.30
Статус: Участник

Создано: 04 июля 2005 09:15 · Поправил: Bitfry
· Личное сообщение · #2

"Такие" вопросы лучше задавать на wasm'e в разделе для новичков (да простит меня wasm).
Я как раз сейчас пишу Чтиву 0 вот мои заметки:
Oblako пишет:
1. Я запускаю DEBUG и пишу:
-d 00:00 - что это такое я смотрю?

Логическое устройство памяти формируется средствами _процессора_. Поэтому оно зависит от режима процессора.
Допустим, мы говорим только о _реальном режиме_ (простые ДОС-программы).
В реальном режиме адресное пространство разбито на _сегменты_ каждый 64kb. Адрес формируется двумя байтами сегмента и двумя байтами _смещения в сегменте_. По этому такую адресацию называют 16-битной. Сегмент кода программы указывается в соответствующем регистре – CS и т.д.
Oblako пишет:
2. Можно ли определить где физически заседает сама программа DEBUG?

Можно . А зачем тебе физический адрес?
Сведенья о физическом адресе (как я понимаю) программистам ничего не дают.
Ну, сформируешь ты физический адрес:
Значение сегмента (допустим, в который загрузился код отладчика) нужно сдвинуть на 4 бита влево (то есть получить 20 бит адреса сегмента) + смещение внутри сегмента. Так ты узнаешь физический адрес конкретного байта в памяти.
Но всё это делает уже процессор и нам оно не нужно.
Мы в программах на Асме пишем, например "jmp CS:100". И такой адрес, пожалуй, самый низкоуровневый для программистов (хотя я новичок и может чего не понял).

Oblako пишет:
3. Как программно распределяются мои 128МБ оперативной памяти?

А вот если мы говорим о _защищённом режиме процессора_ (PM) то здесь чаще всего используется _сплошная модель памяти_.
То есть в Win32 память для программ сплошная. А ДОС-программы из форточек запускаются в виртуальной сессии ДОС, то есть здесь debug ещё дальше от физического адреса (того который подаётся на шину процессора).
В PM я и сам ни фига не понимаю, как преобразуются адреса и как рулит Винда, если найдёшь простой и понятный ответ - кинь здесь ссылку.
Нет, я, конечно, прочёл кое-что о дескрипторах, flat model и т.д. Но переварить это пока не могу .

Короче тебе нужно читать о x86 процах: Архитектура IA-32, модели памяти и т.д.
Начни с топика ebook:
http://exelab.ru/f/action=vthread&forum=2&topic=2387
Первая же ссылка твоя.
Далее, на странице Пирагова есть учебник Юрова "Assembler". У него язык тяжелый, зато ляпов значительно меньше чем у других.
В этом учебнике коротко всё изложено и в списке литературы тоже посмотри.

Дока на IA-32 (архитектура Интел 32).
Номера для поиска на intel.com:
253665?? - том 1-й,
253666?? и 253667?? - том 2-й
253668?? - том 3-й.

Ну и самое интересное wasm.ru – вдоль и поперёк, все ссылки там есть и многое по теме лежит у них же.

Да прибудет с нами Великая Сила.

-----
Всем привет, я вернулся




Ранг: 0.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 04 июля 2005 18:41
· Личное сообщение · #3

Cпасибо, раз.

А два, про то, как Винда рулит память очень и очень хорошо рассказывает Рихтер.
В книге "Programming Applications for Microsoft Windows". Ссылку дать не могу, но она есть. У меня даже.

Ну все пошел васм.ру читать.




Ранг: 71.8 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 04 июля 2005 22:19
· Личное сообщение · #4

Oblako
Советую почитать на wasm.ru, на мой взгляд, хорошие статьи по защищенном режиме процессора:
http://www.wasm.ru/publist.php?list=24 http://www.wasm.ru/publist.php?list=24
Там есть ответы на все твои вопросы.


 eXeL@B —› Основной форум —› физическая структура пямяти, ее представление
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати