Типы файлов. Иерархическая структура файловой системы

02.08.2019

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

Файловые системы: определение

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

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

Принципы работы файловых систем

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

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

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

Файловые системы работают не без ошибок. Возможны некоторые сбои в организации работы с блоками данных. Но они в большинстве случаев не критичны. Как правило, нет проблем с тем, как исправить файловую систему, устранить ошибки. В ОС Windows для этого, в частности, предусмотрены встроенные программные решения, доступные для любого пользователя. Такие как, например, программа "Проверка диска".

Разновидности

Какие виды файловых систем можно назвать самыми распространенными? Вероятно, в первую очередь те, что используются самой популярной ОС для ПК в мире - Windows. Основные файловые системы Windows - это FAT, FAT32, NTFS и их различные модификации. Наряду с компьютерами популярность обрели смартфоны и планшеты. Большинство из них, если говорить о глобальном рынке и не рассматривать различия в технологических платформах, управляется ОС Android и iOS. Эти ОС задействуют свои алгоритмы работы с данными, отличные от тех, которыми характеризуются файловые системы Windows.

Стандарты, открытые для всех

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

Структура файловой системы

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

Один из ключевых - Он являет собой изолированную область данных, в которой могут размещаться файлы. Структура каталогов - иерархическая. Что это значит? Один или несколько каталогов могут размещаться в другом. Который, в свою очередь, входит в состав "вышестоящего". Самым "главным" считается корневой каталог. Если говорить о принципах, на базе которых работает файловая система Windows - 7, 8, XP или же другой версии, - корневым каталогом считается логический диск, обозначаемый буквой - как правило, C, D, E (но можно настроить любую, что есть в английском алфавите). Что касается, к примеру, ОС Linux, то там корневым каталогом выступает магнитный носитель в целом. В этой и других ОС, основанных на ее принципах - к таковым относится Android - логические диски не используются. Можно ли хранить файлы без каталогов? Да. Но это не очень удобно. Собственно, комфорт в пользовании ПК - одна из причин внедрения в файловых системах принципа распределения данных по каталогам. Называться, кстати, они могут по-разному. В Windows каталоги именуются папками, в Linux - в основном так же. Но традиционное, используемое в течение многих лет название каталогов в этой ОС - "директории". Как и в предшествующих Windows и Linux ОС - DOS, Unix.

В среде IT-специалистов нет однозначного мнения касательно того, считать ли файл структурным элементом соответствующей системы. Те, кто полагает, что это не совсем корректно, аргументируют свою точку зрения тем, что система вполне может существовать и без файлов. Пусть это с практической точки зрения и бесполезное явление. Даже если на диске никаких файлов не записано, соответствующая система все равно может присутствовать. Как правило, магнитные носители, продаваемые в магазинах, не содержат каких-либо файлов. Но на них уже присутствует соответствующая система. Согласно другой точке зрения, файлы нужно считать неотъемлемой составляющей систем, которыми они управляются. Почему? А потому, что, как считают эксперты, алгоритмы их задействования адаптированы прежде всего под работу именно с файлами в рамках тех или иных стандартов. Ни для чего другого рассматриваемые системы не предназначены.

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

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

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

Если условиться, что файлы - это все же составные элементы соответствующих им систем, то стоит рассмотреть их базовую структуру. Что можно отметить в первую очередь? Для удобства организации доступа к ним в большинстве современных систем управления данными предусмотрена двухуровневая структура именования файлов. Первый уровень - это название. Второй - расширение. Возьмем для примера музыкальный файл Dance.mp3. Dance - это название. Mp3 - расширение. Первое призвано раскрывать для пользователя суть содержания файла (а для программы быть ориентиром для быстрого доступа). Второе обозначает тип файла. Если он Mp3, то нетрудно догадаться, что речь идет о музыке. Файлы с расширением Doc - это, как правило, документы, Jpg - картинки, Html - веб-страницы.

Каталоги, в свою очередь, имеют одноуровневую структуру. У них есть только название, расширения нет. Если говорить о различиях между разными видами систем управления данными, то первое, на что следует обратить внимание - это как раз-таки реализуемые в них принципы именования файлов и каталогов. Касательно ОС Windows специфика следующая. В самой популярной в мире операционной системе файлы могут иметь название на любом языке. Максимальная длина, правда, при этом ограничена. Конкретный ее интервал зависит от используемой системы управления данными. Обычно это значения в пределах 200-260 символов.

