Для чего служит файл
Компьютерный файл
Файл (англ. 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) и файловая система?
Здравствуйте, уважаемые читатели блога Goldbusinessnet.com! Файл является одним из самых важных понятий, которые определяют передачу и хранение информации в интернете и на устройствах, посредством которых мы получаем доступ к Мировой Паутине. Английский термин «file» появился в середине прошлого столетия, когда зарождалась эпоха компьютеров.
Мы довольно часто используем этот термин, но лишь немногие из нас понимают его глубинный смысл. Обычные пользователи совершают различные действия над файлами, полностью не понимая их сущности. В большинстве случаев доскональное знание и не требуется, если вы среднестатистический юзер. Но ежели ваша деятельность в интернете носит профессиональный характер, представления о файлах, их именах и расширениях должны быть шире.
В этой статье я попытаюсь дать необходимые разъяснения по термину «file» и всему, что с ним связано, именно для обычных пользователей на доступном им языке и постараюсь не прибегать к малопонятным сугубо техническим определениям.
Форматы (типы) и расширения файлов
Итак, говоря простым языком и не углубляясь в детали, можно констатировать, что file — это специальный именованный сегмент для хранения информации. В большинстве операционных систем (ОС) используется имя файла, состоящее из собственно его названия и расширения, что дает возможность его идентифицировать и определить тип содержимого, то есть формат. Расширение файла отделяется от его названия точкой:
Если иметь ввиду приведенный пример, то каждый мало-мальски опытный пользователь знает, что подобный пдф файл можно открыть с помощью известной программы Adobe Reader (к слову, одноименная корпорация является его разработчиком).
Таким образом, во многих операционных системах, включая самую популярную — Windows, расширения играют определяющую роль. Это позволяет открывать нужные файлы в подходящем им софте. Когда пользователь открывает file, автоматически запускается соответствующая его расширению программа либо оную можно определить по формату файла.
Вы, наверное, уже поняли, что тип (или формат) файла определяется его расширением. Причем, в Виндоус можно визуально (по характерным иконкам) отличать разные типы. Например, документ для Adobe, архивы ZIP и RAR, всем известный исполняемый файл EXE для любого приложения и file динамически подключаемой библиотеки DLL будут отображены так:
А, скажем, файлы видео (в форматах MP4 и WMV), аудио (MP3) или изображений (в форматах JPG и PNG) выглядят вот таким образом:
Но ОС Виндовс предназначена для широкого пользования, поэтому по умолчанию расширения в ней не отображаются. Это сделано для того, чтобы пользователь при редактировании названия файла случайно не изменил бы также и его расширение, что может привести к нарушению соответствия, в результате чего file в дальнейшем не откроется в нужной программе.
Однако, если вы хотите добиться отображения расширений, то в Windows 7, например, это можно сделать следующим образом. Переходите из меню «Пуск» в раздел «Компьютер», там находите пункт «Упорядочить» и из выпадающего меню выбираете «Параметры папок и поиска»:
Откроется диалоговое окно, где во вкладке «Вид» находите строчку «Скрывать расширения для зарегистрированных типов файлов», напротив которой убираете галочку, и жмете «OK»:
Существует еще несколько классификаций файлов, из которых я выделю одну. Все файлы обычно подразделяются на две большие группы: пользовательские и системные. Принадлежащие первой группе обычно скачиваются извне или создаются самими пользователями и в результате открытия соответствующим софтом отображают свое содержание (видео, музыка, изображения).
Системные же файлы служат для обеспечения продуктивной и надежной работы операционной системы. Их несанкционированное редактирование может привести к плачевным последствиям, поэтому в Виндоус, к примеру, по умолчанию они скрыты.
Когда вы станете продвинутым пользователем, можно открыть их, сняв галочку напротив пункта «Скрывать защищенные системные файлы (рекомендуется)» в той же вкладке «Вид»:
Представляю наиболее часто используемые расширения по типу файлов в форме таблицы:
Расширение | Тип файла | Примеры |
exe | приложения (программы) | CCleaner.exe |
doc | документы (Microsoft Word) | План работы.doc |
xls | таблицы (Microsoft Excel) | Реестр.xls |
txt | простые текстовые документы | текст.txt |
ppt | презентации (Microsoft PowerPoint) | Моя Презентация.ppt |
html | вебстраницы из Интернета | Руководство.html |
png | изображение, фотография | изображение1.png |
jpg | Фото.jpg | |
gif | изображение2.gif | |
mp3 | Аудио | Музыкальная композиция.mp3 |
mp4 | видео | Видеоролик.mp4 |
zip | Архивы (ZIP, WinRAR) | Видеокурс.zip |
rar | Видеокурс.rar |
Конечно, это далеко не все возможные данные. Более подробный список популярных форматов и расширений вы сможете почерпнуть с данной страницы, которая весьма информативна в этом плане. Кто предпочитает видеоформат, может просмотреть качественный ролик по теме:
Для чего необходима файловая система
Ответ на этот вопрос чрезвычайно прост: ФС нужна для упорядочения хранения информации в виде пользовательских и системных файлов и обеспечения их безопасного использования. Существует несколько видов файловых систем, самая распространенная и современная из которых — NTFS, применяемая в Виндоус.
Можно посмотреть, какая система файлов используется в ОС вашего компьютера. Для Windows 7 последовательность действий следующая (к слову, в десятке почти то же самое). Открываете проводник (раздел «Компьютер» из меню кнопки «Пуск»), выбираете любой диск (C, D и т.д.), кликаете по нему правой кнопкой мышки и из выпадающего списка находите пункт «Свойства». Во вкладке «Общие» и присутствует нужная информация:
В задачу ФС входит создание иерархии каталогов (папок), по которым распределены файлы в соответствии с их форматом. Причем, скажем, для UNIX-подобных операционных систем существует только один единственный корневой каталог, который объединяет в одно дерево другие вложенные папки или файлы. Для Виндоус может быть создано несколько независимых ответвлений. Вот пример дерева каталогов в Windows:
Если брать такой важный параметр как безопасность, то файлы наиболее защищены в UNIX. Эта одно из преимуществ, по которым именно эта операционка используется, например, на серверах хостинг-провайдеров, где «живут» сайты. Там высокий уровень защиты достигается в том числе путем регулирования доступа к файлам и папкам, что является отличительной чертой этой ОС.
В задачу ФС входит также отображение свойств каталогов и файлов. Если в Виндовс щелкнуть правой кнопкой мышки по любому файлу или папке, то мы тут же получаем все параметры для просмотра: размер, дата создания, место расположения или путь (например, D:\Foto\Foto1).
Думаю, предоставленной информации для общего пользования вполне достаточно. При желании вы можете дополнить ее, просмотрев ниже следующий весьма информативный видеоролик. Надеюсь также, что вы не забудете о существовании кнопок соцсетей, находящихся внизу.
Для чего служит файл
Файл (англ. 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 файл может содержать, кроме основного, сколько угодно именованных потоков.
Проблема точного определения понятия «файл»
Так как файл в разных операционных системах обладает различным набором атрибутов, свойств и методов доступа, универсального определения, которое бы учитывало все особенности, сформулировано не было.