Понятие файла. Физическая и логическая структуры файловой системы носителя информации



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

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

Виды файлов:

· собственно файл (файл текстового редактора Word, электронных таблиц Excel и др.),

· папка,

· ярлык – ссылка на объект, чаще всего запускной файл; ярлыки принято создавать на рабочем столе Windows.

Файловая система – система организации хранения файлов на каком-либо электроном носителе.

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

Адрес, или путь доступа к файлу, состоит из имени диска и последовательности имен всех каталогов (папок) на пути к файлу.

Например:

G:\Задания\Lekzii\Т2_1Архитектура.doc – путь доступа к файлу, адрес.

Диск:\Каталог(папка)\ Каталог(папка)\имя_файла.расширение

Файлы. Физическая файловая система.

Любые данные хранятся на любом носителе в виде файлов.

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

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

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

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

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

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

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

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

Файловая система FAT(FileAllocationsTable) – это одна из наиболее старых файловых систем для ПК, разработанная Биллом Гейтсом и Марком МакДональдом в 1977г. СистемаFATможет реализовываться на логических дискахHDD, наFDDи на других аналогичных носителях. При использовании системыFATвсе пространство данного диска делится на равные последовательно расположенные области –кластеры. Как было указано ранее, существует минимальный объем данных, называемый сектором (блоком), который может быть записан на жесткий диск или прочитан с жесткого диска. Объем кластера должен составлять целое число секторов. Каждый файл может состоять из одного или из нескольких кластеров в зависимости от своего размера. Минимальный размер файла на диске – один кластер. Весь диск делится на 5 разделов - загрузочный сектор (1-й сектор 1-й дорожки), областьFAT-таблицы, область копииFAT-таблицы, область каталога, область файлов. Первые 4 раздела занимают небольшой объем и содержат системную информацию.

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

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

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

Поскольку FAT изначально проектировалась для однопользовательской операционной системы DOS, то она не предусматривает хранения такой информации, как сведения о владельце или полномочия доступа к файлу/каталогу. Кроме того, т. к. DOS– 16-разрядная операционная система, то, соответственно,FAT– также 16-разрядная файловая система. Это означает, что максимальное количество кластеров на диске составляет 216(примерно 64000 тыс.). Это совсем немного. Еще один недостатокFAT-системы – сильное уменьшение скорости поиска файлов, при увеличении объема носителей. Наконец,FATне может поддерживать диски объемом более 2 ГБ.

В настоящее время FATиспользуется в основном для магнитных дискет (FDD).

Файловая система VFAT(VirtualFAT), реализованная в Windows 95/98 - это система FAT, дополненная поддержкой длинных имен файлов в кодировке UNICODE (каждый символ имени кодируется 2 байтами). VFAT использует ту же самую схему распределения дискового пространства, что и файловая система FAT. В VFAT имя может быть длиной до 255 символов, в имя можно включать несколько пробелов и точек, текст после последней точки рассматривается как расширение, регистр символов в именах не различается, но сохраняется. Длинные имена по частям хранятся в специальных записях каталога. Для каждого файла и подкаталога в VFAT хранится два имени: длинное и короткое. Короткое имя генерируется файловой системой автоматически в формате 8.3 (имя из 8 символов, точка, расширение из 3-х символов).

Файловая система FAT32- это 32-разрядная файловая система, которая пришла на сменуVFAT, сохранив основные черты и принципы организации последней. FAT32 поддерживает жесткие диски объемом до 2 терабайт. Впервые файловая система FAT32 была включена в состав ОС Windows 95 OSR 2. В FAT32 были расширены атрибуты файлов, позволяющие теперь хранить время и дату создания, модификации и последнего доступа к файлу или каталогу. ВFAT32 адрес каждого кластера стал 32 разрядным, что позволило иметь на диске до 232= 4 млрд. кластеров. ВFAT32 объем кластера должен быть не менее 4 кБ, а объем диска – не менее 512 МБ. Корневой каталог в FAT32 больше не располагается в определенном месте, вместо этого хранится указатель на начальный кластер корневого каталога. В результате снимается ранее существовавшее ограничение на число записей в корневом каталоге. Кроме того, для учета свободных кластеров, в зарезервированной области на разделе FAT32 имеется сектор, содержащий число свободных кластеров и номер самого последнего использованного кластера. Это позволяет системе при выделении следующего кластера не перечитывать заново всю таблицу размещения файла.FAT32 поддерживается в Windows 98, Windows ME, Windows 2000 и Windows XP.

Файловая система NTFS(NewTechnologyFileSystem) - наиболее предпочтительная файловая система при работе с ОС Windows 2000 иWindowsXP.

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

NTFS является 64-разрядной файловой системой, что дает возможность иметь 264кластеров, каждый размером до 64 Кбайт. Как и в FAT размер кластера может меняться, но необязательно возрастает пропорционально размеру диска. NTFS позволяет хранить файлы размером до 16 эксабайт (264байт).