Общее правило для всех ОС и соответствующих им систем управления данными - в одном каталоге не могут находиться файлы с одинаковыми наименованиями. В Linux при этом присутствует некая "либерализация" этого правила. В одном каталоге могут быть файлы с одинаковыми буквами, но в разном регистре. Например, Dance.mp3 и DANCE.mp3. В ОС Windows это невозможно. Эти же правила установлены также и в аспекте размещения каталогов внутри других.

Адресация файлов и каталогов

Адресация файлов и каталогов - важнейший элемент соответствующей системы. В ОС Windows ее пользовательский формат может выглядеть так: C:/Documents/Music/ - это доступ к каталогу Music. Если нас интересует какой-то конкретный файл, то адрес может выглядеть так: C:/Documents/Music/Dance.mp3. Почему "пользовательский"? Дело в том, что на уровне программно-аппаратного взаимодействия компонентов компьютера структура доступа к файлам гораздо более сложная. Файловая система определяет местоположение файловых блоков и взаимодействует с ОС по большей части в рамках скрытых от пользователя операций. Однако у пользователя ПК крайне редко возникает необходимость пользоваться иными форматами "адресов". Практически всегда доступ к файлам осуществляется в указанном стандарте.

Сравнение файловых систем для Windows

Мы изучили общие принципы функционирования файловых систем. Рассмотрим теперь особенности самых распространенных их видов. В Windows чаще всего используются такие файловые системы, как FAT, FAT32, NTFS, а также exFAT. Первая в этом ряду считается устаревшей. Она, вместе с тем, долгое время была неким флагманом индустрии, но по мере роста технологичности ПК ее возможности перестали удовлетворять запросам пользователей и потребностям в ресурсах со стороны программного обеспечения.

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

Есть у системы FAT32 и ряд недостатков. Прежде всего можно отметить ограничение на размер одного взятого файла - он не может быть больше 4 Гб. Также в системе FAT32 нельзя встроенными средствами Windows задать логический диск, размер которого был бы больше 32 Гб. Но это можно сделать, установив дополнительное специализированное ПО.

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

Одна из новейших файловых систем от Microsoft - exFAT. Наилучшим образом она адаптирована для флешек. Базовые принципы работы в ней те же, что и в FAT32, но присутствует также и значимая модернизация в некоторых аспектах: например, нет никаких ограничений по размеру единичного файла. Вместе с тем система exFAT, как отмечают многие IT-эксперты, в числе тех, что обладают низкой универсальностью. На компьютерах под управлением ОС, отличных от Windows, работа с файлами при использовании exFAT может быть затруднена. Более того, даже в некоторых версиях самой Windows, таких как XP, данные на дисках, отформатированных по алгоритмам exFAT, могут не читаться. Потребуется установка дополнительного драйвера.

Отметим, что по причине задействования достаточно широкого спектра файловых систем в ОС Windows у пользователя могут возникать периодические сложности в аспекте совместимости различных устройств с компьютером. В ряде случаев, например, требуется установить драйвер файловой системы WPD (Windows Portable Devices - технологии, используемой при работе с переносными устройствами). Иногда его может не оказаться под рукой у пользователя, вследствие чего внешний носитель ОС может не распознать. Файловая система WPD может потребовать дополнительных программных средств адаптации к операционной среде на конкретном компьютере. В ряде случаев пользователь будет вынужден обращаться к IT-специалистам для решения проблемы.

Как определить, какая именно файловая система - exFAT или NTFS, а может быть, FAT32 - оптимальна для использования в конкретных случаях? Рекомендации IT-специалистов в целом следующие. Можно задействовать два основных подхода. Согласно первому следует разграничивать типичные файловые системы жестких дисков, а также те, что лучше адаптированы к флеш-накопителям. FAT и FAT32, как считают многие специалисты, лучше подходят для "флешек", NTFS - для винчестеров (в силу технологических особенностей работы с данными).

