Разновидности файловых систем

Задание.

По предложенному материалу составить конспект (не переписывайте всё, только значимые моменты). В конце материала вопросы. Если ответы уже есть в конспекте, подчеркните их. Если нет, дополните конспект ответами на вопросы.

Файловая система. Работа с носителями информации.

Под файловой системой понимают функциональную часть ОС, которая обеспечивает выполнение операций над файлами.

!

Файл — поименованная совокупность данных, размещённых на внешнем запоминающем устройстве.

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

С каждым файлом связываются:

—составное имя файла;

—атрибуты файла;

—дата и время создания;

—длина файла.

Составное имя файла представляет собой совокупность имени файла и его расширения. Расширение имени файла характеризует тип (содержимое) файла и указывается после имени через точку (например, proba.txt имеет расширение txt ипредставляет собой текстовый файл). Расширение имени файла является необязательным элементом и при создании файла может не задаваться, однако это снижает информативность составного имени файла. В зависимости от ОС длина имени и расширения могут быть различными. В MS-DOS, например, имя файла не должно быть более 8 символов, а расширение — не более трёх символов. В ОС Windows, Linux и им подобных поддерживаются длинные имена файлов — до 255 символов. При задании имени файла можно использовать любые символы, кроме некоторых специальных символов (\/:*?”<>|). В этом легко убедиться: если ввести при задании имени недопустимый символ, то ОС выводит сообщение об ошибке (рис. 2.57). В ОС типа UNIX (Linux), в отличие от Windows, регистр букв в именах файлов имеет значение, т.  е., например, файлы с именами file и File являются разными и могут располагаться в одном каталоге.

Рис. 2.57. Сообщение OC Windows об ошибке (недопустимые символы в имени файла)

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

Атрибуты файла определяют способы его использования и право доступа к нему. Обычно у файла выделяют следующие атрибуты:

R (Read only) — файл только для чтения и не может быть ни удалён, ни изменён программами; если же эти действия выполняет сам пользователь, то выдаётся дополнительный запрос — предупреждение;

A (Archive) — архивный файл; этот атрибут приписывается каждому создаваемому файлу и сбрасывается средствами архивирования и резервирования файлов;

Н (Hidden) — скрытый файл, который игнорируется многими командами MS-DOS;

S (System) — системный файл.

Файлу могут быть присвоены одновременно любые из перечисленных атрибутов или ни один из них.

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

Длина файла указывается в байтах и обновляется после его создания или обновления.

Файловая система также обеспечивает выполнение следующих основных функций:

—создание и удаление файлов;

—переименование и пересылку файлов;

—чтение, запись и обновление (чтение и запись) файлов;

—поиск файлов;

—считывание и смену атрибутов файлов;

—считывание и изменение даты и времени, а также длины файлов.

Файловая система предоставляет средства поиска не одного, а сразу группы файлов путём задания так называемых шаблонов.

!

Шаблоном (образцом) является составное имя файла, в полях имени и/или расширения которого используются символы-заменители.

С помощью шаблона обозначается группа файлов, составные имена которых имеют некоторые общие признаки, например все файлы, имена которых начинаются с буквы «а», все файлы с расширением txt и др. При этом в шаблоне используются символы-заменители «?» (вопросительный знак) и «*» (звездочка).

Заменитель «?» обозначает любой единственный (и обязательно присутствующий) символ в данной позиции. В полях имени файла и расширения допускается использовать несколько заменителей «?».

Заменитель «*» в имени (или расширении) файла обозначает, что на его месте может стоять любое количество любых допустимых символов либо может не быть символов вообще. Например, шаблону а*.* соответствуют все файлы, которые начинаются с буквы «а» и имеют любые символы в расширении, а также и файл с единственной буквой а в имени и без расширения.

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

!

Каталог — специальный файл, в котором регистрируются другие файлы.

Рис. 2.58. Пример файловой структуры в ОС Windows

