Программа поиска в свободных кластерах символьных последовательностей из заданного набора

Автор работы: Пользователь скрыл имя, 05 Апреля 2011 в 18:19, курсовая работа

Описание работы

В данной курсовой работе необходимо разработать программу для поиска в свободных кластерах символьных последовательностей из заданного набора.

Файлы: 1 файл

Курсач_СПО.(готов).doc

— 756.50 Кб (Скачать файл)

Федеральное агентство по образованию

ГОУ ВПО  «Уральский государственный технический  университет – УПИ 

имени первого Президента России Б.Н.Ельцина» 

Кафедра «Автоматика и информационные технологии» 

              Оценка  проекта:      ____________ 

              Члены комиссии: ____________

                                            

                                             ____________  

Программа поиска в свободных кластерах  символьных последовательностей из заданного набора 

Курсовая  работа по дисциплине

«Системное программное обеспечение» 

Пояснительная записка  

23.01 000000 042 ПЗ 
 
 
 

Руководитель    С. С. Соколов

доц. тех. наук 

Студент    С. И. Суриков

Р-37031 
 
 
 
 
 
 
 
 

2010

СОДЕРЖАНИЕ

ПОСТАНОВКА  ЗАДАЧИ

    В данной курсовой работе необходимо разработать программу для поиска в свободных кластерах символьных последовательностей из заданного набора.

 

ВВЕДЕНИЕ

     В современном быстроменяющемся мире одним из важнейших факторов успеха стало владение информацией. Зачастую даже имея данные, сохранённые на электронном или механическом носителе, сложно запомнить, что именно и где хранится. С появлением понятия файл, поиск информации на диске свёлся к поиску необходимого файла. Для удобства пользования электронными носителями постоянно создаются и совершенствуются файловые системы и системы управления томами.

    Так называемая файловая система FAT использовалась во всех версиях MS-DOS и в первых двух выпусках OS/2 (версии 1.0 и 1.1). Каждый логический том имеет собственный FAT, который выполняет две функции: содержит информацию распределения для каждого файла в томе в форме списка связей модулей распределения (кластеров) и указывает, какие модули распределения свободны.

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

       
 
 
 
 
 
 
 
 
 
 

  1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ
 
    1. Структура диска
 

    Персональный  компьютер обычно комплектуется одним или более накопителями на магнитных дисках (НМД). Однако операционная система позволяет вам разбивать НМД на части, причем каждая часть будет рассматриваться MS-DOS как отдельный, "логический" диск.

    Первые  персональные компьютеры IBM PC были укомплектованы только накопителями на гибких магнитных дисках (НГМД). Дискеты позволяют хранить относительно небольшие объемы информации, поэтому делить их на части не имеет смысла. Следующая модель компьютера IBM PC/XT имела НМД объемом 10 или 20 Мбайт. При использовании таких дисков и операционных систем MS-DOS версий до 3.20 у пользователей не возникало никаких проблем и желания разбить диск относительно малого объема на еще меньшие части.

    Проблемы  возникли, когда производители НМД  освоили выпуск дисков объемом 40 Мбайт и больше. Оказалось, что используемый в MS-DOS механизм 16-разрядной адресации секторов не позволяет использовать диски объемом, большим, чем 32 Мбайт.

    Операционная  система MS-DOS версии 3.30 предложила выход  из создавшегося положения. С помощью программы fdisk.exe можно было разбить физический диск на логические, каждый из которых не должен превышать по объему 32 Мбайт.

    Впоследствии  в версии 4.00 операционной системы MS-DOS и в версии 3.31 операционной системы COMPAQ DOS указанное выше ограничение на размер логического диска было снято, однако схема разделения физического диска на логические диски полностью сохранилась. 

    1. Загрузочная запись

    Самый первый сектор логического диска (и  самый первый сектор на системной  дискете) занимает загрузочная запись (Boot Record). Эта запись считывается из активного раздела диска программой главной загрузочной записи (Master Boot Record) и запускается на выполнение. Задача загрузочной записи - выполнить загрузку операционной системы. Каждый тип операционной системы имеет свою загрузочную запись. Даже для разных версий одной и той же операционной системы программа загрузки может выполнять различные действия.

    Кроме программы начальной загрузки операционной системы в загрузочной записи находятся параметры, описывающие характеристики данного логического диска. Все эти параметры располагаются в самом начале сектора, в его так называемой форматированной области. Формат этой области изменился в версии 4.0 операционной системы MS-DOS.

    1. Формат загрузочной записи
 

     Формат  загрузочной записи для версий MS-DOS, более ранних, чем 4.0 имеет вид, представлены в табл. 1.

Таблица 1

Формат  загрузочной записи MS-DOS версии ниже 4.0

Смещение Размер Содержимое
0 3 Команда JMP xxxx - ближний переход на программу начальной загрузки
3 8 Название фирмы-изготовителя операционной системы и версия, например: "IBM 4.0"
11 13 Блок параметров BIOS (BPB)
24 2 Количество  секторов на дорожке
26 2 Количество  головок (поверхностей диска)
28 2 Количество скрытых секторов, эти секторы могут использоваться для схемы разделения физического диска на разделы и логические диски

     В самом начале загрузочного сектора  располагается команда внутрисегментного  перехода JMP. Она нужна для обхода форматированной зоны сектора и передачи управления загрузочной программе, располагающейся со смещением 30.

     Название  фирмы-изготовителя не используется операционной системой.

     Со  смещением 11 располагается BPB - блок параметров BIOS , основная работа с которым и  будет проводиться в ходе создания программы. Именно этот блок содержит всю необходимую информацию для создания программы. Этот блок активно используется дисковыми драйверами.

     Для современных версий MS-DOS загрузочный  сектор имеет формат отличный от используемого  в версиях более ранних, чем 4.0. Формат загрузочного сектора современных версий MS-DOS имеет структуру, представленную в табл. 2.

Таблица 2

Формат  загрузочной записи современных версий MS-DOS

Смещение Размер Содержимое
0 3 Команда JMP xxxx - ближний переход на программу начальной загрузки
3 8 Название фирмы-изготовителя операционной системы и версия
11 25 Extended BPB - расширенный  блок параметров BIOS
36 1 Физический  номер устройства (0 -НГМД, 80h -НМД)
37 1 Зарезервировано
38 1 Символ ')' - признак  расширенной загрузочной записи
39 4 Серийный номер  диска (Volume Serial Number), создается во время  форматирования диска
43 11 Метка диска (Volume Label)
54 8 Зарезервировано, обычно содержит запись типа 'FAT12 ', которая  идентифицирует формат таблицы размещения файлов FAT

     Первые  два поля в загрузочном секторе  аналогичны описанным раньше.

     Поле  со смещением 38 всегда содержит символ ')'. Этот символ означает, что используется формат расширенной загрузочной  записи.

     Серийный  номер диска формируется во время форматирования диска на основе даты и времени форматирования. Это поле может быть использовано для определения факта замены дискеты.

     Метка диска формируется при форматировании и может быть изменена командой LABEL операционной системы MS-DOS. Одновременно метка диска помещается в корневой каталог.

    1. Расширенный блок параметров BIOS

     Рассмотрим  более детально формат расширенного блока параметров BIOS.

     Поле  загрузочного сектора со смещением 11 содержит расширенный блок параметров BIOS . Он состоит из обычного блока BPB и дополнительного расширения, структура расширенного блока представлена в виде табл. 3.

Таблица 3

Расширенный блок параметров BIOS

Смещение, байт Размер, байт Имя поля Описание
1 2 3 4
0 2 sect_siz Количество  байт в одном секторе диска
2 1 clustsiz Количество  секторов в одном кластере
3 2 res_sect Количество  зарезервированных секторов
5 1 fat_cnt Количество  таблиц FAT
6 2 root_siz Максимальное  количество дескрипторов файлов в корневом каталоге диска
8 2 tot_sect Общее количество секторов на носителе данных (в разделе MS-DOS)
10 1 media Байт-описатель  среды носителя данных
11 2 fat_size Количество  секторов, занимаемых одной копией FAT
13 2 sectors Количество  секторов на дорожке
15 2 heads Количество  магнитных головок
17 2 hidden_l Количество скрытых секторов для раздела, который по размеру меньше 32 Мбайт
1 2 3 4
19 2 hidden_h Количество  скрытых секторов для раздела, превышающего по размеру 32 Мбайт
21 4 tot_secs Общее количество секторов на логическом диске для  раздела, превышающего по размеру 32 Мбайт

Информация о работе Программа поиска в свободных кластерах символьных последовательностей из заданного набора