diff --git a/hueta.c b/hueta.c deleted file mode 100644 index 065ea3d..0000000 --- a/hueta.c +++ /dev/null @@ -1,35 +0,0 @@ -#include "config.h" - -typedef union -{ - uint8_t byte; - struct hueta - { - uint8_t bit8 : 1; - uint8_t bit7 : 1; - uint8_t bit6 : 1; - uint8_t bit5 : 1; - uint8_t bit4 : 1; - uint8_t bit3 : 1; - uint8_t bit2 : 1; - uint8_t bit1 : 1; - }; -}MYBYTE; - - -// кодирование -uint8_t x = 0; -uint8_t mas[] = {1, 0, 1, 1, 0, 0, 0, 1}; -for(int i = 0; i < 8; i++) -{ - x += mas[7-i] * (1 << i); -} - - -uint8_t x = 10110001; -uint8_t mas[] = {0, 0, 0, 0, 0, 0, 0, 0}; -for(int i = 0; i < 8; i++) -{ - mas[i] = x & 1; - x >>= 1; -} diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..b45e48e --- /dev/null +++ b/readme.md @@ -0,0 +1,20 @@ +# Лабораторная работа №3 +Необходимо реализовать простую файловую систему на основе дерева. В файловой системе есть две сущности: +* Файлы. Считается, что содержимого файлов нет. Атрибутами файла являются дата создания, название и расширение файла. +* Папки. Папки могут хранить в себе файлы, а также другие папки. У папок есть следующие атрибуты: дата создания и количество сущностей, лежащих в папке. + +Программа должна представлять из себя консольное приложение, эмитирующее консоль ОС Linux. Минимум, должны быть доступны следующие команды: +* cd – переход по указанному пути; +* ls – просмотр текущей директории. Также должен быть доступен запуск команды с флагом –l, выводящим атрибуты сущностей директории; +* rm – удаление файлов. Должна поддерживать флаг –r для рекурсивного удаления папки и ее содержимого; +* mkdir – создание папки; +* touch – создание файла; +* find – поиск файлов по указанному пути. + +Файловая система должна в режиме реального времени хранится в файле (все изменения мгновенно заносятся в файл). Структуру хранения выбрать самостоятельно, главное – оптимизация по памяти. + +Для тестов файловой системы и показа ее на защите лабораторной работы необходимо, чтобы глубина дерева была не меньше 15, степень дерева не меньше 30, общее количество сущностей в файловой системе не меньше 100. + +Будет плюсом: +* Реализация других команд, помимо основных (заранее обговорить какие); +* Поддержка регулярных выражений в командах rm и find. diff --git a/tz.txt b/tz.txt deleted file mode 100644 index 8272cc2..0000000 --- a/tz.txt +++ /dev/null @@ -1,19 +0,0 @@ -Лабораторная работа №3 -Необходимо реализовать простую файловую систему на основе дерева. В файловой системе есть две сущности: -• Файлы. Считается, что содержимого файлов нет. Атрибутами файла являются дата создания, название и расширение файла. -• Папки. Папки могут хранить в себе файлы, а также другие папки. У папок есть следующие атрибуты: дата создания и количество сущностей, лежащих в папке. -Программа должна представлять из себя консольное приложение, эмитирующее консоль ОС Linux. Минимум, должны быть доступны следующие команды: -• cd – переход по указанному пути; -• ls – просмотр текущей директории. Также должен быть доступен запуск команды с флагом –l, выводящим атрибуты сущностей директории; -• rm – удаление файлов. Должна поддерживать флаг –r для рекурсивного удаления папки и ее содержимого; -• mkdir – создание папки; -• touch – создание файла; -• find – поиск файлов по указанному пути. - -Файловая система должна в режиме реального времени хранится в файле (все изменения мгновенно заносятся в файл). Структуру хранения выбрать самостоятельно, главное – оптимизация по памяти. -Для тестов файловой системы и показа ее на защите лабораторной работы необходимо, чтобы глубина дерева была не меньше 15, степень дерева не меньше 30, общее количество сущностей в файловой системе не меньше 100. - - -Будет плюсом: -• Реализация других команд, помимо основных (заранее обговорить какие); -• Поддержка регулярных выражений в командах rm и find.