Студопедия — Файловые системы операционной системы Linux
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Файловые системы операционной системы Linux






 

В Linux долгое время была одна файловая система Ext2fs – вторая расширенная файловая система. Система определяется как расширенная по сравнению с файловой системой операционной системы Minix, послужившей прототипом Linux (до сих пор используемой на отформатированных в этой операционной системе дискетах). Вторая – означает, что ранние версии Linux базировались на Extfs с более ограниченными возможностями.

По способу организации хранения данных Extfs напоминает файловую систему Unix. Отличительные особенности:

- дробление дискового раздела на группы блоков;

- наличие нескольких копий суперблока, что повышает надежность хранения данных;

- наличие эффективного механизма кэширования дисковых операций, что обеспечивает их быстродействие;

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

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

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

Текущие версии ядра Linux поддерживают в качестве альтернативных четыре журналируемые файловые системы: ReiserFS, Ext3fs и XFS, JFS (результаты импортирования в Linux файловых систем, разработанных первоначально для рабочих станций под операционные системы Irix (SGI) и AIX (IBM), соответственно).

Журналируемая файловая система ReiserFS разработана специально для Linux фирмой Namesys (http://www.namesys.com) и поддерживается ее ядром (http://www.kernel.org), начиная с первых версий ветви 2.4.x. В ReiserFS осуществляется журналирование только операций над метаданными файлов, что при определенном снижении надежности, обеспечивает высокую производительность. Кроме этого, ReiserFS обладает уникальной (и по умолчанию задействованной) возможностью оптимизации дискового пространства, занимаемого мелкими, менее одного блока, файлами. Они хранятся в своих inode, без выделения блоков в области данных. Весте с экономией места это способствует росту производительности, так как данные и метаданные (в терминах ReiserFSstat -data) файла хранятся в непосредственной близости и могут быть считаны одной операцией ввода/вывода.

Хвосты файлов (их конечные части), меньшие по размеру, чем один блок, могут быть подвергнуты упаковке. Этот режим (tailing) включается по умолчанию при создании ReiserFS, обеспечивая около 5% экономии дискового пространства, но несколько снижает быстродействие. ReiserFS не совместима с Ext2fs на уровне утилит обслуживания файловой системы, но соответствующий инструментарий, разрешающий проблему, объединен в пакет reiserfsprogs и включен в штатный комплект современных дистрибутивов. Распространенные загрузчики Linux иногда не способны загрузить ядро Linux с раздела ReiserFS, поэтому ReiserFS не рекомендуется к употреблению на загрузочном разделе.

Ext3fs – представляет собой журналируемую надстройку над классической Ext2fs, разработанной в компании Red Hat и поддерживаемой ядром Linux, начиная с версии 2.4.16. Она сохраняет со своей прародительницей полную совместимость, в том числе и на уровне утилит обслуживания (начиная с версии 1.21, пакета e2fsprogs). Переход от Ext2fs к Ext3fs осуществляется добавлением файла журнала без переформатирования раздела и рестарта машины. Ext3fs является системой, в которой возможно журналирование операций не только с метаданными, но и с данными файлов, так как предусмотрено три режима работы: полное журналирование (full data journaling); журналирование с обратной записью (writeback); последовательное журналирование, задействуемое по умолчанию (ordered).

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

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

Файловая 64-разрядная система XFS развивается фирмой SGI для Unix, впервые появилась в версии Irix 5.3, вышедшей в 1994 г. В Linux она была импортирована недавно (http://oss.sgi.com/projects/xfs) и штатно поддерживается ядром, начиная с его ветки 2.6.X. XFS представляет собой сбалансированную файловую систему, ориентированную на размещение в больших дисковых разделах для работы с большими файлами. Особенности XFS:

- использование механизма деления единого дискового раздела на несколько равных областей (allocation group), имеющих собственные списки inodes и свободные блоки, для распараллеливания дисковых операций (самостоятельные файловые субсистемы);

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

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

- использование списков контроля доступа (ACL, Access Control List) и расширенных атрибутов файлов (extended attributes).

Возможность работы с XFS обеспечивает специальный патч (xfs-2.4.1X-all-i386.bz2), который вместе с соответствующими утилитами поддержки можно получить с сайта SGI (http://oss.sgi.com/projects/xfs). Утилиты поддержки для XFS объединены в несколько пакетов.

Файловая система JFS разработана компанией IBM для собственной версии Unix и уже долгое время поддерживается ядром Linux в качестве альтернативной системы, однако по ряду причин широкого распространения она не получила.

На уровне обмена данными Linux поддерживает множество файловых систем, некоторые из них только в режиме чтения (например, NTFS или HPFS).

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

 







Дата добавления: 2015-10-12; просмотров: 500. Нарушение авторских прав; Мы поможем в написании вашей работы!



Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

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

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Метод Фольгарда (роданометрия или тиоцианатометрия) Метод Фольгарда основан на применении в качестве осадителя титрованного раствора, содержащего роданид-ионы SCN...

Потенциометрия. Потенциометрическое определение рН растворов Потенциометрия - это электрохимический метод иссле­дования и анализа веществ, основанный на зависимости равновесного электродного потенциала Е от активности (концентрации) определяемого вещества в исследуемом рас­творе...

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

Виды сухожильных швов После выделения культи сухожилия и эвакуации гематомы приступают к восстановлению целостности сухожилия...

КОНСТРУКЦИЯ КОЛЕСНОЙ ПАРЫ ВАГОНА Тип колёсной пары определяется типом оси и диаметром колес. Согласно ГОСТ 4835-2006* устанавливаются типы колесных пар для грузовых вагонов с осями РУ1Ш и РВ2Ш и колесами диаметром по кругу катания 957 мм. Номинальный диаметр колеса – 950 мм...

Философские школы эпохи эллинизма (неоплатонизм, эпикуреизм, стоицизм, скептицизм). Эпоха эллинизма со времени походов Александра Македонского, в результате которых была образована гигантская империя от Индии на востоке до Греции и Македонии на западе...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия