Краткие теоретические сведения о структуре и порядке организации дисковой памяти (FAT) в операционной системе MS DOS

Страницы работы

Содержание работы

Министерство Образования Российской Федерации

ГОУВПО «КнАГТУ»

Факультет компьютерных технологий

Кафедра МОП ЭВМ

ЛАБОРАТОРНАЯ РАБОТА № 3

по курсу "Операционные системы "

Студента группы  3ВТ-1:                                                           Горн М.А.

Преподаватель:                                                                          Тихомиров В. А.

2005 г

Задание:

- краткие теоретические сведения о структуре и порядке организации дисковой памяти  (FAT) в операционной системе MS DOS.

- дизассемблированный текст начального загрузчика  MS DOS из MBR с пояснениями важнейших моментов его работы.

- экранную копию  цепочки таблиц разделов исследуемого жесткого диска  (физическое и логическое представление) с объяснением их взаимосвязи между собой.

- экранную копию  одного из BOOT секторов жесткого  диска  (физическое и логическое представление) с объяснением   взаимосвязи  параметров таблицы БАЗЫ ДИСКА между собой  и с параметрами таблицы разделов диска.

- экранную копию  начального   участка таблицы FAT  диска  (физическое и логическое представление) с объяснением   взаимосвязи  параметров таблицы FAT,  и параметров таблицы БАЗЫ ДИСКА.

- экранную копию  одного начального участка  каталога ROOT  (физическое и логическое представление) с объяснением   взаимосвязи  параметров   таблицы  ROOT  и  таблицы FAT.

- изучить, кратко описать назначение и уметь применять для работы с дисками в системе FAT-16 и FAT-32 утилиты  DOS:

FDISK, FORMAT, FIND, Chkdsk, Dblspace, Drvspace, Deltree, Diskcopy, Fc, LABEL, Scandisk, Subst, SYS, Xcopy, изучить, кратко описать назначение и уметь применять для работы с дисками в системе FAT-16 и FAT-32 утилиты  Nortona:

UNERASE, NDD, DiskEdit, SpeedDisk, DiskTools, Undelete

 Дизассемблированый текст программы

mov   bx,data_3e        ; (0000:7C00=0E8h)

mov   ax,201h

push  di

;Чтение секторов

int   13h               ; Disk  dl=drive ?  ah=func 02h

;  read sectors to memory es:bx

pop   di

jnc   loc_11                  ; Jump if carry=0

xor   ax,ax             ; Zero register

;Сброс контролера

int   13h               ; Disk  dl=drive ?  ah=func 00h

;  reset disk, al=return status

dec   di

jnz   loc_10                  ; Jump if not zero

mov   si,6A3h

jmp   short loc_7       ; (014B)

Этот участок программы считывает сектора с диска, по его завершению программа завершает свою работу.

MBR (Master Boot Record)

Так как емкость фиксированного диска относительно велика, некоторые пользователи ПЭВМ предпочитают применять только одну часть дискового пространства под DOS, а другие части - под другие операционные системы. Для этого доступное пространство фиксированного диска может быть разбито на четыре логические части - разделы, доступ к каждому из которых осуществляется отдельно. Данные каждого раздела могут храниться на нем совершенно независимо от данных, расположенных в других разделах. Каждый раздел может иметь свой собственный загрузочный сектор и операционную систему.

Первый сектор жесткого диска содержит 64-байтовую таблицу разделов и  программу начальной загрузки диска. Таблица указывает, где на диске расположен каждый раздел. Кроме того, в таблице помечается один раздел как загрузочный.

Первый сектор загрузочного раздела является загрузочным сектором, который ROM

BIOS может использовать для загрузки операционной системы.

Программа начальной загрузки диска просматривает таблицу, чтобы определить, какой из разделов является загрузочным. После этого она считывает загрузочный сектор раздела с диска в память. Загрузочный сектор содержит свою программу начальной загрузки, которая, в свою очередь, считывает операционную систему с диска в память и передает ей управление.

Так как загрузочные разделы помечаются в таблице, можно выбирать между разделами фиксированного диска, просто корректируя саму таблицу и заново начиная работу с компьютером. Все операционные системы, способные поддерживать фиксированные диски, предоставляют в распоряжение пользователей программу, которая позволяет выполнять корректировку таблицы разделов. (Утилита системы DOS FDISK

как раз является такой программой.)

Таблица состоит из четырех 16-битовых записей, начинающихся со смещения 1ВЕН

в загрузочном секторе диска. Формат записи таблицы разделов фиксированного  диска таков:

Смещение от              Значение начала записи

00H      Индикатор загрузки (80Н = загружаемый, 0 = не загружаемый раздел)

01H      Начальный номер головки

02H      Начальные номер цилиндра (10 битов) и номер сектора (6 битов)

04H      Системный индикатор:

1 - первичный раздел DOS, 12-битовая FAT;

2 - XENIX;

4 - первичный раздел DOS, 16-битовая FAT;

5 - расширенный раздел DOS;

8 - другой, отличный от DOS раздел.

05H      Последний номер головки

06H      Последние номера  цилиндра и сектора

08H      Начальный сектор (относительно начала диска)

0CH      Число секторов в разделе

В моем случае таблица раздела первичного раздела DOS имеет вид:

Диск D:

Зная координаты первого и последнего сектора раздела, можно вычислить число секторов от начала раздела DOS до начала данного раздела и суммарное количество секторов в разделе. И обратно, имея информацию о числе секторов между началом раздела DOS и началом данного раздела, координатах первого сектора раздела DOS, суммарном количестве секторов в разделе, количестве сторон, цилиндров и секторов на дорожку, можно получить координаты первого и последнего сектора раздела.

Похожие материалы

Информация о работе

Тип:
Отчеты по лабораторным работам
Размер файла:
176 Kb
Скачали:
0