Каталог (файловая система)
- 1 year ago
- 0
- 0
Фа́йловая систе́ма ( англ. file system ) — порядок, определяющий способ организации, хранения и именования данных на носителях информации в компьютерах, а также в другом электронном оборудовании: цифровых фотоаппаратах , мобильных телефонах и т. п. Файловая система определяет формат содержимого и способ физического хранения информации, которую принято группировать в виде файлов . Конкретная файловая система определяет размер имен файлов (и каталогов ), максимальный возможный размер файла и раздела, набор атрибутов файла. Некоторые файловые системы предоставляют сервисные возможности, например, разграничение доступа или шифрование файлов.
Файловая система связывает носитель информации с одной стороны и API для доступа к файлам — с другой. Когда прикладная программа обращается к файлу, она не имеет никакого представления о том, каким образом расположена информация в конкретном файле, так же как и о том, на каком физическом типе носителя ( CD , жёстком диске , магнитной ленте , блоке флеш-памяти или другом) он записан. Всё, что знает программа — это имя файла, его размер и атрибуты. Эти данные она получает от драйвера файловой системы. Именно файловая система устанавливает, где и как будет записан файл на физическом носителе (например, жёстком диске).
С точки зрения операционной системы (ОС), весь диск представляет собой набор кластеров (как правило, размером, кратным 512 байт ) . Драйверы файловой системы организуют кластеры в файлы и каталоги (реально являющиеся файлами, содержащими список файлов в этом каталоге). Эти же драйверы отслеживают, какие из кластеров в настоящее время используются, какие свободны, какие помечены как неисправные.
Однако файловая система не обязательно напрямую связана с физическим носителем информации . Существуют виртуальные файловые системы , а также сетевые файловые системы, которые являются лишь способом доступа к файлам, находящимся на удалённом компьютере.
Практически всегда файлы на дисках объединяются в каталоги .
В простейшем случае все файлы на данном диске хранятся в одном каталоге. Такая одноуровневая схема использовалась в CP/M и в первой версии MS-DOS 1.0. Иерархическая файловая система со вложенными друг в друга каталогами впервые появилась в Multics , затем — в UNIX .
В настоящее время одноуровневые файловые системы используются очень редко, за исключением устройств с малой вычислительной мощностью и объёмом памяти, например, микроконтроллера ESP8266 , использующего в собственной флэш-памяти (до 16 Мб) собственную файловую систему .
Wiki.txt Tornado.jpg Notepad.exe (Одноуровневая файловая система)
Каталоги на разных дисках могут образовывать несколько отдельных деревьев, как в DOS / Windows , или же объединяться в одно дерево, общее для всех дисков, как в UNIX-подобных системах.
C: \Program files \CDEx \CDEx.exe \CDEx.hlp \mppenc.exe \Мои документы \Wiki.txt \Tornado.jpg D: \Music \ABBA \1974 Waterloo \1976 Arrival \Money, Money, Money.ogg \1977 The Album (Иерархическая файловая система Windows/DOS)
В UNIX существует только один
корневой каталог
, а все остальные файлы и каталоги вложены в него. Чтобы получить доступ к файлам и каталогам на каком-нибудь диске, необходимо
смонтировать
этот диск командой
mount
. Например, чтобы открыть файлы на
CD
, нужно, говоря простым языком, сказать операционной системе: «возьми файловую систему на этом компакт-диске и покажи её в каталоге
/mnt/cdrom
». Все файлы и каталоги, находящиеся на CD, появятся в этом каталоге
/mnt/cdrom
, который называется
точкой монтирования
(
англ.
mount point
).
В большинстве UNIX-подобных систем съёмные диски (
дискеты
и CD), флеш-накопители и другие внешние устройства хранения данных монтируют в каталог
/mnt
,
/mount
или
/media
. Unix и UNIX-подобные операционные системы также позволяют автоматически монтировать диски при загрузке операционной системы.
/ /usr /bin /arch /ls /raw /lib /libhistory.so.5.2 /libgpm.so.1 /home /lost+found /host.sh /guest /Pictures /example.png /Video /matrix.avi /news /lost_ship.mpeg (Иерархическая файловая система в Unix и UNIX-подобных операционных системах)
Обратите внимание на использование слешей в файловых системах Windows, UNIX и UNIX-подобных операционных системах (в Windows используется обратный слеш «\», а в UNIX и UNIX-подобных операционных системах — простой слеш «/»)
Кроме того, вышеописанная система позволяет монтировать не только файловые системы физических устройств, но и отдельные каталоги (параметр --bind ) или, например, образ ISO (опция loop ). Такие надстройки, как FUSE , позволяют также монтировать, например, целый каталог на FTP и ещё очень большое количество различных ресурсов.
Ещё более сложная структура применяется в
NTFS
и
HFS
. В этих файловых системах каждый файл представляет собой набор
атрибутов
. Атрибутами считаются не только традиционные
только для чтения
,
системный
, но и имя файла, размер и даже содержимое. Таким образом, для
NTFS
и
HFS
то, что хранится в файле, — это всего лишь один из его атрибутов.
Если следовать этой логике, один файл может иметь несколько вариантов содержимого [ источник не указан 2013 дней ] . Таким образом, в одном файле можно хранить несколько версий одного документа, а также дополнительные данные (значок файла, связанная с файлом программа ). Такая организация типична для HFS на Macintosh .
Основными функциями файловой системы являются:
По предназначению файловые системы можно классифицировать на нижеследующие категории.
Основные функции любой файловой системы нацелены на решение следующих задач:
В многопользовательских системах появляется ещё одна задача: защита файлов одного пользователя от несанкционированного доступа другого пользователя, а также обеспечение совместной работы с файлами, к примеру, при открытии файла одним из пользователей, для других этот же файл временно будет доступен в режиме «только чтение».
ФС позволяет оперировать не нулями и единицами, а более удобными и понятными объектами — файлами. Ради удобства в работе с файлами используются их символьные идентификаторы — имена. Само содержимое файлов записано в кластеры ( clusters ) — мельчайшие единицы данных, которыми оперирует файловая система, размер их кратен 512 байтам (512 байт — размер сектора жесткого диска, минимальной единицы данных, которая считывается с диска или записывается на диск) . Для организации информации, кроме имени файла, используются также каталоги (или папки), как некая абстракция, позволяющая группировать файлы по определённому критерию. По своей сути каталог — это файл, содержащий информацию о как бы вложенных в него каталогах и файлах.
Вся информация о файлах хранится в особых областях раздела (тома) — файловых справочниках. Структура этих справочников зависит от типа файловой системы. Справочник файлов позволяет ассоциировать числовые идентификаторы файлов и дополнительную информацию о них (дата изменения, права доступа, имя и т. д.) с непосредственным содержимым файла, хранящимся в другой области раздела (тома).
На жёстких дисках компьютеров под управлением систем семейства Windows используются два типа файловых систем: FAT (FAT16 и FAT32) и NTFS .