Реклама на сайте (разместить):



Реклама и пожертвования позволяют нам быть независимыми!

Файл (компьютерный)

Материал из Викизнание
Перейти к: навигация, поиск

«Файл» имеет и другие значения...(?)

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

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

Файл как форма представления информации[править]

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

Некоторые из форматов очень распространены и хорошо известны:

  • для музыки: MP3 (полное название: MPEG1 Layer III), OGG Vorbis...;
  • для текста: HTML;
  • для видео: DivX;
  • для фотографий: JPEG;
  • и многие другие.

Очень часто (хотя и не всегда) для идентификации формата используется расширение файла — конечная часть имени файла начинающаяся с точки, например, если полное имя файла sweet home.jpg, то расширением будет jpg (иногда указывется вместе с точкой: .jpg). Операционная система Windows и многие другие используют для первоначальной индентификации формата (или группы форматов) расширение — по расширению определяется сопутствующий файлу значок в «проводнике» и запускаемое для работы с файлом приложение. В операционной системе AmigaOS расширение — факультативный идентификактор.

У очень многих форматов есть метка внутри файла, идентифицирующая этот формат.

Файл в формате GIF. Записи-байты представлены в виде шестнадцатеричных кодов (по две цифры). Красным обведена метка, идентифицирующая формат GIF. Сам файл: Файл:Призма_Николя.gif.

Протокол HTTP использует специальный механизм идентификации формата — вместе с файлом передаётся строка, mime-тип.

Один из самых простых форматов файлов является текстовый. Текстовый файл представляет собой последовательность кодов символов в одной из кодировок. Текстовый формат — основа для файлов-исходников на многих языках программирования, а также языков разметкиHTML, TeX, RTF. Получается, что файлы использующие язык разметки имеют помимо обычного (веб-страница и т. д.) ещё одно, промежуточное представление.

Так например, HTML-файл, выглядящий в браузере так:

Hello, world!

в виде исходника выглядит примерно следующим образом:

<html>
 <head>
  <title>Sample page</title>
 </head>
 <body>
  <font color="green">Hello, world!</font>
 </body>
</html>

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

Файл и носители информации[править]

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

  • Время создания, последней модификации, последнего доступа (иногда только последней модификации).
  • Признаки уровня доступа к файлу — возможность чтения, записи, исполнения, удаления файла различными пользователями (используется в пмногопользовательских ОС).
  • Прочие признаки: признак архивированности, исполняемости, скрытости, системности и пр.

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

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

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

Обмен файлами[править]

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

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

Вместе с ростом популярности Фидо распространение получил иной способ передачи фалйов: файл кодировался в виде последовательности печатных символов и вставлялся в письмо как обычный фрагмент текста. Для этого были разработаны специальные форматы UUEncode (самый распространённый), XXEncode. Такой подход давал возможность пересылать файлы не изменяя самих протоколов, по которым работала фидошная почта, расчитанная на обмен текстом. В Интернете этот способ укрепился в той-же нише — в электронной почте. Для кодирования файлов здесь используется BASE64. Практически все почтовые программы кодируют и декодирую файлы и теле писем автоматически и незаметно для пользователя.

Для обмена файлами по компьютерным сетям также появилось большое количество протоколов, многие из которых предоставляют дополнительные возможности. Протокол HTTP, основа всемирной паутины имеет возможность передачи файлов в обоих направленияхмежду сервером и клиентом. Для «защищённой» передачи файлов существет протокол SCP (Secure CoPy — «безопасное копирование»).

Существует семейство протоколов, предоставляюших не просто обмен файлами, но и полноценный доступ к файловым системам удалённых машин. Это:

  • NetBios — часто используется для обмена файлами в локальных сетях, благодаря тому, что встроен в ОС Windows;
  • FTP — также очень популярный протокол доступа.
  • NFS;
  • и другие, менее распространённые.

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

  • Napster был самой первой майлообменной сетью в Интернете.
  • BitTorrent — протокол для быстрого распространения файлов в группе пользователей, херектерно отсутствие поиска.
  • Kazaa
  • Ed2k
  • Gnutella — сеть с открытым протоколом. В своё время была парализована медиа-корпорациями, завалившими её большим количеством фальшивых файлов (?).

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

Файл в более широком смысле[править]

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

См. также[править]

Статью можно улучшить?
✍ Редактировать 💸 Спонсировать 🔔 Подписаться 📩 Переслать 💬 Обсудить
Позвать друзей
Вам также может быть интересно: