Структуры данных. Файловые системы

Download Report

Transcript Структуры данных. Файловые системы

Структуры данных

     Работа с большим количеством данных требует упорядоченности Для упорядочения применяются структуры данных Линейные (списки) Табличные Иерархические (дерево)

Структуры данных

     Пример – книга Разобранная на перемешанные страницы книга остается набором данных, но потеряет свое назначение, извлечь из нее информацию будет сложно Если собрать все листы в правильную последовательность – простейшая структура данных (линейная) Для поиска нужных данных придется прочитать всю с начала Для быстрого поиска данных существует иерархическая структура

Структуры данных

    Книга разбивается на части, разделы, главы, параграфы и т.д.

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

Структуры данных

  Линейная структура (список) – упорядоченная структура, в которой адрес элемента данных однозначно определяется его номером (индексом) Проставляя номера на отдельных страницах рассыпанной книги, мы создаем структуру списка

Структуры данных

 Табличная структура – упорядоченная структура, в которой адрес элемента данных однозначно определяется номером строки и номером столбца, на пересечении которых находится ячейка с искомым элементом

Структуры данных

  Иерархическая структура - структура, в которой адрес элемента данных определяется путем (маршрутом доступа), идущим от вершины структуры к данному элементу Иерархическую структуру образуют, например, почтовые адреса

Структуры данных

    Пример адреса: Россия\Ростовская область\Ростов\ул. Большая Садовая\д. 1 Если данные хранятся в любой организованной структуре, то каждый элемент приобретает новое свойство - адрес Для упрощения поиска данные упорядочиваются с помощью сортировки – по алфавиту, по возрастанию порядкового номера и т.д.

Линейная и табличная структура более просто организованы, но добавление/исключение нарушает упорядоченность структуры, затруднен поиск

Структуры данных

      Перевод студента в другую группу – изменение журнала посещаемости Если вписать в конец группы – нарушится упорядоченность по алфавиту Если вписать по алфавиту – сменятся порядковые номера всех студентов, следующих за ним При добавлении/удалении элемента в упорядоченную простую структуру может меняться адрес других элементов В иерархической структуре введение нового элемента не нарушает структуры дерева (добавление нового факультета никак не отразится на пути доступа к сведениям другого факультета) Недостаток – трудоемкость записи адреса и сложность упорядочения

Хранение данных

     Для хранения информации, как и для хранения любых объектов (книг, товаров), необходима определенная система, организация хранения, поиска и доступа Важен эффективный способ хранения данных на внешних носителях большого объема Разработчики ПО предложили способ организации хранения информации в виде файлов Файл – последовательность произвольного числа байтов, обладающая уникальным собственным именем Обычно в отдельном файле хранят данные, относящиеся к одному типу, тип данных определяет тип файла

Хранение данных

     Для хранения информации, как и для хранения любых объектов (книг, товаров), необходима определенная система, организация хранения, поиска и доступа Важен эффективный способ хранения данных на внешних носителях большого объема Разработчики ПО предложили способ организации хранения информации в виде файлов Файл – последовательность произвольного числа байтов, обладающая уникальным собственным именем Обычно в отдельном файле хранят данные, относящиеся к одному типу, тип данных определяет тип файла

Хранение данных

      Файл можно представить как документ, в который может добавляться и из которого может удаляться информация Файл может быть пустым Файл имеет имя и занимает место на носителе С точки зрения ОС весь диск (носитель) представляет собой набор кластеров (512 байт и больше) Кластер группа секторов, файл хранится кластерами Кластер – наименьшее место на диске, которое может быть выделено для хранения файла

Хранение данных

    Имя файла сопоставлено адресу размещения файла на носителе Таблица соответствия имен файлов адресам на физическом носителе – самая главная в файловой системе Файловая система – совокупность служебных таблиц, содержащая необходимую информацию для работы с файлами на дисках, а также правила именования, размещения, хранения и доступа к файлам Чтобы использовать диск нужно создать на нем файловую систему, при этом все дисковое пространство делиться на кластера