Каталог может входить в другой каталог, т. е. может быть вложенным. Вообще применительно к ОС Windows каталоги принято называть папками; при этом папка имеет более широкое понятие, чем просто каталог. Существуют специальные папки, которым не соответствуют каталоги диска, например специальная папка Панель управления (Control Panel) и др. У каждой папки есть имя. Самая верхняя папка называется корневой, её имя совпадает с именем диска. В папках могут храниться другие папки (вложенные) и файлы. Если одна папка входит в другую, то первая называется родительской (главной), а вторая — дочерней (подчинённой). Точное местоположение файла определяется его полным именем или адресом. Полное имя файла представляет собой указание пути к нему, начиная с имени корневой папки, за которым следуют имена вложенных папок, отделяемые друг от друга символом «\» (обратный слэш), например:

C:\Документы\Письма\Поставщики\договоры.doc.

Пример файловой структуры приведён на рис. 2.58.

Для выполнения операций с файлами и папками файловая система, получив запрос на выполнение операции, выбирает требуемый для этого драйвер. После завершения операции драйвер возвращает управление и результаты ядру файловой системы. Например, если пользователь подаёт ОС команду «сохранить файл», драйвер файловой системы ищет на диске незанятые кластеры, отмечает их и передаёт драйверу диска запрос на запись данных в эти кластеры.

Основным внешним запоминающим устройством, на котором размещается операционная система и другие программы, является жёсткий магнитный диск. На нём также имеется стартовый сектор, содержащий внесистемный загрузчик.

Практически в любой ОС каждый физический жёсткий диск состоит из одного и более разделов. Отформатированный дисковый раздел называется логическим диском. Для обозначения логических дисков используют латинские буквы.

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

На рис. 2.59 приведена логическая структура жёсткого диска с тремя первичными и одним расширенным разделами. Наличие трёх первичных разделов означает, что на компьютере установлено три разных ОС. Расширенный раздел разбит на три логических диска.

Чтобы раздел стал доступен для работы с ним, на нём необходимо разместить файловую систему. Разные операционные системы работают с разными файловыми системами.

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

Разновидности файловых систем

В OС MS-DOS и в ранних версиях Windows использовались файловые системы FAT (File Allocation Table). В них для каждого кластера в таблице размещения файлов имеется отдельная запись, которая указывает на следующий кластер файла либо содержит метку конца файла. В файловых системах FAT16 и FAT32 числа 16 и 32 определяют, какое количество записей о размещении кластеров может храниться в таблице FAT. Для FAT16 возможно 216 записей, а для FAT32 — 232. Файловая система также определяет максимальный размер раздела, с которым может работать ОС. Так, FAT16 с учётом того, что размер кластера не превышает 32 Кбайт, обеспечивает максимальный размер раздела 2 Гбайт (32•65 536 = 2 097 152 Кбайт), что в настоящее время явно недостаточно. FAT32 обеспечивает работу с разделом, размер которого составляет уже более 2 Тбайт.

Файловая система NTFS (New Technology File System), применяемая в современных версиях ОС Windows (NT, 2000, XP и выше), информацию о распределении дискового пространства между файлами хранит в специальных пакетах и обладает по сравнению с FAT более сложной структурой и более широкими возможностями. Файловая система NTFS поддерживает работу с разделами очень больших размеров до 16 эксабайт.

Файловые системы, используемые в ОС семейства UNIX/Linux (Ext2FS, Ext3, ReiserFS и др.), обладают некоторой спецификой по сравнению с описанными выше файловыми системами MS-DOS/Windows.

Прежде всего, современные файловые системы ОС Linux являются журналируемыми. Любые изменения, которые предполагается произвести, вначале записываются в отдельную часть файловой системы — журнал. Если операции выполнены успешно, то эти временные записи удаляются из журнала. Журналирование обеспечивает большую надёжность файловых операций, уменьшая риск потери данных и нарушения целостности системы, например при непредвиденном выключении ПК.

Второе важное отличие: в ОС MS-DOS и Windows каждому внешнему накопителю и каждому логическому разделу жёсткого диска соответствует отдельное файловое дерево, начинающееся с корневого каталога (обозначаемого соответствующей меткой диска). В Linux же существует один-единственный корневой каталог с именем root («корневой»), обозначаемый одиночным символом косой черты — /. Соответственно файловая структура в Linux представляет собой одно-единственное дерево. В нём любые накопители, разделы дисков, сетевые ресурсы и обычные каталоги практически равноправны; метки дисков здесь не используются.

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

