Вариант 11 Файловая система
Разработать приложение, позволяющее организовать работу с файлами некоторой файловой системы. Информация о некотором файле (обычном файле, каталоге или специальном файле) хранится в его описателе.
Описатель обычного файла содержит следующую информацию: дата и время создания файла, последней модификации; права доступа к файлу (можно/нельзя читать из файла, писать в файл, исполнять); размер файла в байтах и виртуальный адрес размещения файла на диске.
Описатель каталога содержит следующую информацию: права доступа к каталогу (можно/нельзя читать из каталога, писать в каталог); размер каталога в байтах и виртуальный адрес размещения каталога на диске; указатель на описание структуры каталога.
Описатель специального файла содержит следующую информацию: права доступа к файлу (можно/нельзя читать из файла, писать в файл); тип файла (байт или блок-ориентированный); размер файла в байтах и виртуальный адрес драйвера устройства.
В качестве виртуального адреса использовать адрес динамически выделенной памяти и отображать его в виде шестнадцатеричного числа.
Каждый файл имеет уникальную характеристику – идентификатор файла (последовательность латинских букв не более 24 символов). Информация обо всех файлах сведена в таблицу, каждый элемент которой содержит идентификатор файла и указатель на его описатель. Элементы таблицы упорядочены в алфавитном порядке.
Структура каталога в свою очередь может быть описана так же таблицей. Таким образом, указатель на описатель структуры каталога в описателе каталога – указатель на таблицу файлов. Специальные файлы могут размещаться только в основном (корневом) каталоге.
Обеспечить выполнение следующих операций:
-
Для таблицы:
-
включить новый элемент, не нарушая упорядоченности;
-
найти элемент по заданному идентификатору файла;
-
удалить элемент, заданный идентификатором файла;
-
показать содержимое таблицы.
-
-
Для любого файла:
-
вывести информацию о файле;
-
определить (вернуть в качестве результата) тип файла;
-
получить права доступа к файлу; изменить права доступа;
-
получить размер файла; изменить размер файла (с изменением выделенной области).
-
-
Для приложения:
-
включить новый файл в файловую систему с учётом маршрутного имени и прав доступа;
-
внести изменения в права доступа к файлу или размер файла;
-
удалить файл из файловой системы с учётом маршрутного имени и прав доступа (при удалении каталога удаляются все файлы и подкаталоги);
-
вывести информацию об именах файлов, их типе и правах доступа;
-
(*) показать информацию обо всех файлах, включённых в файловую систему, используя класс-итератор.
-
- Вариант 1 Линия метро
- Порядок выполнения работы
- Вариант 2 Гостиница
- Порядок выполнения работы
- Вариант 3 Программа на ассемблере
- Порядок выполнения работы
- Вариант 4 Студенты института
- Порядок выполнения работы
- Вариант 5 Книжный каталог
- Порядок выполнения работы
- Вариант 6 Таблица идентификаторов
- Порядок выполнения работы
- Вариант 7 Учебные группы
- Порядок выполнения работы
- Вариант 8 Информационные агентства
- Порядок выполнения работы
- Вариант 9 Учебный план
- Порядок выполнения работы
- Вариант 10 Спортивная команда
- Порядок выполнения работы
- Вариант 11 Файловая система
- Порядок выполнения работы
- Вариант 12 Телефонный сервис
- Порядок выполнения работы
- Вариант 13 Торговый склад
- Порядок выполнения работы
- Вариант 14 Жилищный фонд
- Порядок выполнения работы
- Вариант 15 Туристическое бюро
- Порядок выполнения работы
- Вариант 16 Банковские операции
- Порядок выполнения работы
- Вариант 17 Отдел кадров
- Порядок выполнения работы
- Вариант 18 Жилищная контора
- Порядок выполнения работы
- Вариант 19 Налоговая служба
- Порядок выполнения работы
- Вариант 20 Сетевой сервер
- Порядок выполнения работы
- Вариант 21 Семестровый контроль
- Порядок выполнения работы
- Вариант 22 Сетевой сервис
- Порядок выполнения работы