Моделирование файловой системы FAT16

Автор: Пользователь скрыл имя, 12 Апреля 2011 в 13:33, курсовая работа

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

Целью данного проекта является наглядное моделирование работы файловой системы FAT16, которая использовалась в MS-DOS 3.31.

Содержание

ВВЕДЕНИЕ 3
1 ПОСТАНОВКА ЗАДАЧИ 4
1.1 ТЕОРЕТИЧЕСКОЕ ВВЕДЕНИЕ 4
1.2 ПОСТАНОВКА ЗАДАЧИ 7
2 ПРОЕКТИРОВАНИЕ 8
2.1 ВЫБОР ОПЕРАЦИОННОЙ СИСТЕМЫ 8
2.2 ВЫБОР ЯЗЫКА ПРОГРАММИРОВАНИЯ 8
2.3 ВЫБОР ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПРОМЕЖУТОЧНОГО УРОВНЯ 8
2.4 ВЫБОР ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ 8
3 РАЗРАБОТКА 9
3.1 ВЫБОР АРХИТЕКТУРЫ СИСТЕМЫ 9
3.2 ПОСТРОЕНИЕ ДИАГРАММ ПРЕЦЕДЕНТОВ И ПОСЛЕДОВАТЕЛЬНОСТИ 9
3.3 РАЗРАБОТКА ВАРИАНТОВ ИСПОЛЬЗОВАНИЯ 11
3.4 РАЗРАБОТКА ГРАФИЧЕСКОГО ИНТЕРФЕЙСА 13
3.5 РАЗРАБОТКА АРХИТЕКТУРЫ ПРИЛОЖЕНИЯ 14
3.6 РАЗРАБОТКА АЛГОРИТМОВ РАБОТЫ ПРОГРАММЫ 16
3.6.1 Метод FileCreate_Click класса Mainform. 17
3.6.2 Метод FileDelete_Click класса Mainform. 18
4 ТЕСТИРОВАНИЕ ПРОГРАММЫ 19
4.1 ТЕСТИРУЕМЫЕ ФУНКЦИИ 19
4.2 ТЕСТИРОВАНИЕ 19
5 РУКОВОДСТВО ОПЕРАТОРА 21
5.1 НАЗНАЧЕНИЕ ПРОГРАММЫ 21
5.2 ТЕХНИЧЕСКИЕ СРЕДСТВА ДЛЯ ЗАПУСКА ПРОГРАММЫ 21
5.3 РАБОТА С ПРОГРАММОЙ 21
ВЫВОДЫ 25
ПЕРЕЧЕНЬ ССЫЛОК 26
ПРИЛОЖЕНИЕ А 27
ПРИЛОЖЕНИЕ Б 31

Работа содержит 1 файл

ПЗ.doc

— 1.29 Мб (Скачать)

      Прецедент «Добавление BAD кластеров» заключается в добавлении поврежденных кластеров в файловую систему. При выполнении данного прецедента попадаем в прецедент «Визуализация результата».

      Прецедент «Ввод данных с клавиатуры» заключается в вводе соответствующих значений в зависимости от прецедента из которого был осуществлен переход. При выполнении данного прецедента выполняется переход в один из трех прецедентов:

    1. «Расположение нового файла»;
    2. «Удаление выбранного файла»;
    3. «Создание раздела».

      Прецедент «Расположение нового файла» заключается в размещении файловой системой нового файла в разделе. При выполнении данного прецедента сразу попадаем в прецедент «Визуализация результата».

      Прецедент «Удаление выбранного файла» заключается  в удалении файла из текущего раздела. При выполнении данного прецедента сразу попадаем в прецедент «Визуализация результата».

      Прецедент «Создание раздела» заключается  в создании нового раздела для  работы с файлами. При выполнении данного прецедента сразу попадаем в прецедент «Визуализация результата».

      Прецедент «Визуализация результата» отвечает за отображение всех изменений в  файловой системе на карте диска  и в списке файлов.

      3.3 Разработка вариантов использования

 

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