Каталог Содержимое каталога
/bin Системные двоичные файлы, реализующие команды ОС, а также обычно содержит интерпретатор таких команд
/boot Файлы загрузчика операционной системы
/dev Файлы устройств, обеспечивающие доступ к аппаратным компонентам ПК
/etc Системные конфигурационные файлы для некоторых программ, а также скрипты, выполняемые при загрузке ОС
/home Домашние каталоги всех пользователей (кроме администратора системы (суперпользователя) с именем root), зарегистрированных в системе под их учётными записями. Каталог каждого такого пользователя имеет вид /home/<логин пользователя>. Аналогом такой структуры в ОС Windows можно считать структуру папок Мои документы, индивидуальных для каждого пользователя и представленных в системе как поименованные логинами пользователей папки в каталоге Documents and Settingsсистемного диска
/lib Динамические библиотеки, необходимые для загрузки и работы ОС (аналог DLL-файлов в Windows), и программные модули ядра ОС
/media /mnt Возможные точки монтирования файловых поддеревьев логических разделов жёстких дисков и подключаемых к компьютеру внешних устройств (CD/DVD, USB-накопители и цифровые устройства, работающие через USB, например, цифровые фотокамеры). Доступ к их содержимому производится через этот каталог, — файловое содержимое таких устройств обычно представлено как содержимое вложенных каталогов с именами dev1, dev2 и т. д. (dev — сокращение от английского device — устройство)
/opt Дополнительные программы и большие пакеты их дополнений
/root Отдельный домашний каталог суперпользователя root
/sbin Особо важные системные двоичные файлы для суперпользователя
/srv Данные для служб, предоставляемых системой (например, FTPили HTTP)
/tmp Временные файлы, создаваемые программами для их работы
/usr Прикладные программы, файлы документации и пр., требуемые как для работы системного администратора, так и общедоступные. Содержимое этого каталога доступно только для чтения
/var Переменные данные, записываемые во время работы системы (log-файлы, буферные данные и пр.)
/windows Обычно через этот каталог доступны данные с Windows-разделов диска, если на компьютере установлены одновременно обе ОС (Windows и Linux)

Впрочем, в рамках графического пользовательского интерфейса (обеспечиваемого графическими оболочками типа KDE) многие из этих особенностей скрыты для пользователя: он работает со значками дисков, выведенными на рабочий стол, а также со своей личной папкой в каталоге /home, практически так же, как в ОС Windows — с дисками и папкой Мои документы.

Третье отличие — возможность «многоимённости» файлов в ОС Linux. Если в Windows имя файла является его идентификатором и должно быть в пределах папки уникальным, то в ОС Linux в качестве такого уникального идентификатора файла выступает номер так называемого индексного дескриптора — записи, хранящей всю информацию о файле. Имя же файла — это лишь ссылка на его дескриптор, поэтому имён одного и того же файла может быть несколько.

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

В отличие от этого, «мягкие» (символические) ссылки аналогичны ярлыкам в ОС Windows. Это — ссылки на файловые записи с конкретными именами. При попытке открыть для чтения такую ссылку система автоматически перенаправляет пользователя к соответствующему файлу-оригиналу. Удаление символических ссылок никак не влияет на оригинальные файлы (точно так же, как и удаление ярлыков в Windows). Удаление же или перемещение файла-оригинала хотя и не приводит к автоматическому удалению или изменению символической ссылки на него, но делает эту ссылку неактуальной. Поэтому символические ссылки удобно использовать, когда точно известно, что файл-оригинал всегда будет храниться в одном и том же месте (например, для создания на рабочем столе ярлыков для запуска программ).

Рис. 2.60. Пример файловой структуры в ОС Linux

