Как называется часть названия файла описывает. Файл: имена файлов. Полное, короткое, длинное, корректное и некорректное имя файла, его состав, шаблон и маска. Расширение имени файла

Здравствуйте, читатели сайта IT-уроки! Сегодня вас ждёт урок с маленьким, но важным секретом. А относится этот секрет к правильным именам файлов.

Почему-то начинающим пользователям никто не говорит, как лучше называть файлы . Но незнание простого правила может стоить немало нервов и времени.

Этот урок будет очередным шагом в повышении безопасности и надежности хранения данных.

Как правильно называть файлы?

Всегда сохраняйте новую версию файла с новым именем.

Но чтобы не наводить беспорядок, новое имя должно быть похоже на старое (на основе старого). Отсюда дополнение к рекомендации:

К имени новой версии файла добавляйте номер.

Иногда важна не только версия, но и нужно знать дату, когда вы внесли изменения. В этом случае:

К имени файла можно добавить дату в формате ГОД-МЕСЯЦ-ДЕНЬ.

Почему именно в таком виде? Всё просто, в проводнике файлы будут сортироваться в правильном порядке (по дате и версии).

На рисунке ниже названия файлов одного из IT-уроков:

Да, у вас будет целый набор файлов с похожими именами, и это именно то, что нам нужно. Сейчас объясню на примере:

Пример третий (хорошо)

Вы набираете текст в документе (отчет/доклад/диплом/резюме) и периодически сохраняете его под новым именем : «Отчет 01» , через полчаса «Отчет 02» , на следующий день «Отчет 03» и так далее.

Что делать, если на следующий день вы изменили часть текста и сохранили документ как «Отчет 04» , а потом решили восстановить старый вариант (как в первом примере с Пушкиным)? Просто откройте «Отчет 03» и скопируйте нужный текст в новую версию.

Правильно, «Отчет 05» ! Быстро учитесь 🙂

Пример четвертый (отлично)

Есть документы, для которых немалую роль играет дата их создания, например, резюме. В этом случае вы можете создать файл «Моё резюме 20140108» . После следующего изменения вы сохраните его как «Моё резюме 20140201» .

Возможно, вам понадобится создать несколько версий документа в один день, поэтому лучше добавлять и дату, и номер версии: «Моё резюме 20140201-02» .

Кажется, хватит примеров.

Заключение

Сегодня мы с вами разобрались, как лучше называть файлы. Было много примеров и описаний, поэтому подведу итог в виде вот такой формулы с правильными именами:

P.S. Следующий урок будет самым важным в этой серии, не пропустите! Подписаться на новости сайта можно по этой ссылке или с помощью специальной формы ниже.

Копирование запрещено , но можно делиться ссылками.

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

Имя файла является частью полного имени файла , также называемого полным или абсолютным путём к файлу. Полное имя может включать следующие компоненты:

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

Имя файла состоит из двух частей, разделенных точкой:

Имена файлов в разных системах

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

Windows

  • \ - разделитель подкаталогов
  • / - разделитель ключей командного интерпретатора
  • : - отделяет букву диска или имя альтернативного потока данных
  • * - заменяющий символ (маска "любое количество любых символов")
  • ? - заменяющий символ (маска "один любой символ")
  • " - используется для указания путей, содержащих пробелы
  • < - перенаправление ввода
  • > - перенаправление вывода
  • | - обозначает конвейер

В UNIX и UNIX-подобных ОС запрещен слеш (/) - разделитель подкаталогов - и символ конца строки (\0). Перечисленные выше символы (кроме слеша) использовать можно, но из соображений совместимости их лучше избегать.

Расширение имени файла

Расширение имени файла (англ. filename extension , часто говорят просто расширение файла или расширение ) - последовательность символов, добавляемых к имени файла и предназначенных для идентификации типа (формата) файла . Это один из распространённых способов, с помощью которых пользователь или программное обеспечение компьютера может определить тип данных, хранящихся в файле. Расширение отделяется от основной части имени файла последней точкой . Иногда могут использоваться несколько расширений, следующих друг за другом, например, «.tar.gz».

