Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Операционные системы, среды и оболочки.doc
Скачиваний:
19
Добавлен:
19.04.2019
Размер:
2.13 Mб
Скачать

Организация файловой системы

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

Фа́йловая систе́ма (англ. file system) — порядок, определяющий способ организации, хранения и именования данных на носителях информации. Она определяет формат содержимого и физического хранения информации, которую принято группировать в виде файлов. Конкретная файловая система определяет размер имени файла (папки), максимальный возможный размер файла и раздела, набор атрибутов файла. Некоторые файловые системы предоставляют сервисные возможности, например, разграничение доступа или шифрование файлов.

Когда прикладная программа обращается к файлу, она не имеет никакого представления о том, каким образом расположена информация в конкретном файле, так же, как и на каком физическом типе носителя он записан. Всё, что знает программа — это имя файла, его размер и атрибуты. Именно файловая система устанавливает, где и как будет записан файл на физическом носителе.

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

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

Иерархия каталогов

Практически всегда файлы на дисках объединяются в каталоги. Каталоги на разных дисках могут образовывать несколько отдельных деревьев, как в DOS/Windows, или же объединяться в одно дерево, общее для всех дисков, как в UNIX-подобных системах.

В UNIX существует только один корневой каталог, а все остальные файлы и каталоги вложены в него. Чтобы получить доступ к файлам и каталогам на каком-нибудь диске, необходимо смонтировать этот диск командой mount.

Обратите внимание на использование слешей в файловых системах Windows, UNIX и UNIX-подобных операционных системах (В Windows используется обратный слеш «\», а в UNIX и UNIX-подобных операционных системах простой слеш «/»)

Классификация файловых систем

По предназначению файловые системы можно классифицировать на нижеследующие категории:

  • Для носителей с произвольным доступом (например, жёсткий диск): FAT32, HPFS, ext2 и др. Поскольку доступ к дискам в разы медленнее, чем доступ к оперативной памяти, для прироста производительности во многих файловых системах применяется асинхронная запись изменений на диск. Для этого применяется либо журналирование, например в ext3, ReiserFS, JFS, NTFS, XFS, либо механизм soft updates и др. Журналирование широко распространено в Linux, применяется в NTFS. Soft updates — в BSD системах.

  • Для носителей с последовательным доступом (например, магнитные ленты): QIC и др.

  • Для оптических носителей — CD и DVD: ISO9660, HFS, UDF и др.

  • Виртуальные файловые системы: AEFS и др.

  • Сетевые файловые системы: NFS, CIFS, SSHFS, GmailFS и др.

Файловые системы FAT32, NTFS

FAT32 (от англ. File Allocation Table — «таблица размещения файлов») — это файловая система, разработанная компанией Майкрософт, разновидность FAT. FAT32 — последняя версия файловой системы FAT и улучшение предыдущей версии, известной как FAT16. FAT32 использует 32-разрядную адресацию кластеров. FAT32 появилась вместе с Windows 95 OSR2.

Штатными средствами Windows 2000 и Windows XP невозможно создать разделы FAT32 более 32 ГБ, однако, с такими разделами возможно работать, если они были предварительно созданы в других ОС. Причина этого заключается в том, что, по мнению Microsoft, при увеличении размера тома FAT32 выше 32 ГБ резко падает производительность, и что более подходящее решение — использование NTFS, то есть родной формат файловой системы для Windows 2000 и Windows XP.

Windows XP работает с томами объемом до 2 ТБ (из справки Windows XP). Программа Partition Magic позволяет создавать FAT32-раздел размером не более ~192 ГБ. Программа EASEUS Partition Master успешно создает FAT32-раздел размером 250 ГБ и более.

Максимально возможный размер файла для тома FAT32 — 4 ГБ — 4 294 967 296 байт (232 — 4 294 967 296 байт) — это весьма важный фактор для смены файловой системы. FAT32 не поддерживает установку разрешений на доступ к файлам и папкам и некоторые другие функции современных файловых систем. Все эти причины привели к тому, что сейчас наблюдается тенденция отказа от FAT32 в пользу более продвинутых файловых систем, таких как NTFS, Ext2/Ext3. Чаще всего недоверие к NTFS возникает у пользователей из-за трудностей с назначением прав доступа (так как чаще всего они единственные владельцы файлов) и ее закрытости.

Препятствием на пути отказа от FAT32 и перехода на другие файловые системы на USB флеш-накопителях является производительность. Помимо описанных ограничений у FAT32 есть ряд преимуществ (по крайней мере над NTFS) как в скорости записи на флеш-накопитель, так и в скорости чтения/копирования данных с него.

NTFS (от англ. New Technology File System — «файловая система новой технологии») — стандартная файловая система для семейства операционных систем Microsoft Windows NT. NTFS заменила использовавшуюся в MS-DOS и Microsoft Windows файловую систему FAT. NTFS поддерживает систему метаданных и использует специализированные структуры данных для хранения информации о файлах для улучшения производительности, надёжности и эффективности использования дискового пространства. NTFS хранит информацию о файлах в главной файловой таблице — Master File Table (MFT). NTFS имеет встроенные возможности разграничивать доступ к данным для различных пользователей и групп пользователей (списки контроля доступа — Access Control Lists (ACL)), а также назначать квоты (ограничения на максимальный объём дискового пространства, занимаемый теми или иными пользователями). NTFS использует систему журналирования для повышения надёжности файловой системы.

NTFS разработана на основе файловой системы HPFS (от англ. High Performance File System — высокопроизводительная файловая система), создававшейся Microsoft совместно с IBM для операционной системы OS/2. Но, получив такие несомненно полезные новшества, как квотирование, журналируемость, разграничение доступа и аудит, в значительной степени утратила присущую прародительнице (HPFS) весьма высокую производительность файловых операций.

Различают несколько версий NTFS: v1.2 используется в Windows NT 3.51 и Windows NT 4.0, v3.0 поставляется с Windows 2000, v3.1 — с Windows XP, Windows Server 2003,Windows Server 2003R2, Windows Vista, Windows 7 и Windows Server 2008, Windows Server 2008R2.