Номер ВИ – 01
Название Создание раздела.
Участники Пользователь
Описание При выполнении данного варианта использования  пользователь вводит данные о размере раздела и размере кластера с помощью клавиатуры.
Предварительные условия Нет.
Выходные  условия Параметры нового раздела переданы файловой системе.
Порядок действий
  1. Пользователь в любом порядке вводит информацию о размере раздела и кластера.
Альтернативный порядок действий Нет.
Приоритет Высокий.
 
Номер ВИ – 02
Название Создание файла.
Участники Пользователь.
Описание При выполнении данного варианта использования  пользователь вводит данные о новом файле (размер, имя, расширение) с помощью клавиатуры.
Предварительные условия Заранее созданный  раздел.
Выходные  условия Параметры нового файла переданы файловой системе.
Порядок действий
  1. Пользователь в любом порядке вводит информацию об имени файла, его размере и расширении.
Альтернативный  порядок действий Нет.
Приоритет Высокий.
 
Номер ВИ – 03
Название Удаление файла.
Участники Пользователь.
Описание При выполнении данного варианта использования  пользователь задает номер удаляемого файла с помощью клавиатуры.
Предварительные условия Создан хотя бы один файл.
Выходные  условия Номер удаляемого файла передан файловой системе.
Порядок действий
  1. Пользователь вводит номер файла.
Альтернативный  порядок действий Нет.
Приоритет Высокий.
 
Номер ВИ – 04
Название Добавление  BAD кластеров.
Участники Пользователь.
Описание При выполнении данного варианта использования  в текущий раздел добавляются поврежденные кластеры, закрытые для записи.
Предварительные условия Создан раздел.
Выходные  условия Файловой системой добавлены BAD кластеры. Визуализация на карте диска.
Порядок действий 1. Пользователь  выбирает пункт меню «Добавить BAD кластеры».
Альтернативный  порядок действий Нет.
Приоритет Средний.
 
Номер ВИ – 05
Название Создание раздела.
Участники Файловая система.
Описание При выполнении данного варианта использования файловая система создает новый раздел.
Предварительные условия Выполнен ввод данных о параметрах раздела.
Выходные  условия Создан раздел. Визуализация на карте диска.
Порядок действий 1. Пользователь  подает запрос на создание раздела.
Альтернативный  порядок действий Нет.
Приоритет Высокий.
 
Номер ВИ – 06
Название Расположение  нового файла.
Участники Файловая система
Описание При выполнении данного варианта использования  файловая система располагает новый файл в текущем разделе.
Предварительные условия Выполнен ввод данных о параметрах файла.
Выходные  условия Создан новый  файл. Визуализация на карте диска и в списке файлов.
Порядок действий
  1. Пользователь подает запрос на создание файла.
Альтернативный  порядок действий Нет.
Приоритет Высокий.
 
Номер ВИ – 07
Название Удаление выбранного файла.
Участники Файловая система
Описание При выполнении данного варианта использования  файловая система удаляет выбранный  файл из текущего раздела.
Предварительные условия Выполнен ввод номера файла.
Выходные  условия Файл удален. Визуализация на карте диска и  в списке файлов 
Порядок действий
  1. Пользователь подает запрос на удаление файла.
Альтернативный  порядок действий Нет.
Приоритет Высокий.

      3.4 Разработка графического интерфейса

 

      Исходя  из анализа поставленной задачи, выяснилось, что графический интерфейс разрабатываемого программного продукта должен содержать: меню, область для визуализации, область для вывода списка файлов, а также информацию о текущей файловой системе (рисунок 1.2).

      Ввод  входных данных выполняется с  помощью дополнительных диалоговых окон.

      Главное меню должно включать такие пункты как «Операции с файловой системой», «Операции с файлами» и «Выход из программы». В пункте «Операции с файловой системой» должны присутствовать такие подпункты: «Создать», «Закрыть текущую», «Добавить BAD кластеры» и «Подсветить кластер». В пункте «Операции с файлами» должны присутствовать такие подпункты «Создать», «Удалить выбранный». В области для визуализации результатов работы файловой системы должна изображаться карта текущего раздела.

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

 