ОС или менеджер файлов могут устанавливать соответствия между расширениями файлов и приложениями . Когда пользователь открывает файл с зарегистрированным расширением, автоматически запускается соответствующая этому расширению программа. Некоторые расширения могут показывать, что файл является исполняемым (в Windows).

См. также

Литература

  • Робачевский А. Н., Немнюгин С. А., Стесик О. Л. Имен файлов / Базовая файловая система System V / Глава 4. Файловая система // Операционная система UNIX. - 2-е изд. - СПб. : БХВ-Петербург, 2008. - С. 338-339. - 656 с. - ISBN 978-5-94157-538-1

Wikimedia Foundation . 2010 .

Смотреть что такое "Имя файла" в других словарях:

    Совокупность байтов, выделяющих файл из множества других файлов. Атрибутами файла являются: имя файла и тип содержимого; дата и время создания файла; имя владельца файла; размер файла; права доступа к файлу; метод доступа к файлу. См. также:… … Финансовый словарь

    - (англ. filename extension, часто говорят просто расширение файла или расширение) последовательность символов, добавляемых к имени файла и предназначенных для идентификации типа (формата) файла. Это один из распространённых способов, с… … Википедия

    перенос файла - Передача файла из одного каталога либо папки в другую. Нередко при переносе пользователь изменяет имя файла. В результате файл записывается в новом месте и стирается в старом. В отличие от этого, при копировании файла он появляется в новом месте… …

    Формат файла для хранения 3D объектов, созданный компанией Microsoft. Этот формат хранит информацию о геометрии 3D объекта (координаты вершин и координаты нормалей), текстурные координаты, описание материалов, пути и названия к текстурам, которые … Википедия

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

    атрибуты файла - Идентифицируемые атрибуты файла (имя и др.) [Е.С.Алексеев, А.А.Мячев. Англо русский толковый словарь по системотехнике ЭВМ. Москва 1993] Тематики информационные технологии в целом EN file attributes … Справочник технического переводчика

Файловые системы ext2 и ext3 допускают наличие в именах файлов практически любых символов, кроме разделителя директорий (/). Однако я не советую использовать имена, содержащие русские буквы, знаки пунктуации (кроме точки), пробелы, псевдографику, экзотические знаки вроде символа перехода на новую строку. Не стоит также начинать имена файлов с дефиса (-). Тут дело в том, что многие программы, работающие с файлами, принимают в командной строке ключи (опции), начинающиеся с дефиса. Например, вы хотите пролистать каталог по имени -lR командой ls -lR . Но -lR будет воспринято программой ls не как имя каталога, а как ключи -l (выдать подробный листинг) и -R (рекурсивно), и в результате вы получите листинг текущего каталога (так как каталог не указан, программа ls по умолчанию работает с текущим). Во всех остальных случаях дефис в именах файлов вполне допустим и часто используется. Советуем ограничиться следующим набором символов - латинские буквы (большие и маленькие), цифры, знак подчёркивания, дефис (но не в начале), точка.

Термин «расширение» сохранился со времён, когда операционная система Microsoft DOS была самой популярной для персональных компьютеров типа IBM PC. Файловая система DOS позволяла в именах файлов не более 11 знаков; первые не более 8 из них считались основным именем (base name), а не более 3 последних - расширением (extension ) имени. Для отделения основной части имени от расширения использовалась точка (кроме специальных имён - . и..). Сама точка не считалась частью имени. Имена WORK и WORK. означали одно и то же. Вот пример имени файла наиболее длинного имени: AUTOEXEC.BAT . Многие программы для DOS и Windows придают расширениям чересчур большое значение - например, Microsoft Word будет упорно пытаться открыть файл с расширением.DOC как документ в его родном формате, даже если в файле содержится простой текст. В файловых системах Linux точка - такая же часть имени, что и любой другой символ. Теперь уже WORK и WORK. станут ссылаться на разные файлы. Если угодно, можно по-прежнему называть часть имени файла, следующую за точкой, расширением, хотя точек в имени может быть и несколько. Например, файловому архиву в формате tar , сжатому компрессором lzma , часто дают суффикс.tar.lzma . Большинство программ для Linux не связывают расширение имени файла с его содержимым, либо связывают, но позволяют явно указать тип содержимого файла с помощью опций. Тот же Perl будет запускать свои программы по имени, независимо от того, какое расширение использовано - .pl , .plx или.cgi , и есть ли оно вообще.