С учётом сказанного можно отметить, что файловая структура в ОС Linux может быть более сложной, чем показанная на рис. 2.59 файловая структура в ОС Windows: в Linux файл может быть вложен одновременно в несколько разных каталогов (рис. 2.60).

Ещё одно отличие заключается в необходимости выполнения операций монтирования и размонтирования устройств. Если ОС Windows определяет диски и логические разделы и назначает им буквенные метки во время начальной загрузки, то в Linux каждое файловое устройство (накопитель или логический раздел) сначала нужно подключить к общей файловой системе — смонтировать его при помощи отдельной команды ОС, только тогда операционная система и работающие под её управлением программы смогут получить доступ к каталогам и файлам на этом устройстве (разделе). Впрочем, это отличие несколько сглаживается тем, что при установке ОС можно указать логические разделы жёсткого диска, монтируемые по умолчанию во время каждой загрузки ОС. Кроме того, современные графические оболочки (KDE, Gnome и др.), реализующие в ОС Linux графический интерфейс пользователя, идентичный Windows, могут автоматически определять и монтировать подключаемые съёмные устройства (например, флэш-накопители). Операция размонтирования, наоборот, отключает дисковое устройство от файловой системы. Удобство такой системы заключается в её большей гибкости: так, можно смонтировать каталог, физически размещённый на другом компьютере локальной сети (разумеется, при наличии соответствующих прав доступа к нему), и работать с ним так, как если бы он находился на данном (локальном) компьютере. Либо, например, можно cмонтировать FTP-сервер в сети Интернет и выкладывать на него желаемые файлы, просто помещая их в соответствующую папку своей файловой системы.

Другие отличия заключаются в уже упомянутой ранее чувствительности к регистру букв (строчные и прописные буквы в именах файлов и каталогов в Linux являются различными); в необязательности расширений имён файлов (хотя их наличие предоставляет дополнительные удобства пользователю — по ним легко определить, какого типа информация содержится в файле); в отсутствии особых расширений (таких как .com и .exe в Windows), которые однозначно определяют для ОС исполняемые файлы (программы); в обозначении скрытых файлов (их имена начинаются с символа «точка»).

Следует заметить, что большинство ОС семейства Linux способны поддерживать и файловые системы FAT и NTFS. Поэтому ОС Linux может получить доступ к разделам диска, созданным под управлением ОС Windows (обеспечивая по крайней мере чтение файлов), а вот ОС Windows без использования дополнительных программных средств не может «увидеть» разделы, созданные под Linux.

 

Вопросы и задания

1. Что понимается под файловой системой и файлом? Определения.

2. Какие параметры связываются с файлом?

3. Какими атрибутами может обладать файл?

4. Назовите основные функции файловой системы.

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

6. Как записывается составное и полное имя файла?

7. Что определяет тип файла? Как типы файлов связаны с расширениями их имён в разных операционных системах?

8. Какова логическая структура жёсткого диска?

9. Сколько различных операционных систем можно установить на одном компьютере?

10. Найдите файлы, имена которых записаны неправильно:

info_12.doc, 3!doc.bmp, c_pic*.txt, $12let? .xls, res%.mdb, graf:12.rtf.

11. Для поиска файлов заданы шаблоны. Какие из указанных ниже файлов будут по ним найдены:

а) *ас.doc: _dac.doc, ac.doc, smac.dot, aaca.doc;

б) ?? а dd?.*: sumad5.bmp, aadde.com, teradda.exe?

12. Запишите шаблон, с помощью которого можно найти файлы, имена которых состоят из пяти символов: первый символ — буква s, третий — d, а первый символ в расширении — буква d.

13. Охарактеризуйте основные отличия файловых систем (с точки зрения пользователя) ОС Windows и Linuх.

14. В чём сущность команд монтирования и размонтирования файловых устройств?

15. Опишите общие принципы функционирования механизма «жёстких» и «мягких» ссылок в файловой системе ОС Linuх.

16. Самостоятельно – носители информации. Какие бывают, какие были раньше.

 


Дата добавления: 2022-06-11; просмотров: 77; Мы поможем в написании вашей работы!

Поделиться с друзьями:




Мы поможем в написании ваших работ!