Хранение данных

     В таблицах файловой системы для каждого файла хранится номер начального кластера и длина файла Для удобства работы файлы объединяют в группы, их имена располагают в файле спец. вида, называемом каталогом (папкой) Каталоги образуют иерархическую (древовидную) структуру Каталог, расположенный в корне дерева (на вершине иерархии), называется корневым В каждом каталоге могут быть созданы другие – вложенные (дочерние) - каталоги

Хранение данных

Хранение данных

Хранение данных

        Хранение файлов – в виде иерархической структуры Элемент (файл) УНИКАЛЬНО определяется своим путем (маршрутом) от вершины Linux – одна иерархическая структура (и один корневой каталог) для всех дисков Windows – на каждом диске своя иерархическая структура (и корневой каталог) Linux / home/user/documents2011/ расписание.doc

Windows – c:\ users\user\documents2011\ расписание.doc

d:\ users\user\documents2011\ расписание.doc

Полное имя файла – собственное имя файла с путем доступа к нему, оно уникально

Хранение данных

     Не может быть двух файлов с одинаковым полным именем (т.е. в одном каталоге) Могут быть два файла с одинаковым собственным именем и разными полными именами (т.е. в разных каталогах) /home/user/docs2010/ расписание.doc

/home/user/docs2011/ расписание.doc

Каталог реально является файлом, содержащим список файлов в этом каталоге, не может быть двух одинаковых каталогов в другом каталоге

Хранение данных

    В Linux существует только один корневой каталог, а все остальные файлы и каталоги вложены в него Чтобы получить доступ к файлам и каталогам на каком нибудь диске, необходимо смонтировать этот диск командой mount Например, чтобы открыть файлы на CD, нужно, говоря простым языком, сказать операционной системе: «возьми файловую систему на этом компакт-диске и покажи её в каталоге /mnt/cdrom» Все файлы и каталоги, находящиеся на CD, появятся в этом каталоге /mnt/cdrom, который называется точкой монтирования

Хранение данных

     Файловые системы устройств как бы становятся частью единой файловой системы / /home /users/student1 другой диск /media/flash /films флеш-диск

Хранение данных

       Кроме названия каждый файл может иметь расширение Расширение исп-ся для того, чтобы определенным образом охарактеризовать содержимое файла .doc, .txt – указывают на то, что файл содержит документ или текст Расширение размещается в правом конце названия файла и отделяется от названия точкой – расписание.

doc Большинство программ при создании автоматически снабжают файл расширением По расширению файла ОС определяет формат тип и формат файла и запускает работающую с ним программу Иногда могут использоваться несколько расширений, следующих друг за другом, например, «.tar.gz»

Хранение данных

          Распространенные расширения файлов DOC Документ Microsoft Office Word 1997—2003 XLS Книга Microsoft Office Excel 1997—2003 PPT Презентация Microsoft Office PowerPoint 1997—2003 TXT текстовый файл GZ, 7z – Archive JPG, JPEG, BMP, TIFF, PNG – графический файл MP3 – звуковой файл AVI, MPG – видео-файл SH, EXE – исполняемый файл

Операции с файлами

        Создание – выделение места, присвоение имени, регистрация в файловой системе Открытие – поиск файла, организация вспомогательных таблиц для получения/помещения инф-ции из/в файл, предоставление доступа программы к файлу Закрытие – разрыв связи между файлом и программой Изменение (редактировние) – внесение изменений в содержимое Копирование – создание копии в другом/том же каталоге под тем же или другим именем Перемещение – создание копии и уничтожение оригинала Переименование Удаление

Операции с файлами

        Создание – выделение места, присвоение имени, регистрация в файловой системе Открытие – поиск файла, организация вспомогательных таблиц для получения/помещения инф-ции из/в файл, предоставление доступа программы к файлу Закрытие – разрыв связи между файлом и программой Изменение (редактировние) – внесение изменений в содержимое Копирование – создание копии в другом/том же каталоге под тем же или другим именем Перемещение – создание копии и уничтожение оригинала Переименование Удаление

Атрибуты файлов

      Каждый файл обладает рядом свойств – атрибутов Название Расширение Длина Время Дата создания/модификации