Некоторые программы вроде текстовых редакторов, работающие с файлами, и «на месте» изменяющие их содержимое, способны оставлять резервные копии. Имена таких копий обычно получаются из исходных имён добавлением знака ~ в конце, например, linux.html~ .

Встретив непонятное словосочетание, читатель, как правило, стремится узнать его значение. Эта статья - краткая экскурсия для пользователя по миру неизведанного.

Общее понятие файла

Долговременная хранит все данные в виде файлов. Что же это такое? Файл является именованной последовательностью байтов, состоящих, в свою очередь, из битов. У него есть собственное имя и адрес размещения. Первый параметр указывает человек, а второй - задает и надолго запоминает операционная система. Поиск осуществляется по имени файла, поэтому записывать его адрес пользователю ни к чему.

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

Файловая система

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

Назначение файловой системы

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

Типы файлов

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

Файл: имена файлов

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

Состав имени файла

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

Полное имя

Можно привести такой пример:

C:\Музыка\Праздник\Мелодия.mp3 .

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

Короткое имя

Ограничения явились причиной возникновения этого термина. В те времена файл мог иметь только 8 символов в имени. Немного позже появилась возможность ставить точку после названия и дописывать 3 знака расширения.

Это выглядело так:

Мелодия.mp3 .

Разработчики стали использовать расширения имен для технических потребностей. С их помощью программы «научились» распознавать тип файла. Эта схема записи имени файла была названа системой 8.3 (по количеству символов названия и расширения, и точка между ними). Она имела ряд недостатков: невозможность использования пробела, знаков препинания, иных букв, кроме английского алфавита. Поэтому создать содержательное название было очень трудно. Краткое имя не содержит символа косой черты (\ ). По такому названию можно сослаться на данные текущего каталога.

Длинное имя

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

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

Проблемные объекты

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

Корректное имя файла

