struct-lab-03/tz.txt

20 lines
2.6 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

Лабораторная работа №3
Необходимо реализовать простую файловую систему на основе дерева. В файловой системе есть две сущности:
• Файлы. Считается, что содержимого файлов нет. Атрибутами файла являются дата создания, название и расширение файла.
• Папки. Папки могут хранить в себе файлы, а также другие папки. У папок есть следующие атрибуты: дата создания и количество сущностей, лежащих в папке.
Программа должна представлять из себя консольное приложение, эмитирующее консоль ОС Linux. Минимум, должны быть доступны следующие команды:
• cd переход по указанному пути;
• ls просмотр текущей директории. Также должен быть доступен запуск команды с флагом l, выводящим атрибуты сущностей директории;
• rm удаление файлов. Должна поддерживать флаг r для рекурсивного удаления папки и ее содержимого;
• mkdir создание папки;
• touch создание файла;
• find поиск файлов по указанному пути.
Файловая система должна в режиме реального времени хранится в файле (все изменения мгновенно заносятся в файл). Структуру хранения выбрать самостоятельно, главное оптимизация по памяти.
Для тестов файловой системы и показа ее на защите лабораторной работы необходимо, чтобы глубина дерева была не меньше 15, степень дерева не меньше 30, общее количество сущностей в файловой системе не меньше 100.
Будет плюсом:
• Реализация других команд, помимо основных (заранее обговорить какие);
• Поддержка регулярных выражений в командах rm и find.