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

Автор работы: Пользователь скрыл имя, 14 Июня 2012 в 22:01, реферат

Описание работы

В большинстве файловых систем имя файла используется для указания к какому именно файлу производится обращение. В различных файловых системах ограничения на имя файла сильно различаются:
В FAT16 и FAT12 размер имени файла ограничен 8 символами (плюс 1 (точка) плюс 3 символа расширения).
В VFAT ограничение 255 байт.
В FAT32, HPFS имя файла ограниченно 255 символами
В NTFS имя ограничено в некоторых ОС 255 символами

Файлы: 1 файл

1готовая курсовая.docx

— 135.83 Кб (Скачать файл)

1.1 Имя файла.

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

В FAT16 и FAT12 размер имени файла ограничен 8 символами (плюс 1 (точка) плюс 3 символа расширения).

В VFAT ограничение 255 байт.

В FAT32HPFS имя файла ограниченно 255 символами

В NTFS имя ограничено в некоторых ОС 255 символами Unicode, по спецификации 32768 символов

В ext2/ext3 ограничение 255 байт.

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

Для MS-DOS в имени файла допустимы только заглавные латинские буквы, цифры. Недопустимы пробел, знак вопроса, звёздочка, символы больше/меньше, символ вертикальной черты.[1] При вызове системных функций именами файлов в нижнем или смешанном регистре, они приводятся к верхнему регистру.

Для Microsoft Windows в имени файла разрешены заглавные и строчные буквы, цифры, некоторые знаки препинания, пробел. Запрещены символы > < | ? * / \ : ".

Для GNU/Linux (с учётом возможности маскировки) разрешены все символы, кроме и байта, значение которого равно нулю, то есть 0x00.

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

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

    Основная  статьярасширение имени файла

    Расширение  имени файла (часто расширение файла  или расширение) как самостоятельный  атрибут файла существует в файловых системах FAT16FAT32NTFS, используемых операционными системами MS-DOS, DR-DOS, PC DOS, MS Windows и используется для определения типа файла. Оно позволяет системе определить, каким приложением следует открывать данный файл. По умолчанию в операционной системе Windows расширение скрыто от пользователя.

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

1.2 Атрибуты.

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

Название  атрибута перевод значение файловые  системы операционные  системы
READ ONLY только для  чтения в файл запрещено  писать FAT32, FAT12, FAT16, NTFS, HPFS, VFAT DOS, OS/2, Windows
SYSTEM системный критический для  работы операционной системы файл FAT32, FAT12, FAT16, NTFS, HPFS, VFAT DOS, OS/2, Windows
HIDDEN скрытый файл скрывается от показа, пока явно не сказано обратное FAT32, FAT12, FAT16, NTFS, HPFS, VFAT DOS, OS/2, Windows
ARCHIVE архивный (требующий архивации) файл изменён  после резервного

копирования или не был скопирован программами  резервного копирования

FAT32, FAT12, FAT16, NTFS, HPFS, VFAT DOS, OS/2, Windows
SUID Установка пользовательского ID выполнение  программы от имени владельца ext2 Unix-like
SGID Установка группового ID выполнение  программы от имени группы (для  каталогов: любой файл созданный в каталоге с установленным SGID, получит заданную группу-владельца) ext2 Unix-like
Sticky Bit липкий бит предписывает  ядру не выгружать завершившуюся  программу из памяти сразу, а лишь спустя некоторое время, чтобы избежать постоянной загрузки с диска наиболее часто используемых программ ext2 Unix-like

 
 

Время

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

  • Время создания
  • Время модификации
  • Время последнего доступа

Владелец  и группа файла

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

1.3 Права доступа

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

В UNIX-подобных операционных системах для файлов обычно выделяют три типа прав:

  • Право на запись
  • Право на чтение
  • Право на выполнение

Каждое право  задаётся раздельно для владельца, для группы и для всех остальных. ACL позволяют расширить этот список.

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

  • Право на чтение
  • Право на запись
  • Право на исполнение
  • Право на удаление
  • Право на смену атрибутов и владельца
  • Право на создание, удаление подпапок (для папок)
  • Право на чтение прав доступа

Каждое право  может быть задано как разрешением, так и запретом, запрет имеет больший  приоритет, чем разрешение.

Операции  с файлом

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

 
 
 
 
 

1.4 Операции, связанные с открытием файла