В рамках второго подхода значение имеет величина носителя. Если речь идет об использовании сравнительно небольшого объема диска или флешки, отформатировать их можно в системе FAT32. Если диск большего размера, то можно попробовать exFAT. Но только в том случае, если не предполагается использование носителей на других компьютерах, особенно тех, где стоят не самые свежие версии Windows. Если речь идет о больших жестких дисках, в том числе и внешних, то их целесообразно форматировать в NTFS. Примерно таковы критерии, по которым может быть выбрана оптимальная файловая система - exFAT или NTFS, FAT32. То есть использовать какую-либо из них следует, учитывая размер носителя, его тип, а также версию ОС, на котором накопитель преимущественно используется.

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

Другая популярная программно-аппаратная платформа на мировом рынке компьютерной техники - Macintosh от Apple. ПК данной линейки работают под управлением операционной системы Mac OS. Каковы особенности организации работы с файлами в компьютерах Mac? В самых современных ПК от Apple используется файловая система Mac OS Extended. Ранее в компьютерах Mac работа с данными управлялась в соответствии со стандартами HFS.

Главное, что можно отметить в аспекте ее характеристик: на диске, которым управляет файловая система Mac OS Extended, могут размещаться файлы очень большого объема - речь может идти о нескольких миллионах терабайт.

Файловая система в Android-устройствах

Самая популярная ОС для мобильных устройств - виде электронной техники, не уступающей по популярности ПК, - это Android. Каким образом осуществляется управление файлами на девайсах соответствующего типа? Отметим прежде всего, что данная операционная система - фактически "мобильная" адаптация ОС Linux, которая, благодаря открытому программному коду, может быть модифицирована с перспективой использования на самом широком спектре устройств. Поэтому управление файлами в мобильных девайсах под управлением Android осуществляется в целом по тем же принципам, что и в Linux. Некоторые из них мы отметили выше. В частности, управление файлами в Linux осуществляется без деления носителя на логические диски, как это происходит в Windows. Что еще интересного заключает в себе файловая система Android?

Корневым каталогом в Android, как правило, выступает область данных, именуемая /mnt. Соответственно, адрес нужного файла может выглядеть примерно так: /mnt/sd/photo.jpg. Кроме того, есть еще одна особенность системы управления данными, что реализована в данной мобильной ОС. Дело в том, что флеш-память девайса, как правило, классифицирована на несколько разделов, таких как, например, System или Data. При этом, изначально заданный размер каждого из них изменить нельзя. Приблизительную аналогию касательно данного технологического аспекта можно обнаружить, вспомнив, что нельзя (если не использовать специального ПО) менять размер логических дисков в Windows. Он должен быть фиксированным.

Еще одна интересная особенность организации работы с файлами в Android - соответствующая операционная система, как правило, записывает новые данные в конкретную область диска - Data. Работа, к примеру, с разделом System при этом не осуществляется. Поэтому, когда пользователь задействует функцию сброса программных настроек смартфона или планшета до уровня "заводских", то на практике это означает, что те файлы, что записаны в область Data, попросту стираются. Раздел System же, как правило, остается неизменным. Более того, какие-либо корректировки содержимого в System пользователь, не обладая специализированным ПО, осуществлять не может. Процедура, связанная с обновлением системной области носителя в Android-устройстве, называется перепрошивкой. Это не форматирование, хотя обе операции часто осуществляются одновременно. Как правило, перепрошивка применяется с целью установки на мобильное устройство более новой версии ОС Android.

Таким образом, ключевые принципы, на базе которых работает файловая система Android - отсутствие логических дисков, а также жесткое разграничение доступа к системным и пользовательским данным. Нельзя сказать, что данный подход принципиально отличается от того, что реализован в Windows, однако, как считают многие IT-эксперты, в ОС от Microsoft для пользователей присутствует несколько большая свобода в работе с файлами. Впрочем, как полагают некоторые специалисты, это нельзя считать однозначным преимуществом Windows. "Либеральный" режим в аспекте управления файлами задействуют, конечно же, не только пользователи, но и компьютерные вирусы, к которым Windows очень восприимчива (в отличие от Linux и ее "мобильной" реализации в виде Android). В этом, как считают эксперты, заключается одна из причин того, что вирусов для Android-устройств столь немного - чисто с технологической точки зрения они не могут в полной мере функционировать в операционной среде, работающей по принципам строгого контроля доступа к файлам.

Практическая задание № 9.