Рисунок 3.3 – Уточненный графический интерфейс пользователя

      3.5 Разработка архитектуры приложения

 

      Исходя  из анализа поставленной задачи, а  так же предметной области разрабатываемого проекта, были выделены такие основные сущности как FileSystem (файловая система), GUI (интерфейс пользователя). Т.к. информация о разделе, файлах и номере файла задается через диалоговые окна, то GUI можно разбить на 4 сущности: Delete (удаление файла), FileParameters (задание параметров файла), Parameters (задание параметров раздела), Mainform (визуализация и обработка команд). Следуя принципам ООП, эти сущности можно принять за шаблоны создаваемых классов.

      Класс FileSystem отвечает за хранение всех параметров файловой системы и содержит следующие поля:

    1. BinaryMap – массив описывающий состояние кластеров;
    2. ClusterSize – размер кластера;
    3. ClustOnFile – массив содержащий количество кластеров необходимое для каждого файла;
    4. Cnt – счетчик;
    5. Date – массив дат создания файлов;
    6. DecimalMap – массив со ссылками на следующие кластеры. Фактически описывает расположение файлов на диске;
    7. StartCluster – массив начальных кластеров файлов;
    8. EndCluster – массив конечных кластеров файлов;
    9. FileName – массив имен файлов;
    10. FileSize – массив размеров файлов в байтах;
    11. FreeSpace – оставшееся свободное место;
    12. IsDeleted – массив описывающий удален файл или нет;
    13. Map – карта диска. Представлена изображением в формате “.*bmp”;
    14. NumberOfCluster – количество кластеров в разделе;
    15. NumberOfFiles – количество файлов в разделе;
    16. PartitionSize – размер раздела в байтах;
    17. Pointer – указатель на следующий свободный кластер;
    18. ToDelete – переменная для передачи данных о номере удаляемого файла.

      Класс Mainform отвечает за визуализацию и обработку команд и содержит следующие методы:

  1. FSCreate_Click – метод создающий новый раздел;
  2. FSClose_Click – метод закрывающий текущий раздел;
  3. Ld – метод инициализирующий основные массивы и переменные;
  4. FileCreate_Click – метод создающий новый файл;
  5. FileDelete_Click – метод удаляющий выбранный файл;
  6. Highlighter_Click – подсветка кластера;
  7. BADFill_Click – добавление поврежденных кластеров;
  8. ExitButton_Click – выход из программы.

      Класс Parameters имеет отношение ассоциации с классом Mainform, а так же содержит следующий метод:

    1. OK_Click – метод для передачи параметров о разделе.

      Класс FileParameters  имеет отношение ассоциации с классом Mainform, а так же содержит следующий метод:

    1. NewFile_Click – метод для передачи данных о новом файле.

      Класс Delete имеет отношение ассоциации с классом Mainform, а так содержит следующий метод:

  1. OK_Click – метод для передачи номера удаляемого файла.

      Класс Cluster имеет отношение ассоциации с классом Mainform, а так содержит следующий метод:

    1. OK_Click – метод для передачи номера удаляемого файла.

      Диаграмма классов, с помощью которой можно  визуализировать все описанные  выше классы, методы и поля, изображена на рисунке 3.4. 

 

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

      3.6 Разработка алгоритмов работы  программы

 

      Исходя  из анализа поставленной задачи, а также разработанной диаграммы классов, была выделена группа методов, работа которых является особо важной: метод FileCreate_Click класса Mainform и метод FileDelete_Click класса Mainform. Для этих методов были разработаны обобщенные алгоритмы работы.

 

      3.6.1 Метод FileCreate_Click класса Mainform

 

      Метод FileCreate_Click класса Mainform, выполняет размещение нового файла в разделе. Указатель pointer, в начале алгоритма уже указывает на свободный кластер. Алгоритм работы описанного метода изображен на рисунке 3.5. 

Информация о работе Моделирование файловой системы FAT16