В зависимости  от операционной системы те или иные операции могут отсутствовать.

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

  • хэндлер файла, или дескриптор (описатель). При открытии файла (в случае, если это возможно), операционная система возвращает число (или указатель на структуру), с помощью которого выполняются все остальные файловые операции. По их завершению файл закрывается, а хэндлер теряет смысл.
  • файловый указатель. Число, являющееся смещением относительно нулевого байта в файле. Обычно по этому адресу осуществляется чтение/запись, в случае, если вызов операции чтения/записи не предусматривает указание адреса. При выполнении операций чтения/записи файловый указатель смещается на число прочитанных (записанных) байт. Последовательный вызов операций чтения таким образом позволяет прочитать весь файл не заботясь о его размере.
  • файловый буфер. Операционная система (и/или библиотека языка программирования) осуществляет кэширование файловых операций в специальном буфере (участке памяти). При закрытии файла буфер сбрасывается.
  • режим доступа. В зависимости от потребностей программы, файл может быть открыт на чтение и/или запись. Кроме того, некоторые операционные системы (и/или библиотеки) предусматривают режим работы с текстовыми файлами. Режим обычно указывается при открытии файла.
  • режим общего доступа. В случае многозадачной операционной системы возможна ситуация, когда несколько программ одновременно хотят открыть файл на запись и/или чтение. Для регуляции этого существуют режимы общего доступа, указывающие на возможность осуществления совместного доступа к файлу (например, файл в который производится запись может быть открыт для чтения другими программами — это стандартный режим работы log-файлов).
  • 1.5 Операции
  • Открытие файла (обычно в качестве параметров передается имя файла, режим доступа и режим совместного доступа, а в качестве значения выступает файловый хэндлер или дескриптор), кроме того обычно имеется возможность в случае открытия на запись указать на то, должен ли размер файла изменяться на нулевой.
  • Закрытие файла. В качестве аргумента выступает значение, полученное при открытии файла. При закрытии все файловые буферы сбрасываются.
  • Запись — в файл помещаются данные.
  • Чтение — данные из файла помещаются в область памяти.
  • Перемещение указателя — указатель перемещается на указанное число байт вперёд/назад или перемещается по указанному смещению относительно начала/конца. Не все файлы позволяют выполнение этой операции (например, файл на ленточном накопителе может не «уметь» перематываться назад).
  • Сброс буферов — содержимое файловых буферов с незаписанной в файл информацией записывается. Используется обычно для указания на завершение записи логического блока (для сохранения данных в файле на случай сбоя).
  • Получение текущего значения файлового указателя.
 

Операции, не связанные с  открытием файла

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

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

Список  операций с файлами

  • Открытие для изменения файла
  • Удаление файла
  • Переименование файла
  • Копирование файла
  • Перенос файла на другую файловую систему/носитель информации
  • Создание симлинка или хардлинка
  • Получение или изменение атрибутов файла
 
 
 
 
 
 
 
 
 
 

1.6 Типы файлов

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

  • «Обыкновенный файл» — файл, позволяющий операции чтения, записи, перемещения внутри файла
  • Каталог (англ. directory алфавитный справочник) или директория — файл, содержащий записи о входящих в него файлах. Каталоги могут содержать записи о других каталогах, образуядревовидную структуру.
  • Жёсткая ссылка (англ. hardlink, часто используется калька «хардлинк») — в общем случае, одна и та же область информации может иметь несколько имён. Такие имена называют жёсткими ссылками (хардлинками). После создания хардлинка сказать где «настоящий» файл, а где хардлинк невозможно, так как имена равноправны. Сама область данных существует до тех пор, пока существует хотя бы одно из имён. Хардлинки возможны только на одном физическом носителе.
  • Символьная ссылка (симлинк, софтлинк) — файл, содержащий в себе ссылку на другой файл или директорию. Может ссылаться на любой элемент файловой системы, в том числе, и расположенный на другом физическом носителе.Особенности реализации

В операционной системе UNIX процессы (обычно находятся в каталоге /proc) и устройства (/dev) представляются в виде файлов особого рода, что позволяет использовать некоторые файловые операции для манипуляции этими объектами.

В некоторых  файловых системах (например, в файловой системе OS VAX VMS) файлы имеют версию, что позволяет открывать более старые варианты данного файла. В файловой системеMac OS (HFS) у файлов есть два «потока»: поток данных (где хранится содержимое файла) и поток ресурсов, хранящий информацию о программе, предназначенной для открывания данного файла и, возможно, некоторую информацию для этой программы. В NTFS файл может содержать, кроме основного, сколько угодно именованных потоков.

Проблема  точного определения  понятия файл

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

 
 
 
 

2.Файловые  системы

 

1. Общие сведения  о файловых системах

 

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

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

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

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