Файл: что такое, его имя, свойства, формат, части. Информатика
Содержание:
Статья ознакомит с понятием файловой системы (ФС), файла в среде Windows, их свойствами и характеристиками. Кратко рассмотрим принципы хранения, адресации информации на компьютере, разберёмся, из чего состоит имя файла (документа), с правилами написания их имён.
Файловая система в информатике: что это
Для хранения информации на накопителе его необходимо отформатировать – сформировать файловую систему – это в информатике порядок, методика организации хранения данных на цифровых носителях. От неё зависит формат файлов, их атрибуты, способ записи на накопитель, порядок обращения, свойства, возможности (работа с архивными версиями, разделение прав доступа).
На устройствах с ОС Windows наиболее распространены ФС FAT32 (старая) и NTFS.
Что такое файл, путь к нему
Данные на цифровых носителях хранятся в виде документов – это адресуемая область памяти на накопителе, единица, базовый объект при работе программного обеспечения с данными. В графическом интерфейсе (Проводнике) выглядит как объект с именем и разрешением. Разберёмся, из каких двух частей состоит имя файла.
Физически файл – это контейнер, внутри которого определённым образом сосредоточена информация. Способ её размещения, позволяющий считывать и записывать данные внутрь контейнера называется форматом. Программы и ОС для работы с данными обращаются к файлам как элементарным единицам цифрового объекта. Информацию об адресах ячеек, последовательности обращения к ним для считывания содержимого контейнера им сообщает драйвер ФС.
В ОС UNIX документами являются даже порты и периферийные устройства.
Имена и адреса
В операционных системах Windows полное имя файла любого типа (графического, исполняемого, мультимедийного) состоит из нескольких частей. Например, C:\Windows\system32\calc.exe:
Имена документам дают приложения, в которых они создаются, или пользователи. Для экономии дискового пространства и трафика во время передачи по сети файлы архивируют – сжимают. Видео, установщики, аудио, многие графические документы сжаты по умолчанию, текстовые (txt, docx) и несжатые типы (bmp, aiff, wav, raw – исходники фото с цифровых камер) архивируются лучше всего.
Расширение – не обязательная часть документа. Оно служит для идентификации объектов пользователем, операционной системой и программами, указывает на формат файла. ОС устанавливает взаимосвязь, ассоциацию между разрешением и приложениями. При открытии пользователем документа он автоматически загружается в привязанную к разрешению программу. Если это file.docx – открывается через Word, mp3 – загрузится в аудиоплеер, а mp4 – воспроизводит мультимедийный проигрыватель.
Если объект хранится в сети, перед его полным путём указывают:
В одной директории не могут размещаться два объекта с одинаковыми именами и расширениями. В распространённых в Windows ФС строчные и заглавные буквы идентичны: File.avi, FILE.mp3 и file.mp3 – одно имя.
Длина участков имени (названия каждого каталога в пути) для NTFS ограничена 255 символами, общая длина пути – 32 000 знаками. Файл с названием длиной 255 символов может храниться в 124 подкаталогах с максимальной длиной наименования.
В имени допустимо использование символов Unicode за исключением ряда специальных знаков: двойной кавычки, черты и косой черты, вертикальной линии, вопросительного знака, звёздочки, двоеточия, знаков «больше» и «меньше».
Для документов в Windows предусмотрены атрибуты – метаданные, дополнительная информация, описывающая их. В Windows предусмотрено четыре атрибута со значением «Активно» либо «Отключено». Это:
Устанавливаются и снимаются атрибуты в свойствах документа (вызываются правой клавишей мыши).
Тесты
Определите, какие из файлов сжимаются лучше всего:
Имя файла. Имя файла состоит из двух частей, разделенных точкой: собственно имя файла и расширение, определяющее его тип (программа, данные и так далее). Собственно имя файлу дает пользователь, а тип файла обычно задается программой автоматически при его создании.
В различных операционных системах существуют различные форматы имен файлов. В операционной системе MS-DOS собственно имя файла должно содержать не более 8 букв латинского алфавита, цифр и некоторых специальных знаков, а расширение состоит из трех латинских букв, например: proba.txt
В операционной системе Windows имя файла может иметь длину до 255 символов, причем можно использовать русский алфавит, например: Единицы измерения информации.doc
Таблица 1.1. Типы файлов и расширений
Программы на языках программирования
Таблица 1.2. Одноуровневый каталог
Имя файла
Номер начального сектора
Файл_1
56
Файл_2
89
Файл_112
1200
Начальный, корневой каталог содержит вложенные каталоги 1-го уровня, в свою очередь, каждый из последних может содержать вложенные каталоги 2-го уровня и так далее. Необходимо отметить, что в каталогах всех уровней могут храниться и файлы.
Файловая система— это система хранения файлов и организации каталогов.
Рис. 1.3. Иерархическая файловая система
Рис. 1.4. Пример иерархической файловой системы
Путь к файлу вместе с именем файла называют иногда полным именем файла.
Пример полного имени файла:
Однако иерархическая структура этих систем несколько различается. В иерархической файловой системе MS-DOS вершиной иерархии объектов является корневой каталог диска, который можно сравнить со стволом дерева, на котором растут ветки (подкаталоги), а на ветках располагаются листья (файлы).
Рис. 1.5. Иерархическая структура папок
Если мы хотим ознакомиться с ресурсами компьютера, необходимо открыть папку Мой компьютер.
1. В окне Мой компьютер находятся значки имеющихся в компьютере дисков. Активизация (щелчок) значка любого диска выводит в левой части окна информацию о его емкости, занятой и свободной частях.
Файл (англ. file — папка, скоросшиватель) — концепция в вычислительной технике: сущность, позволяющая получить доступ к какому-либо ресурсу вычислительной системы и обладающая рядом признаков:
В отличие от переменной, файл (в частности, его имя) имеет смысл вне конкретной программы. Работа с файлами — по крайней мере, в «простейшем» представлении — реализуется средствами операционных систем, а до их появления реализовывалась их предшественниками — мониторами и библиотеками подпрограмм.
Ресурсами, доступными через файлы, в принципе, может быть что угодно, представимое в цифровом виде. Чаще всего в их перечень входят:
Файлы первого типа исторически возникли первыми и распространены наиболее широко, поэтому часто «файлом» называют и область данных, соответствующую имени.
Содержание
Файловая система
По мере развития вычислительной техники файлов в системах становилось всё больше. Для удобства работы с ними их, как и другие данные, стали организовывать в структуры (тогда же появились символьные имена). Вначале это был простой массив, «привязанный» к конкретному носителю информации. В настоящее время наибольшее распространение получила древовидная организация с возможностью монтирования и вставки дополнительных связей (т. е. ссылок). Соответственно, имя файла приобрело характер пути к файлу: перечисление узлов дерева файловой системы, которые нужно пройти, чтобы до него добраться.
Файл как объект API операционной системы
Операционная система предоставляет приложениям набор функций и структур для работы с файлами. Возможности операционной системы накладывают дополнительные ограничения на ограничения файловой системы. С точки зрения API файл — объект, по отношению к которому могут быть применены функции этого API. На уровне API уже не существенно, существует ли файл как объект файловой системы или является, например, устройством ввода/вывода.
Свойства файла
В зависимости от файловой системы, файл может обладать различным набором свойств.
Имя файла
В большинстве файловых систем имя файла используется для указания к какому именно файлу производится обращение. В различных файловых системах ограничения на имя файла сильно различаются:
Помимо ограничений файловой системы, интерфейсы операционной системы дополнительно ограничивают набор символов, который допустим при работе с файлами.
Расширение имени файла (часто расширение файла или расширение) как самостоятельный атрибут файла существует в файловых системах FAT16, NTFS, используемых операционными системами MS DOS, DR DOS, PC DOS, MS Windows и используется для определения типа файла.Оно позволяет системе определить, каким приложением следует открывать данный файл. По умолчанию в операционной системе Windows расширение скрыто от пользоватея. В остальных файловых системах расширение — условность, часть имени, отделённая самой правой точкой в имени.
Атрибуты
В некоторых файловых системах предусмотрены атрибуты (обычно это бинарное значение «да»/«нет», кодируемое одним битом). Практически атрибуты не влияют на возможность доступа к файлам, для этого в некоторых файловых системах существуют права доступа.
Название атрибута
перевод
значение
файловые системы
операционные системы
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
Время
Для файла могут быть определены следующие временные метки:
Владелец и группа файла
В некоторых файловых системах предусмотрено указание на владельца файла, и группу владельца.
Права доступа
В некоторых файловых системах предусмотрена возможность для ограничения доступа пользователей к содержимому файла
В UNIX-подобных операционных системах для файлов обычно выделяют три типа прав:
Каждое право задаётся раздельно для владельца, для группы и для всех остальных.
В операционных системах Windows NT при работе с файловой системой NTFS права доступа задаются явно для пользователей или групп (или наследуются от вышестоящих объектов). Права в себя включают:
Каждое право может быть задано как разрешением, так и запретом, запрет имеет больший приоритет, чем разрешение.
Операции с файлом
Операции, связанные с открытием файла
В зависимости от операционной системы те или иные операции могут отсутствовать.
Обычно выделяют дополнительные сущности, связанные с работой с файлом:
Операции, не связанные с открытием файла
Операции, не требующие открытия файла оперируют с его «внешними» признаками — размером, именем, положением в дереве каталогов. При таких операциях невозможно получить доступ к содержимому файла, файл является минимальной единицей деления информации.
В зависимости от файловой системы, носителя информации, операционной системой часть операций может быть недоступна.
Типы файлов
В различных операционных и/или файловых системах могут быть реализованы различные типы файлов; кроме того, реализация различных типов может различаться.
Особенности реализации
В операционной системе процессы (обычно находятся в каталоге /proc) и устройства (/dev) представляются в виде файлов особого рода, что позволяет использовать некоторые файловые операции для манипуляции этими обьектами.
В некоторых файловых системах (например, в файловой системе OS VAX VMS) файлы имеют версию, что позволяет открывать более старые варианты данного файла. В файловой системе Mac OS (HFS) у файлов есть два «потока»: поток данных (где хранится содержимое файла) и поток ресурсов, хранящий информацию о программе, предназначенной для открывания данного файла и, возможно, некоторую информацию для этой программы. В
Проблема точного определения понятия файл
Так как файл в разных операционных системах обладает различным набором атрибутов, свойств и методов доступа, формулировка универсального определения, которое бы учитывало все особенности, сформулировано не было.
Файл (англ. file ) — блок информации на внешнем запоминающем устройстве компьютера, имеющий определённое логическое представление (начиная от простой последовательности битов или байтов и заканчивая объектом сложной СУБД), соответствующие ему операции чтения-записи (см. ниже) и, как правило, фиксированное имя (символьное или числовое), позволяющее получить доступ к этому файлу и отличить его от других файлов (см. ниже).
Работа с файлами реализуется средствами операционных систем. Многие операционные системы приравнивают к файлам и обрабатывают сходным образом и другие ресурсы:
Содержание
История
Слово file впервые применено к компьютерному хранилищу в 1950 году. Реклама памяти на запоминающих ЭЛТ фирмы RCA в журнале «Popular Science» [1] гласила:
…результаты бесчисленных вычислений можно держать «в картотеке» (on file) и получать снова. Эта «картотека» теперь существует в запоминающей трубке, разработанной в лабораториях RCA. Она электрически сохраняет цифры, отправленные в вычислительную машину, и держит их в хранилище, заодно запоминая новые — ускоряя интеллектуальные решения в лабиринтах математики.
В 1952 году слово file отнесли к колоде перфокарт. [2] Поначалу словом file называли само устройство памяти, а не его содержимое (см. Регистровый файл). Например, диски IBM 350, использовавшиеся, например, в машине IBM 305, назывались disk files. [3] Системы наподобие Compatible Time-Sharing System ввели концепцию файловой системы, когда на одном запоминающем устройстве существует несколько виртуальных «устройств памяти», что и дало слову «файл» современное значение. Имена файлов в CTTS состояли из двух частей, «основного имени» и «дополнительного имени» (последнее существует и поныне как расширение имени файла). [4] [5]
Файловая система
По мере развития вычислительной техники файлов в системах становилось всё больше. Для удобства работы с ними, их, как и другие данные, стали организовывать в структуры (тогда же появились символьные имена). Вначале это был простой массив, «привязанный» к конкретному носителю информации. В настоящее время наибольшее распространение получила древовидная организация с возможностью монтирования и вставки дополнительных связей (то есть ссылок). Соответственно, имя файла приобрело характер пути к файлу: перечисление узлов дерева файловой системы, которые нужно пройти, чтобы до него добраться.
Файл как объект API операционной системы
Операционная система предоставляет приложениям набор функций и структур для работы с файлами. Возможности операционной системы накладывают дополнительные ограничения на ограничения файловой системы. С точки зрения API файл — объект, по отношению к которому могут быть применены функции этого API. На уровне API уже не существенно, существует ли файл как объект файловой системы или является, например, устройством ввода/вывода.
Свойства файла
В зависимости от файловой системы, файл может обладать различным набором свойств.
Имя файла
В большинстве файловых систем имя файла используется для указания, к какому именно файлу производится обращение. В различных файловых системах ограничения на имя файла сильно различаются: в FAT16 и FAT12 размер имени файла ограничен 8.3 знаками (8 на имя и 3 на расширение); в других системах имя файла ограничено обычно в 255 байт; в NTFS имя ограничено в некоторых ОС 255 символами Unicode (по спецификации — 32 768 символов).
Помимо ограничений файловой системы, интерфейсы операционной системы дополнительно ограничивают набор символов, который допустим при работе с файлами.
Большинство операционных систем требуют уникальности имени файла в одном каталоге, хотя некоторые системы допускают файлы с одинаковыми именами (например, при работе с ленточными накопителями).
Расширение имени файла
Расширение имени файла (часто расширение файла или расширение) как самостоятельный атрибут файла существует в файловых системах FAT16, FAT32, NTFS, используемых операционными системами MS-DOS, DR-DOS, PC DOS, MS Windows и используется для определения типа файла. Оно позволяет системе определить, каким приложением следует открывать данный файл. По умолчанию в операционной системе Windows расширение скрыто от пользователя.
В остальных файловых системах расширение — условность, часть имени, отделённая самой правой точкой в имени.
Атрибуты
В некоторых файловых системах, таких как 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
Время
Для файла могут быть определены временные метки создания, модификации и последнего доступа.
Владелец и группа файла
В некоторых файловых системах предусмотрено указание на владельца файла и группу-владельца.
Права доступа
В некоторых файловых системах предусмотрена возможность для ограничения доступа пользователей к содержимому файла
В UNIX-подобных операционных системах для файлов обычно выделяют три типа прав: на запись, чтение и выполнение.
Каждое право задаётся раздельно для владельца, для группы и для всех остальных. ACL позволяют расширить этот список.
В операционных системах Windows NT при работе с файловой системой NTFS права доступа задаются явно для пользователей или групп (или наследуются от вышестоящих объектов). Права в себя включают право на чтение, запись исполнение, удаление, смену атрибутов и владельца, создание и удаление подпапок (для папок) и чтение прав доступа.
Каждое право может быть задано как разрешением, так и запретом, запрет имеет больший приоритет, чем разрешение.
Операции с файлом
Условно можно выделить два типа операций с файлом — связанные с его открытием, и выполняющиеся без его открытия. Операции первого типа обычно служат для чтения/записи информации или подготовки к записи/чтению. Операции второго типа выполняются с файлом как с «объектом» файловой системы, в котором файл является мельчайшей единицей структурирования.
Операции, связанные с открытием файла
В зависимости от операционной системы те или иные операции могут отсутствовать.
Обычно выделяют дополнительные сущности, связанные с работой с файлом:
Операции, не связанные с открытием файла
Операции, не требующие открытия файла, оперируют с его «внешними» признаками — размером, именем, положением в дереве каталогов. При таких операциях невозможно получить доступ к содержимому файла, файл является минимальной единицей деления информации.
В зависимости от файловой системы, носителя информации, операционной системой часть операций может быть недоступна.
Возможные операции с файлами: открытие для изменения, удаление, переименование, копирование, перенос на другую файловую систему/носитель информации, создание симлинка или хардлинка, получение или изменение атрибутов.
Типы файлов
В различных операционных и/или файловых системах могут быть реализованы различные типы файлов; кроме того, реализация различных типов может различаться.
Особенности реализации
В операционной системе UNIX процессы (обычно находятся в каталоге /proc) и устройства (/dev) представляются в виде файлов особого рода, что позволяет использовать некоторые файловые операции для манипуляции этими объектами.
В некоторых файловых системах (например, в файловой системе OS VAX VMS) файлы имеют версию, что позволяет открывать более старые варианты данного файла. В файловой системе Mac OS (HFS) у файлов есть два «потока»: поток данных (где хранится содержимое файла) и поток ресурсов, хранящий информацию о программе, предназначенной для открывания данного файла и, возможно, некоторую информацию для этой программы. В NTFS файл может содержать, кроме основного, сколько угодно именованных потоков.
Проблема точного определения понятия «файл»
Так как файл в разных операционных системах обладает различным набором атрибутов, свойств и методов доступа, универсального определения, которое бы учитывало все особенности, сформулировано не было.