Тема: «Работа с файловой структурой»

Теоретические сведения

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

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

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

Файл – это поименованная область на диске. Каждый файл имеет следующее обозначение:

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

Полное имя файла строится следующим образом: [имя диска:] [путь\] имя файла. У дисков могут быть имена A:, B: – для гибких дисков (дискет); C:, D:, E: и т.д. вплоть до Z: – для жестких дисков и их логических разделов, электронных (виртуальных) дисков, для лазерных дисков CD-ROM и флешек.

Таблица 1. Расширения в именах файлов

Атрибуты

Характеристики файла, наделяющие файл определенными свойствами. Для наиболее распространенных в настоящее время файловых систем FAT16, FAT32 и NTFS можно выделить следующие файловые атрибуты:

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



"Скрытый" (Hidden) - подразумевается, что файл с данным атрибутом не выводится при показе тех или иных списков файлов. В большинстве программ обработку этого атрибута можно настраивать. Например, стандартный "Проводник" Windows позволяет как прятать, так и показывать файлы с атрибутом "скрытый". Во втором случае иконка файла отображается полупрозрачной.

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

"Архивный" (Archive) - в настоящее время по своему прямому назначению данный файловый атрибут FAT практически не используется. Изначально предполагалось, что этот атрибут будет указывать программам архивации файлы, предназначенные для резервного копирования. Другими словами, программа, осуществляющая резервное копирование файла на жестком диске, должна была сбрасывать атрибут "архивный", а программы, вносящие в последующем в этот файл какие-либо изменения, наоборот, вновь его устанавливать. Таким образом, программа резервного копирования путем проверки данного файлового атрибута могла легко определить, изменялся ли данный файл на жестком диске с момента осуществления предыдущего резервного копирования.

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

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

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

Функции файловой системы:

1. Сохранение информации на внешних носителях.

2. Чтение информации из файлов.

3. Удаление файлов, каталогов.

4. Переименование файлов.

5. Копирование файлов и др.

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

Одноуровневая файловая система

Таблица 2. Структура записей в каталоге

Иерархическая файловая система

Над файлами могут производиться различные операции:

  • Копирование (копия файла помещается из одного каталога в другой)
  • Перемещение (сам файл перемещается в другой каталог)
  • Удаление (запись о файле удаляется из каталога)
  • Переименование (изменяется имя файла) и т.д.

Правила создания имени файла:

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

? : * / \ “ > < |

Расширение указывает на тип информации, хранящейся в файле (тип файла):

· txt, doc, rtf- текстовые документы

· bmp, jpg, gif - графические файлы

Кроме имени и расширения параметрами файла также являются: размер фала, дата и время создания, значок.

Размер файла свидетельствует о том, сколько информации он содержит и, соответственно, сколько места он занимает на диске. Размер файла выражается в единицах измерения объема информации: байт, Кбайт, Мбайт.

Дaтa и время создания файла. Эти параметры тоже характеризуют файл и записываются по определенным правилам. Например, запись 05.03.97 15:30 означает, что файл был создан 5 марта 1997 года, а время его создания - 15 часов 30 минут. Дата и время регистрируются автоматически операционной системой.

Значок - элементарный графический объект. По значку можно узнать, в какой среде создан файл или какого он типа.

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

Действия с файлами и папками:

· закрыть;

· открыть;

· переименовать;

· удалить;

· переместить;

· копировать (создать копию).

Ход работы

Задание 1

Определите полный путь к файлам:

Задание 2

Задание 3

Дано дерево иерархической файловой структуры на диске. Заглавными буквами обозначены имена каталогов, строчными – имена файлов:

Найти ошибки в файловой структуре.

Задание 4

Дано дерево иерархической файловой структуры на диске. Заглавными буквами обозначены имена каталогов, строчными – имена файлов:

Перечислить каталоги 1-го, 2-го, 3-го уровней, если они есть. Указать пути от корневого каталога к каждому из файлов.

Задание 5

C:\Рисунки\Природа\Небо.bmp

C:\Рисунки\Природа\Снег.bmp

C:\Рисунки\Компьютер\Монитор.bmp

C:\Мои документы\Доклад.doc

Задание 6

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

Отобразить файловую структуру в виде дерева.

C:\Рефераты\Физика\Оптические явления.doc

