Понятие файловой системы

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

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

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

Третий тип структуры данных — иерархическая структура (такие структуры называют также древовидными). В иерархической структуре каждый элемент определяется путем, который к нему ведет, начиная от вершины.

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

Операционным системам приходится работать с различными потоками данных, разными аппаратными и периферийными устройствами компью­тера. Организовать упорядоченное управление всеми этими объектами позволяет файловая система.

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

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

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

-.com,.ехе,.bat - исполняемые;

-.doc,.txt – текстовые;

-.pas, bas,.c,.for - тексты программ на известных языках программирования: Паскаль, Бейсик, Си, Фортран соответственно;

-.dbf - файл базы данных.

Известны десятки стандартных расширений, используемых при работе с разными программными системами. В различных ОС существуют определенные ограничения на длину имени и расширения имени файла. Так, в MS-DOS длина имени файла не должна превышать восьми символов, а расширения - трех. В ОС UNIX ограничения значитель­но менее жесткие.

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

Имена каталогов, начиная от корневого, образующие путь к файлу, отделяемые при записи друг от друга косой чертой («\» в DOS, «/» в UNIX), также как и обозначение диска, относятся к идентификатору файла. Например, в MS DOS запись d:\lang\pascal\work\example.pas означает, что есть файл с именем example и расширением.pas, указывающим на то, что это текст программы на Паскале. Полный путь к этому файлу: d: -диск d; \lang\pascal\work - это структура вложенных каталогов, в самом внутреннем из которых находится необходимый файл example.pas

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

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

Развитые многопользовательские файловые системы обеспечивают также защиту и разделение данных, хранящихся в файлах, при работе с ними разных пользователей. Так, например, после входа в систему UNIX (который производится по паролю) пользователь получает доступ к ряду системных, групповых и личных каталогов и файлов. Каждый файл и каталог имеет владельца. Обычно это пользователь, создавший их. Владелец может затем назначить тип защиты файла от трех категорий пользователей:

- владельца (самого себя);

- представителей той же группы пользователей, что и владелец (понятие группы полезно при совместной работе над какими-либо проектами);

- всех остальных пользователей системы.

Каждый файл (каталог) имеет три вида разрешения на доступ:

- чтение (r - read) - можно просматривать содержимое файла (каталога);

- запись (w - write) - можно менять содержимое файла (создавать или удалять файлы в каталоге);

- выполнение (х - execute) - можно использовать файл как команду UNIX.

Комбинация видов доступа к файлу записывается последовательностью 9 сим­волов: rwx rwx rwx.

Отсутствие права доступа обозначается минусом. Например, запись rwx r-x -x- означает, что файл может быть просмотрен, изменен и запущен на выполнение владельцем, просмотрен и выполнен членами группы, к которой относится владелец, и выполнен всеми остальными пользователями системы.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: