Онлайн библиотека PLAM.RU


  • 2.1. Единица хранения данных
  • 2.2. Файловая структура
  • 2.3. Имена внешних носителей информации
  • 2.4. Файловые системы
  • Контрольные вопросы
  • Глава 2

    Структура хранения данных на внешних носителях информации

    2.1. Единица хранения данных

    При хранении данных решаются две проблемы: как сохранить данные в наиболее компактном виде и как обеспечить к ним удобный и быстрый доступ (если доступ не обеспечен, то это не хранение). Для обеспечения доступа необходимо, чтобы данные имели упорядоченную структуру. При этом образуются адресные данные. Без них нельзя получить доступ к нужным элементам данных, входящих в структуру.

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

    В качестве единицы хранения данных принят объект переменной длины, называемый файлом.

    Файл – это последовательность произвольного числа байтов, обладающая уникальным собственным именем.

    Обычно в отдельном файле хранят данные, относящиеся к одному типу. В этом случае тип данных определяет тип файла.

    Поскольку в определении файла нет ограничений на размер, можно представить себе файл, имеющий 0 байтов (пустой файл), и файл, имеющий любое число байтов.

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

    Имя файла состоит из двух частей: собственно имени и расширения файла. Например:

    Собственно имя файла может состоять из букв русского и английского алфавитов, цифр и специальных символов. При этом его длина не должна превышать 256 символов.

    В зависимости от расширения все файлы делятся на две большие группы: исполняемые и неисполняемые.

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

    – exe – готовый к исполнению файл (tetris.exe; winword.exe);

    – com – файл операционной системы (command.com);

    – sys – файл операционной системы (Io.sys);

    – bat – командный файл операционной системы MS-DOS (autoexec.bat).

    Неисполняемые файлы для запуска требуют установки специальных программ. Так, например, для того чтобы просмотреть текстовый документ, требуется наличие какого-либо текстового редактора. По расширению неисполняемого файла можно судить о типе данных, хранящихся в данном файле. Вот несколько примеров:

    2.2. Файловая структура

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

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

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

    Все современные операционные системы позволяют создавать каталоги. Правила присвоения имени каталогу ничем не отличаются от правил присвоения имени файлу, хотя негласно для каталогов не принято задавать расширения имен. Все промежуточные каталоги разделяются между собой обратной косой чертой (\). На рисунке 2.1 приведен пример иерархической структуры диска C:

    2.3. Имена внешних носителей информации

    Диски, на которых хранится информация в компьютере, имеют свои имена – каждый диск назван буквой латинского алфавита, а затем ставится двоеточие. Так, для дискет всегда отводятся буквы A: и B:. Логические диски винчестера именуются, начиная с буквы C:. После всех имен логических дисков следуют имена дисководов для компакт-дисков. Например, установлены: дисковод для дискет, винчестер, разбитый на 3 логических диска и дисковод для компакт-дисков. Определить буквы всех носителей информации. A: – дисковод для дискет;

    C:, D:, E: – логические диски винчестера;

    F: – дисковод для компакт-дисков.

    Полное имя файла

    Уникальность имени файла обеспечивается тем, что полным именем файла считается собственное имя файла вместе с путем доступа к нему. Понятно, что в этом случае на одном носителе не может быть двух файлов с тождественными полными именами.

    Пример записи полного имени файла:

    <имя носителя>\<имя каталога-1>\…\<имя каталога-М>\<собственное имя файла>

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

    D: \Документы\Сведения о студентах\2004—05 учебный год\Результаты аттестации. doc

    D: \Деканат\Аттестация студентов\Результаты аттестации. doc

    2.4. Файловые системы

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

    Рисунок 2.2. Физическая структура хранения информации


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

    Наименьшей физической единицей хранения информации является сектор. Размер сектора равен 512 байт. Поскольку размер FAТ-таблицы ограничен, то для дисков, размер которых превышает 32 Мбайта, обеспечить адресацию к каждому отдельному сектору не представляется возможным. В связи с этим группы секторов условно объединяются в кластеры. Кластер является наименьшей единицей адресации к информации. Размер кластера, в отличие от размера сектора, не фиксирован и зависит от емкости диска.

    Как было сказано ранее, информация на дисках записывается в секторах фиксированной длины, и каждый сектор и расположение каждой физической записи (сектора) на диске однозначно определяется тремя числами: номерами поверхности диска, цилиндра и сектора на дорожке. И контроллер диска работает с диском именно в этих терминах. А пользователь желает использовать не сектора, цилиндры и поверхности, а файлы и каталоги. Поэтому как-то требуется при операциях с файлами и каталогами на дисках перевести это в понятные контроллеру действия: чтение и запись определенных секторов диска. А для этого необходимо установить правила, по которым выполняется этот перевод, то есть, прежде всего, определить, как должна храниться и организовываться информация на дисках. Набор этих правил и называется файловой системой.

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

    • как хранятся файлы и каталоги на диске;

    • какие хранятся сведения о файлах и каталогах;

    • как можно узнать, какие участки диска свободны, а какие – нет;

    • формат каталогов и другой служебной информации на диске.

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

    Файловая система, наиболее распространенная на IBM PC-совместимых компьютерах, была введена еще в начале 80-х годов в операционных системах MS DOS 1.0 и 2.0. Эта файловая система достаточно примитивна, так как она была создана для хранения данных на дискетах. Обычно эта файловая система называется FAT, так как самой важной структурой данных в ней является таблица размещения файлов на диске, по-английски – file allocation table, сокращенно – FAT. Эта таблица содержит информацию о том, какие участки (кластеры) диска свободны, и о цепочках кластеров, образующих файлы и каталоги.

    В файловой системе FAT имена файлов и каталогов должны состоять не более чем из 8 символов плюс три символа в расширении имени. Она приводит к значительным потерям (до 20 %) дискового пространства из-за больших размеров кластеров на дисках высокой емкости. Это связано с тем, что в конце последнего кластера файла остается свободное место, в среднем равное половине кластера. А на больших дисках размер кластеров FAT может достигать 32 Кбайт. Таким образом, на диске емкостью 2 Гбайта с 20000 файлов потери составят 320 Мбайт, то есть около 16 %. Наконец, файловая система FAT малопроизводительна, особенно для больших дисков, не приспособлена к многозадачной работе (все операции требуют обращений к таблице размещения файлов, а потому до завершения одной операции нельзя начинать другую).

    При разработке Windows 95 фирма Microsoft решила не вводить новую файловую систему, а залатать имеющуюся файловую систему FAT, позволив присваивать файлам и каталогам длинные имена. Эта файловая система стала называться FAT 32. Принятый в Windows 95 подход хорош тем, что позволяет использовать старые диски с файловой системой FAT – на них просто начинают записываться длинные имена. Но все же это решение весьма искусственное, и многие программы – для починки файловой системы дисков, «сжатия» дисков, резервного копирования и т. д., – могут привести к потере длинных имен на диске. FAT 32 поддерживает меньшие размеры кластеров, что позволяет более эффективно использовать дисковое пространство.

    При разработке операционной системы Windows NT была создана новая файловая система – NTFS. Она была ориентирована на диски большого объема, содержащие множество файлов, в них приняты существенные меры по обеспечению эффективности хранения данных и контроля доступа к ним. Эта файловая система поддерживает длинные имена файлов. На логических дисках емкостью 1–2 Гбайта файловая система NTFS позволяет хранить в среднем на 10–15 % больше информации, чем FAT. А доступ к файлам в ней осуществляется заметно быстрее, особенно в многозадачной среде.

    Разработчики NTFS, не забывая об эффективности, старались также обеспечить надежность файловой системы и восстанавливаемость данных при сбоях. Для этого, в частности, NTFS дублирует всю критически важную информацию и обеспечивает регистрацию всех изменений на дисках в специальном файле регистрации, причем для каждого изменения запоминается и способ его отмены. В результате практически при любых сбоях NTFS автоматически восстанавливается. NTFS также (в отличие от FAT) может работать с логическими дисками и файлами размером более 2 Гбайт – максимальный размер логических дисков и файлов там – 4х1018 байт.

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

    Таблица 1. Сравнительные характеристики файловых систем

    Особая файловая система разработана для компакт-дисков (CD-ROM). Это оказалось необходимым, так как само физическое устройство компакт-дисков не такое, как у жестких дисков или дискет: в них информация записывается не в кольцевых дорожках, а в единственной спиралеобразной дорожке (как у аудиокомпакт-дисков). Эта файловая система называется CDFS.

    Контрольные вопросы

    1. Какой объект выбран в качестве хранения информации в ЭВМ?

    2. Из каких частей состоит имя файла?

    3. Как различаются файлы в зависимости от расширения?

    4. В чем заключается уникальность имени файла?

    5. Чем образована файловая структура?

    6. Как обозначаются имена внешних носителей информации?

    7. Что такое полное имя файла? Приведите пример.

    8. Дайте характеристику физической структуры хранения информации.

    9. Что такое файловая система?

    10. Какие основные файловые системы выделяют и в чем их отличие?









    Главная | Контакты | Нашёл ошибку | Прислать материал | Добавить в избранное

    Все материалы представлены для ознакомления и принадлежат их авторам.