C:\Рефераты\Информатика\Интернет.doc

C:\Рефераты\Информатика\Компьютерные вирусы.doc

C:\Рисунки\Закат.jpg

C:\Рисунки\ Зима.jpg

1. Какая файловая система используется в Windows?

2. Что такое файл?

3. Как хранятся файлы на диске?

4. Как формируется имя файла?

5. Зачем нужно расширение имени файла?

6. Какие стандартные расширения имен файлов вы знаете и что они означают?

7. Что такое путь к файлу?

8. Какие логические имена дисковых устройств вы знаете?

9. Объяснить термины: каталог, папка, файл, ярлык, иконка, меню?

10. Копирование и перемещение файлов. Как это реализуется в Windows?

11. Как переименовать файл или каталог?

12. Как создать новый файл или каталог?

13. Как удалить с диска файл или каталог?

14. Как просмотреть содержимое файла?

15. Как запустить файл на выполнение?

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

Рис. 1 . Иерархия файловой системы extX построенная в виде дерева.

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

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

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

Например, для выборки файла «client .c » (рис. 1 ) , находящегося в каталоге «с», который находится в каталоге «tcp », который, в свою очередь, находится в каталоге «usr » и соответственно в каталоге «root » (рис. 1), служит следующая символьная строка: /usr /tcp /c /client .c . Если символьная строка начинается со знака (/), то поиск начинается с корневого каталога всей файловой системы. Имя маршрута, которое не начинается со знака (/), заставляет ОС начать поиск с текущего каталога.

Система всегда связывает каждого пользователя с определенным каталогом. Когда вы логически включаетесь в систему по команде login , вы автоматически оказываетесь в каталоге (директории) с именем home . Этот каталог назначается администратором системы при регистрации вас как пользователя. Если ваше username , к примеру, inter , то после команды login inter и введения пароля в ответ на запрос password , вы войдете в систему и автоматически перейдете в каталог /home /inter . Разумеется, после этого вы можете по команде cd (Change Directory ) сменить ваш текущий каталог на какой угодно.

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

Каждому подключенному устройству (терминалу, дискам, принтеру, и т. д.), соответствует как минимум один специальный файл . Большая часть этих специальных файлов хранится в каталоге /dev (рис. 1) :

$ cd /dev

$ ls -l

console пульт управления системы

dsk порции на диске

fd 0 флоппи-диск 1

mem память

l р принтер

l р0 параллельный порт 0

root порция на диске для корневой файловой системы

swap своп-порция

syscon альтернативное имя пульта

systty еще одно имя для системной консоли

term директория для терминалов

ttyS 0 серийный порт 0 (COM 1)

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

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

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

Определение. Файл (file – папка ) - это именованная область памяти (последовательность байтов произвольной длины) на диске или другом носителе, хранимая и обрабатываемая как единое целое. Данными, хранящимися в файлах, могут быть тексты, программы, закодированная графическая или звуковая информация и т. д.

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

Примечание.

Имя файла может быть полным и неполным . Полное (составное) имя файла в MS-DOS состоит из двух частей : имени файла ирасширения , отделяемых точкой . Расширение , называемое также типом файла , может отсутствовать, в этом случае имя файла является неполным .

Символы , используемые в имени файла и его расширении, берутся из следующего набора:

Прописные (большие) и строчные (маленькие) буквы латинского алфавита; ;

Символы: - _ $ # & @ ! % () { } ‘ ~ ^

В имени файла может быть от одного до восьми символов а в расширении - от нуля до трех (для операционных систем типа MS DOS ). В ОС Windows эти ограничения менее строгие – имя файла может содержать до 255 символов.

Некоторые из расширений (типов) файлов являются стандартными :

COM - готовый к выполнению файл (1-я разновидность);

EXE - готовый к выполнению файл (2-я разновидность) или исполняемый файл, главный файл любой пользовательской программы;

BAT - командный пакетный файл;

TXT - текстовый файл произвольного типа;

MDB - файл СУБД Access;

XLS – файл электронной таблицы Excel;

DOC - текстовый файл, содержащий документацию по какому-либо программному продукту или файл редактора Microsoft Word;

BMP - графический файл в точечном формате;

ARJ, RAR, ZIP - архивированные файлы и т.д.

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