Оно может состоять из любых букв в верхнем и нижнем регистре, числа, точки и подчеркивания. Использование пробела не запрещается. Однако не стоит им злоупотреблять, а также ставить в начало названия. В имя можно включить иные символы, за исключением зарезервированных знаков (> < | ? * / \ : "). Расширение отделяется от названия последней правой точкой. Длина имени ограничивается 255 знаками. На самом деле обычному пользователю хватает 20 символов. Операционная система не различает строчные и прописные буквы в имени файла. Это означает, что сохранить в одном каталоге два элемента с одинаковым названием, написанным в разном регистре, не получится. Так может выглядеть пример совпадающих имен: «Текст.doc» и «ТЕКСТ.doc».

Некорректное название файла

Кроме указанных ограничений, существует запрет на использование зарезервированных имен устройств.

Так, PRN является принтером. COM1-COM4 - устройствами, присоединяемыми к последовательным портам 1-4. AUX выполняет ту же функцию, что и COM1. LPT1-LPT4 являются элементами, присоединяемыми к параллельным портам 1-4 (принтерам), CON (consol) при вводе - клавиатурой, при выводе - экраном, NUL - «пустым» устройством. При попытке пользователя указать зарезервированное название система выдает ошибку. Предупреждение отображается и в том случае, когда используются запрещенные символы. Оно указывает на недопустимое имя файла. Неверно записанная информация о наборе данных не сохраняется, а принимает прежнее значение.

Шаблон названия файла

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

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

Особые символы

Шаблон имени файла задается с помощью специальных знаков:

  • Звездочка является обозначением любой группы символов. Их количество не имеет значения. К примеру, одна звездочка - это шаблон, которому соответствует вся информация в каталоге. Благодаря команде *.mp3 можно изменить любой однотипный файл. Имена файлов, начинающиеся на my и оканчивающиеся на.txt, выделяются с помощью шаблона my*.txt. Образец *2014* определяет все существующие на компьютере объекты, названия которых содержат в себе группу символов 2014.
  • является обозначением любого одиночного символа. К примеру, под образец music.??? подойдут начинающиеся на указанное слово данные, имеющие расширение из трех английских букв. В шаблоне na?e.txt вместо стандартного знака вопроса может быть любой символ.

Иные команды

Предусмотрены и другие правила составления образцов. Благодаря включению в команду квадратных скобок () с перечнем возможных значений можно сделать поиск более гибким. Если требуется найти какие-либо файлы, начинающиеся с буквы t, не учитывая регистр, то шаблон следует записать так: *. При поиске данных с именами, идущими по алфавиту, можно создать диапазон. Подобный шаблон выглядит так: ?.jpg. Системой будут найдены файлы с указанным типом расширения, имена которых состоят из двух знаков. Причем первая буква k, l, y или z - без учета регистра.

Значение командной оболочки

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

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

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

Маски имен файлов

Они используются в групповых операциях с данными. Маска является последовательностью допустимых в названиях файлов символов, в которых также могут попадаться знак вопроса и звездочка. С ее помощью можно удалить любой имеющийся на компьютере временный файл. Имена файлов в команде могут содержать различные обозначения. Знак вопроса является отметкой одного произвольного символа, а звездочка - целой последовательности. К примеру, воспользовавшись командой rm *mp3, можно удалить все файлы, заканчивающиеся на этот фрагмент. Если потребуется стереть все данные в каталоге, то следует задать команду rm *. Почти так же работает команда с меняется один символ. Маски имен можно использовать и с каталогами.

Проблемное копирование

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

В этом случае не поможет даже создание ярлыка. Обычно от пользователя требуется только переименовать файл и повторить попытку. Как вариант, можно заархивировать данные, скопировать и распаковать. Но что делать, если в сотом подкаталоге, в котором находится требуемый файл, имена файлов такие длинные из-за прописанного в них пути?

Запасные варианты

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

В крайнем случае пользователь может воспользоваться программой для копирования длинных имен FAR 2.0 и даже отключить Recycle Bin.

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

В широком смысле понятие "файловая система" включает:

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

Файл - это понятие, привычное любому пользователю компьютера. Для пользователя каждый файл - это отдельный предмет, у которого есть начало и конец и который отличается от всех остальных файлов именем и расположением («как называется» и «где лежит»). Как и любой предмет, файл можно создать, переместить и уничтожить, однако без внешнего вмешательства он будет сохраняться неизменным неопределенно долгое время. Файл предназначен для хранения данных любого типа - текстовых, графических, звуковых, исполняемых программ и многого другого. Аналогия файла с предметом позволяет пользователю быстро освоиться при работе с данными в операционной системе.

Имена файлов:

Файлы идентифицируются именами. Пользователи дают файлам символьные имена, при этом учитываются ограничения ОС как на используемые символы, так и на длину имени. До недавнего времени эти границы были весьма узкими. Так в популярной файловой системе FAT длина имен ограничивается известной схемой 8.3 (8 символов - собственно имя, 3 символа - расширение имени), а в ОС UNIX System V имя не может содержать более 14 символов. Однако пользователю гораздо удобнее работать с длинными именами, поскольку они позволяют дать файлу действительно мнемоническое название, по которому даже через достаточно большой промежуток времени можно будет вспомнить, что содержит этот файл. Поэтому современные файловые системы, как правило, поддерживают длинные символьные имена файлов. Например, Windows NT в своей новой файловой системе NTFS устанавливает, что имя файла может содержать до 255 символов, не считая завершающего нулевого символа.

Длинные имена поддерживаются не только новыми файловыми системами, но и новыми версиями хорошо известных файловых систем. Например, в ОС Windows 95 используется файловая система VFAT, представляющая собой существенно измененный вариант FAT. Среди многих других усовершенствований одним из главных достоинств VFAT является поддержка длинных имен. Кроме проблемы генерации эквивалентных коротких имен, при реализации нового варианта FAT важной задачей была задача хранения длинных имен при условии, что принципиально метод хранения и структура данных на диске не должны были измениться.

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

Типы файлов:

Файлы бывают разных типов: обычные файлы, специальные файлы, файлы-каталоги.

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

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

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

В разных файловых системах могут использоваться в качестве атрибутов разные характеристики, например:

Каталоги могут непосредственно содержать значения характеристик файлов, как это сделано в файловой системе MS-DOS, или ссылаться на таблицы, содержащие эти характеристики, как это реализовано в ОС UNIX.

Каталоги могут образовывать иерархическую структуру за счет того, что каталог более низкого уровня может входить в каталог более высокого уровня.

/libhistory.so.5.2

(Иерархическая файловая система в Unix и UNIX-подобных операционных системах):

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

Логическая организация файла:

Программист имеет дело с логической организацией файла, представляя файл в виде определенным образом организованных логических записей. Логическая запись - это наименьший элемент данных, которым может оперировать программист при обмене с внешним устройством. Даже если физический обмен с устройством осуществляется большими единицами, операционная система обеспечивает программисту доступ к отдельной логической записи. На рисунке 2.33 показаны несколько схем логической организации файла. Записи могут быть фиксированной длины или переменной длины. Записи могут быть расположены в файле последовательно (последовательная организация) или в более сложном порядке, с использованием так называемых индексных таблиц, позволяющих обеспечить быстрый доступ к отдельной логической записи (индексно-последовательная организация). Для идентификации записи может быть использовано специальное поле записи, называемое ключом. В файловых системах ОС UNIX и MS-DOS файл имеет простейшую логическую структуру - последовательность однобайтовых записей.

Физическая организация и адрес файла:

Физическая организация файла описывает правила расположения файла на устройстве внешней памяти, в частности на диске. Файл состоит из физических записей - блоков. Блок - наименьшая единица данных, которой внешнее устройство обменивается с оперативной памятью. Непрерывное размещение - простейший вариант физической организации (рисунок 2.34,а), при котором файлу предоставляется последовательность блоков диска, образующих единый сплошной участок дисковой памяти. Для задания адреса файла в этом случае достаточно указать только номер начального блока. Другое достоинство этого метода - простота. Но имеются и два существенных недостатка. Во-первых, во время создания файла заранее не известна его длина, а значит не известно, сколько памяти надо зарезервировать для этого файла, во-вторых, при таком порядке размещения неизбежно возникает фрагментация, и пространство на диске используется не эффективно, так как отдельные участки маленького размера (минимально 1 блок) могут остаться не используемыми.

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

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

В заключение рассмотрим задание физического расположения файла путем простого перечисления номеров блоков, занимаемых этим файлом. ОС UNIX использует вариант данного способа, позволяющий обеспечить фиксированную длину адреса, независимо от размера файла. Для хранения адреса файла выделено 13 полей. Если размер файла меньше или равен 10 блокам, то номера этих блоков непосредственно перечислены в первых десяти полях адреса. Если размер файла больше 10 блоков, то следующее 11-е поле содержит адрес блока, в котором могут быть расположены еще 128 номеров следующих блоков файла. Если файл больше, чем 10+128 блоков, то используется 12-е поле, в котором находится номер блока, содержащего 128 номеров блоков, которые содержат по 128 номеров блоков данного файла. И, наконец, если файл больше 10+128+128 (128, то используется последнее 13-е поле для тройной косвенной адресации, что позволяет задать адрес файла, имеющего размер максимум 10+ 128 + 128(128 + 128).

Права доступа к файлу:

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

и другие операции с файлами и каталогами.

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

Общая модель файловой системы:

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

Задачей символьного уровня является определение по символьному имени файла его уникального имени. В файловых системах, в которых каждый файл может иметь только одно символьное имя (например, MS-DOS), этот уровень отсутствует, так как символьное имя, присвоенное файлу пользователем, является одновременно уникальным и может быть использовано операционной системой. В других файловых системах, в которых один и тот же файл может иметь несколько символьных имен, на данном уровне просматривается цепочка каталогов для определения уникального имени файла. В файловой системе UNIX, например, уникальным именем является номер индексного дескриптора файла (i-node).

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

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

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



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: