Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Организация хранения байтов в памяти
При просмотре памяти имейте в виду, что двухбайтовые слова хранятся в виде {младший байт}{старший байт} – т.е. порядке обратном естественному представлению многоразрядного числа. То же самое относится к порядку расположения слов в двойном слове – сначала младшее слово, потом старшее. Всегда действует общий принцип – младшее лежит в ячейке памяти с младшим адресом. Таким образом, полный 4-х байтный указатель (например, на таблицу таблиц) 1234:5678H будет в дампе памяти выглядеть как: 78 56 34 12 \ / \ / | |___ старшее слово с переставленными байтами | |_________ младшее слово с переставленными байтами Информация о структурах памяти Это список указателей, каждый из которых представляет собой двойное слово (4 байта). Старшее слово – это сегментный адрес, младшее – смещение в сегменте. Например, для указателя, у которого сегментный адрес=1234H, а смещение 5678H, абсолютный физический адрес ячейки памяти образуется, как сумма сегментного адреса * 16 + смещение (т.е. сегментный адрес сдвинут влево на 1 шестнадцатиричный разряд): 1234 H 0110 H 0112 H + 5678H + 0026H + 0006H -------- -------- --------- =179B8H =01126H =01126H Таким образом 0110:0026 – это тоже, что и 0112:0006 ! Структура таблицы таблиц Данная структура является НЕДОКУМЕНТИРОВАННОЙ и используется для изучения низкоуровневой информации о структурах памяти.
Структура блока управления памятью (MCB) MCB – Это НЕДОКУМЕНТИРОВАННЫЙ управляющий блок, который используется при распределении, модификации и освобождении блоков системной памяти.
Замечания: - блоки памяти всегда выровнены на границу параграфа («сегмент блока»); - блоки M-типа: следующий блок находится по (сегмент блока + Размер):0000; - блоки Z-типа: (сегмент блока + Размер):0000 = конец памяти (a000H=640K). В любом MCB указан его владелец – сегментный адрес PSP (префикс программного сегмента) программы владельца данного блока памяти. А в PSP есть ссылка на окружение данной программы, в котором можно найти имя программы – путь ее запуска. Следует помнить, что сама программа (и PSP в том числе) и ее окружение сами располагаются в блоках памяти. Поэтому, в MCB блока памяти самой программы в качестве хозяина указан собственный адрес самого себя. Когда программа в реальном режиме начинает выполнение, DS:0000 и ES:0000 указывают на начало PSP этой программы. Информация PSP позволяет выделить имена файлов и опции из строки команд, узнать объем доступной памяти, определить окружение и т.д. Использование окружения. Окружение не превышает 32 Kбайт и начинается на границе параграфа. Смещение 2Сh в PSP текущей программы содержит номер параграфа окружения. Вы можете найти нужное 'имя' серией сравнений строк ASCIIZ (Строка ASCIIZ, используемая во многих функциях DOS и в языке C, представляет собой последовательность символов ASCII, заканчивающуюся байтом 00H), пока не дойдете до пустой строки (нулевой длины), что указывает конец окружения. Обычно 'имя' в каждой строке окружения задано прописными буквами, но это необязательно. Более подробную информацию о структурах памяти можно получить из справочника TECH Help! Задание на выполнение Часть 1. 1. Подготовиться к работе, используя материалы лекций, данное пособие, справочник TEACH-HELP. 2. Познакомиться с работой одной из программ, позволяющих просмотреть содержимое ОЗУ в виде шестнадцатиричного дампа – например, PEEK.COM (во время работы доступен HELP – F1, карта памяти – F8 и информация о блоке памяти – F6). 3. Найти в памяти таблицу таблиц (для получения ее адреса – запусти lol.com), познакомиться с ее содержимым и посмотреть указатель на 1 MCB (упр. блок памяти). 4. Проследить в памяти цепочку блоков и сравнить с информацией из карты памяти (F8). 5. Написать отчет о найденной цепочке блоков памяти с их адресами и размерами. Часть 2. Дополнительное задание 1. Определите принадлежность рассмотренных вами блоков MCB. Ответьте на вопрос: 1. В чем особенность последнего блока MCB?
Лабораторная работа № 3 Цель работы Целью работы является проверка работоспособности сетевого подключения в ОС Windows, через диагностику IP-протокола и формирование следующих компетенций: - Готовность обосновать принимаемые проектные решения, осуществлять постановку и выполнение экспериментов по проверки их корректности и эффективности (ПК-4). - Знакомство с архитектурой ЭВМ и систем (ПК-9). - Навыки использования операционных систем, сетевых технологий, средств разработки программного интерфейса, применения языков и методов формальных спецификаций, систем управления базами данных (ПК-15). Контроль над формированием компетенций осуществляется при защите лабораторной работы. |
Последнее изменение этой страницы: 2019-04-19; Просмотров: 284; Нарушение авторского права страницы