Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
отчет машки.doc
Скачиваний:
18
Добавлен:
15.04.2015
Размер:
499.71 Кб
Скачать

2.2. С помощью разработанного приложения прочитать системные структуры данных br, резервную копию br, bf_bpb, fsInfo для логического диска j: (usb-флеш-накопитель).

Зафиксировать полученные данные в отчете, расшифровать их и представить в виде соответствующих таблиц.

Содержимое 0-ой сектора (BR, BF_BPB)

Содержимое 1-ый сектор (BF_BPB и FSInfo)

Содержимое части 2-го сектора (BF_BPB) (заполнен нулями)

Резервная копия BR, находится в 6 секторе, его содержимое аналогично 0 сектору:

Расшифровка данных:

BF_BPB и BR:

Смещение

Размер, байт

Описание

Содержимое

0x00

3

Безусловный переход (jmp) на загрузочный код

EB5890

0x03

8

Идентификатор фирмы-изготовителя

4D 53 44 4F 53 35 2E 30

(MSDOS5.0)

0x0B

2

Число байт в секторе

020016=51210

0x0D

1

Число секторов в кластере

0816=810

0x0E

2

Число резервных секторов в резервной области раздела,

начиная с первого сектора раздела

002616=3810

0x10

1

Число таблиц (копий) FAT

0216=210

0x11

2

Для FAT12/FAT16 - количество 32-байтных дескрипторов файлов в корневом каталоге; для FAT32 это поле имеет значение 0

00 0016=010

0x13

2

Общее число секторов в разделе; если данное поле содержит 0,

то число секторов задается полем по смещению 0x20

00 0016=010

0x15

1

Тип носителя. Для жесткого диска имеет значение 0xF8;

для гибкого диска (2 стороны, 18 секторов на дорожке) – 0xF0

F8-жесткий диск

0x16

2

Для FAT12/FAT16 это поле содержит количество секторов, занимаемых одной копией FAT; для FAT32 это поле имеет значение 0

00 0016=010

0x18

2

Число секторов на дорожке (для прерывания 0x13)

00 3F16=6310

0x1A

2

Число рабочих поверхностей (для прерывания 0x13)

00 FF16=25510

0x1C

4

Число скрытых секторов перед разделом

00 00 00 3F16=6310

0x20

4

Общее число секторов в разделе. Поле используется, если в разделе свыше 65535 секторов, в противном случае поле содержит 0.

00 3C 3F C016=3 948 48010

Смещение

Размер, байт

Описание

Содержимое

0x24

4

Количество секторов, занимаемых одной копией FAT

00 00 0F 0916=3 84910

0x28

2

Номер активной FAT

00 0016=010

0x2A

2

Номер версии FAT32: старший байт - номер версии, младший – номер ревизии. В настоящее время используется значение 0:0

0016:0016=010:010

0x2С

4

Номер кластера для первого кластера корневого каталога

00 00 00 0216=210

0x30

2

Номер сектора структуры FSInfo в резервной области логического диска

00 0116=110

0x32

2

Номер сектора (в резервной области логического диска), используемого для хранения резервной копии загрузочного сектора

00 0616=610

0x34

12

Зарезервировано (содержит 0)

00 00 00 00 00 00 00 00 00 00 00 0016=010

FSInfo:

Смещение

Размер, байт

Описание

Содержимое

0x000

4

Значение 0x41615252 – сигнатура, которая служит признаком того, данный сектор содержит структуру FSInfo

41 61 52 52

0x004

480

Зарезервировано (содержит 0)

010

0x1E4

4

Значение 0x61417272 (сигнатура)

61 41 72 72

0x1E8

4

Содержит текущее число свободных кластеров на диске. Если в поле записано значение 0xFFFFFFFF, то число свободных кластеров неизвестно, и его необходимо вычислять

00 07 32 E116=471 77710

0x1EC

4

Содержит номер кластера, с которого дисковый драйвер должен начинать поиск свободных кластеров. Если в поле записано значение 0xFFFFFFFF, то поиск свободных кластеров нужно начинать с кластера номер 2

00 00 1E 9216=7 82610

0x1F0

12

Зарезервировано (содержит 0)

00 00 00 00 00 00 00 00 00 00 00 0016

0x1FC

4

Сигнатура 0xAA550000 – признак конца структуры FSInfo

55 АА 00 0016