Файл может иметь следующие атрибуты :

R (Read-only) - «только для чтения». При попытке обновить или уничтожить такой файл системными средствами ОС будет выдано сообщение об ошибочных действиях. Атрибут файла устанавливается для защиты файла от случайного изменения или уничтожения.

H (Hidden) - «скрытый файл». При просмотре каталога стандартными средствами ОС сведения о скрытом файле не выдаются.

S (System) - «системный файл». Эти файлы использует операционная система.

A (Archive) - «архивный файл» . Этот атрибут устанавливается при создании каждого нового файла и сбрасывается программными средствами архивации и резервирования.

Определение. Каталогом называется специальный файл, в котором содержаться сведения о других файлах и каталогах, а именно:

Полное имя;

Время и дата создания или последнего изменения;

Размер в байтах;

Атрибуты;

Некоторые другие сведения о файловой структуре диска.

Примечание.

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

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

Примечание.

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

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

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

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

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

Примерами файловых систем, используемых в ПК, могут служить системы FAT-16, FAT-32, NTFS (New Technology File System) и др.

Каждый диск имеет свою файловую структуру , которая формируется по следующим правилам:

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

На порядок следования файлов и каталогов в каталоге никаких ограничений не накладывается;

Глубина вложенности каталогов ограничивается количеством символов в длине пути каталогов.

Каталоги ОС образуют иерархическую структуру , называемую деревом каталогов , в котором главный каталог образует «корень» дерева (отсюда второе название главного каталога - «корневой» ), а остальные каталоги подобны ветвям .

Примечание.

Если какие-либо файлы и (или) подкаталоги объединены в каталог , то говорят, что они входят (вложены) в этот каталог . Однако, это объединение не означает , что они каким-либо образом сгруппированы в одном месте на диске .

При обращении к файлу необходимо указать путь доступа к нему согласно спецификации , имеющей следующий формат:

[устройство] [путь каталогов] имя файла [. тип]

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

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

Примечание.

Имена каталогов в пути разделяются символом «\ ». Если путь начинается символом «\ », то поиск файла начинается с корневого каталога . Если путь опущен, то подразумевается текущий каталог .

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

Жесткий магнитный диск программно может быть разделен на несколько частей, с которыми можно работать как с отдельными дисками. Эти части называются логическими дисками или разделами, каждому из которых, как и отдельному устройству, присваивается имя в виде латинской буквы с символом «:». При этом, как правило, дисковод FDD именуется А:, а разделы HDD – начиная с С: . Другие устройства внешней памяти в составе ПК (CD-ROM, стример и т.д.) получают имена, следующие в алфавитном порядке за именем последнего раздела винчестера. Логический диск (или устройство), с которого производится загрузка операционной системы, называется системным.

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

Обычные файлы, или просто файлы, содержат информацию произвольного характера, которую заносит в них пользователь или которая образуется в результате работы системных и пользовательских программ. Большинство современных операционных систем (например, UNIX, Windows, OS/2) никак не ограничивает и не контролирует содержимое и структуру обычного файла. Содержание обычного файла определяется приложением, которое с ним работает. Например, текстовый редактор создает текстовые файлы, состоящие из строк символов, представленных в каком-либо коде. Это могут быть документы, исходные тексты программ и т. п. Текстовые файлы можно прочитать на экране и распечатать на принтере. Двоичные файлы не используют коды символов, они часто имеют сложную внутреннюю структуру, например исполняемый код программы или архивный файл. Все операционные системы должны уметь распознавать хотя бы один тип файлов - их собственные исполняемые файлы.

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

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

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

Иерархическая структура файловой системы

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

Рис. 1. Иерархия файловых систем

Граф, описывающий иерархию каталогов, может быть деревом или сетью. Каталоги образуют дерево, если файлу разрешено входить только в один каталог (рис. 1, б), и сеть - если файл может входить сразу в несколько каталогов (рис. 1, в). Например, в MS-DOS и Windows каталоги образуют древовидную структуру, а в UNIX - сетевую. В древовидной структуре каждый файл является листом. Каталог самого верхнего уровня называется корневым каталогом, или корнем (root).

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

Частным случаем иерархической структуры является одноуровневая организация, когда все файлы входят в один каталог (рис. 1, а).