Практическое задание по дисциплине - Операционные среды, системы и оболочки.
Контрольная по предмету:
"Информатика"
Название работы:
"Практическое задание по дисциплине - Операционные среды, системы и оболочки."
Автор работы: Ольга
Страниц: 7 шт.
Год:2008
Краткая выдержка из текста работы (Аннотация)
Исследование цепочки блоков основной памяти
MCB это управляющий блок, который DOS использует при распределении, модификации и освобождении блоков системной памяти.
Формат блока:
Смещ. Длина Содержимое
▀▀▀▀▀ ▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
┌───┐ ┌──► 'M'(4dH) - за этим блоком есть еще блоки
+0 1 │Тип├──┴──► 'Z'(5aH) - данный блок является последним
├───┴───┐
+1 2 │Владелец параграф владельца (для FreeMem); 0 = владеет собой
├───┴───┤
+3 2 │Размер │ число параграфов в этом блоке распределения
├───┴───┴───────┐
+5 3 │зарезервировано│
└───┴───┴───-───┘
+8 8 ASCIIZ имя хозяина
+10H ? Блок памяти начинается здесь и имеет длину (Размер*10H) байт.
Замечания:
блоки памяти всегда выровнены на границу параграфа ("сегмент_блока");
блоки M-типа: следующий блок находится по (сегмент_блока+Размер):0000;
блоки Z-типа: (сегмент_блока+Размер):0000 = конец памяти.
Сегмент первого блока в цепочке MCB-блоков хранится по смещению -2 в таблице таблиц (векторной таблице связи) MS-DOS. В векторной таблице связи есть полезная информация, открывающая доступ практически ко всем внутренним структурам данных операционной системы.
Таблица 1 Формат векторной таблицы связи
Смещение, байт Размер, байт Имя поля Описание
-2 2 mcb_seg Сегмент первого блока памяти MCB
0 4 dev_cb Указатель на первый блок управления устройствами MS-DOS (MS-DOS Device Control Block)
4 4 file_tab Указатель на таблицу файлов MS-DOS
8 4 clock_dr Указатель на драйвер CLOCK$ , установленный в файле config.sys или резидентный
12 4 con_dr Указатель на драйвер CON , установленный в файле config.sys или резидентный
16 2 max_btbl Максимальный размер блока (в байтах) для устройства, выполняющего передачу данных отдельными блоками
18 4 disk_buf Указатель на структуру, описывающую дисковые буферы
22 4 drv_info Указатель на массив информации об устройствах
26 4 fcb_tabl Указатель на таблицу FCB
30 2 fcb_size Размер таблицы FCB
32 1 num_bdev Число устройств, выполняющих передачу данных отдельными блоками
33 1 lastdriv Значение LASTDRIVE в файле config.sys (по умолчанию равно 5)
34 ? null_dr Начало драйвера NUL. Этот драйвер всегда первый в списке драйверов MS-DOS
Предварительно загрузив резидентную программу PEEK.EXE для просмотра содержимого памяти, определим с помощью утилиты LOL.COM адрес начала таблицы таблиц:
List of list location: 00A7:0026H
По смещению -2 находится адрес сегмента, по которому расположен первый MCB в цепочке блоков основной памяти. В данном случае этот адрес равен 0213:0000
Содержание работы
Контрольная работа №1
Изучить структуру системных таблиц реального режима Windows и организацию цепочек блоков памяти
Познакомиться с работой одной из программ, позволяющих просмотреть содержимое ОЗУ в виде шестнадцатеричного дампа - PEEK.COM.
Найти в памяти таблицу таблиц (для получения ее адреса запустить lol.com), познакомиться с ее содержимым и посмотреть указатель на 1 MCB.
Проследить в памяти цепочку блоков, определяя их принадлежность и сравнивая с информацией из карты памяти.
Написать отчет с описанием процесса нахождения блоков MCB. В отчете указать цепочку блоков памяти с их адресами и размерами.
Использованная литература
- Список использованной литературы
- Гук М. Аппаратные средства IBM PC. Энциклопедия. СПб.: Издательство "Питер", 2000. - 816 c.
- Дейтин Г. Введение в операционные системы. Перевод с английского. В 2-х томах, М., Мир, 1987 г.
- Роберт Журден. Справочник программиста на персональном компьютере фирмы IBM.
- Операционная система MS-DOS. Руководство разработчика
- Операционная система MS-DOS (версия 6.0). Справочное руководство.
- Питер Абель. Ассемблер и программирование для IBM PC
- Справочная система Tech Help.
- Фигурнов В.Э. IBM PC для пользователей. М.:ИНФРА,1997г.