Файловая система NTFSявляетсяжурналируемой– все изменения в файловой системе записываются в специальный журнал транзакций (log file), что позволяет восстанавливать файловую систему после сбоев системы.

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

Файловые системы UFS(UnixFileSystem) – это семейство файловых систем для операционных системUNIX. Существует много различных версий ОСUNIX, разработанных разными фирмами, соответственно существуют и различные видыUFS, в том числе 32-разрядные и 64-разрядныеUSF. Так же как и в других файловых системах, вUFSфайл записывается в один или несколько (а может быть и в несколько сотен тысяч) кластеров. ОсобенностьюUSFявляется иерархическая кластерная структура файла, включающая кластеры, содержащие адреса других кластеров данного файла. Еще одной особенностьюUFSявляется очень мощная и разветвленная система защиты файлов от несанкционированного доступа – для этого файловая система содержит большое количество атрибутов. Классическая UFS поддерживает 14-буквенные имена файлов, современные UFS позволяют создавать длинные имена (до 255 символов).

Перечислим еще несколько современных файловых систем, близких по принципам построения к NTFSиUSF.

Файловая система HPFS(HighPerformanceFileSystem) была разработана вместе с операционной системойOS/2. По структуре и возможностям близка кNTFS. В настоящее время используется редко.

Файловые системы Linux ext, Linux ext2, Linux ext3(extendedfilesystem) специально разработаны под операционную системуLinux. Они обладают высокой надежностью и производительностью. Начиная сext3 файловая система становится журналируемой.

Файловая система XFS — высокопроизводительная 64-разрядная журналируемая файловая система, созданная компанией Silicon Graphics и поддерживаемая операционными системами Linux (начиная с версии 2.4.25) и. FreeBSD. Позволяет эффективно работать с данными на RAID-массивах и других носителях очень большого объема.

Для персональных компьютеров MacподMacOSXиспользуются файловые системыHFS(HierarchicalFileSystem),HFSPlus. Недавно для этих компьютеров была разработана высокопроизводительная 64- битная сетевая файловая системаXsan.

Одной из неприятностей, возникающих при работе с файловой системой, является фрагментация файлов – в процессе удаления файлов (очистки кластеров) и записи новых файлов (заполнения кластеров) неизбежно оказывается, что многие файлы состоят из кластеров, находящихся в разных частях диска. В результате сильно понижается скорость работы с диском (для чтения или записи фрагментированного файла магнитной головке необходимо последовательно перемещаться на все дорожки, содержащие кластеры этого файла). Для избежания этого необходимо периодически проводить процедуру дефрагментации диска– запускать специальную утилиту, которая собирает данные из всех кластеров каждого файла и записывает их в компактную область диска (насколько это возможно). Для эффективной работы процедуры дефрагментации необходимо, чтобы диск не был полностью занят, желательно, чтобы не менее 20 – 30% диска было свободно. Особенно это важно для файловой системыNTFS. Процедуру дефрагментации лучше проводить, не дожидаясь сильной фрагментации диска, т.к. время на эту процедуру резко возрастает с увеличением фрагментации. Для сильно фрагментированного диска процедура дефрагментации может потребовать несколько часов. Для проведения дефрагментации в состав ОСWindowsвходит утилита, которая так и называется Дефрагментация диска.

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

 

6.2. Логическая файловая система.

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

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

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

Полное имя файла формируется следующим образом. Корневой каталог обозначается идентификатором диска с двоеточием после него, например c:,d:,e: и т.д. Далее указывается вся цепочка имен вложенных папок, приводящая к данному файлу, в конце указывается имя файла. Для отделения имени файла от имени папки и имен папок в цепочке друг от друга используется разделитель. ВWindowsэто обратный слеш \, вUNIX– просто слеш / (впрочем, сейчас многие оболочки допускают оба этих разделителя). Таким образом, записьc:\Windows\System32\cmd.exeозначает, что файл с именемcmd.exeнаходится в папкеSystem32, которая вложена в папкуWindows, которая, в свою очередь, вложена в корневую папку дискаc: (находится в корневом каталоге дискаc:). При этом записьc:\Windows\System32\cmd.exeможно рассматривать как одно уникальное имя – полное имя файлаcmd.exe.

Кроме структуры вложенных папок и формирования полного имени, логическая файловая структура включает в себя обработку атрибутов и расширений файлов. Например, для файла могут быть указаны атрибуты «системный», «скрытый», «только для чтения». Расширение файла обозначает его тип: txt– простой текстовой документ,doc– документMSWord,mp3 – мультимедийный файл и т.д. В функцию логической файловой системы входит установка, обработка и интерпретация всех этих значений в соответствии с командами пользователя или запросами программ.


Дата добавления: 2018-10-26; просмотров: 2594; Мы поможем в написании вашей работы!

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






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