Каждый файл на компьютере хранит в себе данные определённого типа. К примеру, это может быть текстовая информация, программные коды, изображение, звук или что-то другое. Интуитивно вы уже понимаете, что такое расширение файла. Поэтому сегодня мы дополним пробелы в знаниях и постараемся глубже вникнуть в тему.

Определение

Расширение - это вторая часть имени файла, находящаяся после точки. Как правило, оно состоит из 2-4 символов. Данное обозначение упрощает работу операционной системы, подсказывая ей, какая именно информация содержится в документе и какую программу нужно использовать, чтобы открыть файл.

При установке любой новой программы в реестр Windows вносятся данные о том, с какими форматами она может работать. Именно благодаря этому картинки открываются в специальных галереях, а музыка — с помощью мультимедийного проигрывателя. При желании вы можете изменить программу, которая будет использоваться для открытия файлов определённого типа.

Популярные расширения

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

  • Текстовые: txt, .doc (.docx), .rtf.
  • Веб-страницы: .htm и.html.
  • Архивы: .zip, .rar.
  • Изображения: .png, .bmp, .gif, .tiff.
  • Аудио: .mp3, .wav, .wma, .cda.
  • Видео: .avi, .wmv, .mpg (.mpeg), .MPEG-4, .wmv, .flv, .vob, .mdv, .swf.
  • Презентации: .ppt (.pptx).
  • Таблицы: .xls (.xslx).
  • Шрифты: .ttf, .otf.
  • Электронные книги: .pdf, .epub, .fb2, .djvu.
  • Базы данных: .mdb, .accdb.
  • Исполняемые (запуск или установка программ): .exe, .bat.

Совет: при работе с документами неизвестных форматов очень помогает русскоязычный сервис Open-File.ru. Просто вбейте название в поиске по справочнику, и вы увидите основную информацию: какие данные содержит документ (изображение, текст и т. д.), какая подходящая программа расширения файла, в которой его можно открыть.

Настройка отображения расширений

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

  1. Зайдите в "Панель управления".
  2. Найдите пункт он называется "Параметры папок", а в Windows 8 и 10 — "Параметры Проводника".
  3. В появившемся окне выберите вкладку "Вид".
  4. Найдите в списке "Дополнительные параметры" пункт "Скрывать расширения для зарегистрированных типов файлов" и поставьте галочку напротив него.
  5. Нажмите кнопку "Применить" и закройте окно.

Обратите внимание: если расширение файлов в Windows 7 или другой версии ОС отключено, нужно быть осторожнее при переименовании любых документов. Если случайно удалить или изменить данную приписку, файл будет невозможно открыть.

Как изменить расширение

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

Строго говоря, существует два способа сделать это:

  1. Переименовать документ — просто вписать вместо "родного" расширения то, которое вам нужно (например, .html вместо.txt).
  2. Использовать специальные программы-конвертеры. Некоторые устанавливаются на ПК, другие доступны онлайн. К ним прибегают в случае, если нужно полностью изменить кодировку документа.

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

Из популярных сервисов такого типа можно отметить Convertio. Этот онлайновый конвертер поддерживает большинство распространённых расширений файлов, а также имеет ряд дополнительных инструментов, таких как сжатие и объединение PDF-документов, конвертер URL для извлечения музыки и видео с сайтов, а также распознавание отсканированного текста.

Как изменить программу для открытия

И, наконец, рассмотрим ситуацию, когда вы скачали новое приложение и хотите использовать его для работы с определёнными документами. Например, изменить стандартную программу для просмотра фото в Windows на Microsoft Office Picture Manager. Как это сделать?

  1. Выделите нужный файл и откройте контекстное меню (правая кнопка мыши).
  2. Найдите пункт "Открыть с помощью" > "Выбрать другое приложение".
  3. Выберите в появившемся списке нужную программу и поставьте галочку возле надписи "Всегда использовать это приложение…".
  4. Нажмите "ОК".

Это значит, что такое расширение файла система теперь будет открывать с помощью той программы, которую вы выбрали. В Windows 8 и 10, если на ПК не обнаружено подходящего приложения, у вас также есть возможность найти его в "Магазине".

ЛЕКЦИЯ 19. СИСТЕМЫ ФАЙЛОВ

Понятие файла

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

Немного о терминологии. Слово файл уже несколько десятков лет используется как русское – один из многочисленных примеров программистских неологизмов. Первоначально, когда около 50 лет назад появился данный английский термин, в русскоязычной литературе специалисты пытались ввести другую терминологию – слово file переводили как фонд и даже тека (в смысле хранилище ). Однако исторически сложилось иное решение – слово файл стало русским. В английском языке слово file имеет много других значений: например, подшитый в папку бумажный документ и даже стадо (например, слонов) – в последнем случае, как можно предположить, размер "файла" может быть очень велик. У всех в памяти название легендарного сериала " X files" (в вольном русском переводе – "Секретные материалы").

Фирма IBM в документации по своей системе IBM 360 в 1960-х гг. использовала иной термин – набор данных (data set) – для обозначения этого же понятия, однако он не пережил операционную систему, в которой использовался.

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

Структура файла

В различных системах приняты различные точки зрения на структуру файлов. В ряде систем структура файла привязывалась к типу устройства, на котором он находится. В некоторых других системах структура файла была искусственно усложнена. Однако наиболее простую и унифицированную точку зрения из них предложили авторы системы UNIX : файл – это последовательность слов или байтов . Казалось бы, это очевидно, но преимущество данного подхода к файлам в том, что базовое представление файла и базовые операции над ним (read , write ) не зависят от типа устройства. В свое время для программистов нашего поколения такой подход к файлам был откровением, после сложностей системы файлов IBM 360, а затем – "Эльбруса". Можно сказать, что файлы в своем развитии прошли путь , аналогичный развитиюархитектур компьютеров – сначала в сторону значительных усложнений, затем – упрощения и унификации .

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

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

· строками , если это текстовый файл ;

· двоичными данными фиксированной длины ;

· двоичными данными переменной длины .

Файлы сложной структуры могут быть самого разного вида, например:

· отформатированным документом Microsoft Office (такой файл, кроме собственно текста, содержит управляющие символы переключения шрифтов, цветов и т.д.);

· загрузочным модулем реального или виртуального двоичного кода, например, portable executable (PE) -файлом для платформы.NET; class-файлом для платформы Java; подобные файлы состоят из нескольких секций, содержат внутренние ссылки и таблицы и т.д.

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

Файлы интерпретируются операционной системой или программами их обработки.

Атрибуты файла

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

Различаются следующие основные атрибуты файла :

Имя (Name) – название файла в символьной форме, воспринимаемое пользователем.

Тип (Type) – тип хранимой в файле информации. Отдельный атрибут тип необходим для систем, которые поддерживают различные типы файлов. Например, в системе "Эльбрус" значением атрибута тип файла является число, кодирующее тип: 0 – данные, 2 – код, 3 – текст и т.д. Однако более общепринятым подходом является подход, принятый в системах MS DOS , Windows , UNIX : тип файла кодируется расширением имени , например, book.txt – текстовый файл (.txt), содержащий текст книги.

Размещение (Location) указатель на размещение файла на устройстве.

Размер (Size) – текущий размер файла .

Защита (Protection) – управляющая информация , задающая полномочия чтения, изменения и исполнения файла.

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

В ОС UNIX дату модификации файла можно изменить командой touch f, где f – имя файла . Touch дословно означает потрогать . Кроме изменения времени модификации, больше никаких действий над файлом не производится.

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

Информация о файлах хранится в структуре директорий ( или справочников - directories) ,иногда, например, в системе Windows , называемых также папками (folders) – структурами во внешней памяти, содержащими символьные имена файлов и ссылки на них. Важнейшая концепция директории подробно рассматривается далее в данной лекции.

Операции над файлами

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

· Создание файла (Create ). Создается заголовок файла; первоначально его содержимое (память) пусто.

· Запись в файл (Write ). Как правило, происходит записями (records) или блоками – более крупными логическими единицами информации, объединяющими несколько записей, с целью оптимизацииопераций ввода-вывода .

· Чтение из файла (Read ). Обычно также выполняется записями или блоками.

· Поиск позиции внутри файла (позиционирование) (Seek ). Позиция задается номером записи или блока, либо специальными именами, обозначающими начало файла (позиция перед первой записью) или конец файла (позиция после последней записи).

· Удаление файла (Delete ). В зависимости от реализации системы файлов, ошибочное удаление файла может быть фатальным (UNIX) или исправимым (MS DOS).

· Сокращение файла (Truncate ).

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

· Закрытие файла (Close ) – запись содержимого буферов в блоки файла; обновление файла во внешней памяти в соответствии с его текущим состоянием; освобождение всех структур в основной памяти, связанных с файлом.

Для выполнения операций обмена с файлом (read, write ), как правило, файл необходимо открыть. Закрытие файла является обязанностью пользовательского процесса ; однако, если он по какой-либо причине этого не выполняет, то закрывает все файлы, открытые процессом, операционная система после завершения или прекращения процесса.

Типы файлов – имена и расширения

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

Таблица 19.1. Типы файлов – имена и расширения
тип файла расширение имени функциональность
исполняемый код (загрузочный модуль) exe, com, bin или отсутствует готовая к выполнению программа в бинарном машинном коде
обьектный модуль obj , о откомпилированная программа в бинарном коде, но не слинкованная
исходный код на языке программирования с, сс, Java, pas, asm , а исходный код на различных языках (Си, Паскаль и др.)
командный файл bat, sh файл с командами для командного интерпретатора
текст txt, doc текстовые данные, документы
документ для текстового процессора wp, tex, rtf , doc документ в формате какого-либо текстового процессора
библиотека lib, a, so, dll, mpeg, mov, rm библиотеки модулей для программирования
файл для печати или визуализации arc , zip, tar ASCII или бинарный файл в формате для печати или визуализации
архив arc , zip, tar несколько файлов, сгруппированных в один файл, для архивации или хранения
мультимедиа mpeg, mov, rm бинарный файл , содержащий аудио- или видео информацию

Смысл их ясен из приведенной таблицы. Следует заметить, что унифицированных расширений имен, принятых в различных ОС, очень мало – по -видимому, только .txt (текст) и расширения для исходных кодов на языках программирования, например, .c – Си , .p или. pas – Паскаль и др. Объектные модули называются по -разному (в Windows .obj , в UNIX - .o ), библиотеки – тоже: статически линкуемые в Windows - .lib , вUNIX - .a ; динамически линкуемые в Windows - .dll , в UNIX – .so .Интересно отметить, что для исполняемого кода в Windows есть стандартное расширение - .exe ,а в UNIX – нет, зато есть весьма экзотическое полное стандартное имя: a.out (assembler output) .Унифицированы расширения имен для различных текстовых процессоров: . doc - Microsoft Word , .pdf – Adobe Acrobat и др.

Методы доступа к файлам

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

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

По -видимому, последовательный доступ используется чаще: именно так происходит ввод данных, вывод результатов на печать или на экран.

Типичные :

reset – установка на начало файла для чтения

rewrite – установка на начало файла для записи.

Типичные операции прямого доступа:

position to n – позиционирование на запись с номером n

rewrite n, где n - относительный номер блока (записи).

Описанная трактовка последовательных файлов и операций над ними иллюстрируется рис. 19.1.

Рис. 19.1. Файл последовательного доступа.

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

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

Для ускорения доступа к файлу большого объема может использоваться индексный файл , содержащий ссылки на записи основного (относительного ) файла. рис. 19.2 изображен пример основного файла, содержащего упорядоченные по фамилиям анкетные данные людей. Индексный файл для данного основного файла содержит ссылки на первые логические записи анкет с заданной фамилией, например, Smith.


Рис. 19.2. Индексный файл и основной файл.

Директории

Директория (directory, folder) - узел, содержащий информацию о файлах – их имена и ссылки на файлы и на другие директории во внешней памяти. Таким образом, возможна организация иерархии директорий или их более сложных взаимосвязей, вплоть до произвольных графов. Как структура директорий, так и файлы хранятся на диске. С помощью директорий поддерживается именование файлов с помощью путей (paths) – многослоговых имен, состоящих из имени корневой директории (или логического диска) и последовательности имен директорий последующих уровней. Например, в системе Windows c:\doc\plan.txt путь доступа к файлу, задающий его расположение – на логическом диске C: ,в директории doc (документы), и имя файла plan.txt .Имя содержит расширение, указывающее на тип файла .

Резервное копирование (back-up) файлов и директорий выполняется на специальные предназначенные для этого носители – например, на ленту (стример ), flash-память , внешний переносной жесткий диск , компакт-диск (CD , DVD ). Настоятельно рекомендуется регулярно копировать на внешний носитель (или на несколько внешних носителей) наиболее важные директории.

Особенности системы файлов в "Эльбрусе"

Говоря о структуре директорий и именовании файлов, нельзя не упомянуть столь экзотическую систему файлов, как в МВК "Эльбрус". Это будет полезно читателям, чтобы сравнить и лучше оценить разнообразие подходов к системам файлов.

Основные концепции системы файлов МВК "Эльбрус" – это файлы , контейнеры , справочники . Понятие контейнера в "Эльбрусе" близко к современным понятиям тома и контейнера в системах Windows и Solaris: контейнер – это хранилище файлов на одном или нескольких дисках. Понятие справочника близко к понятию директории в традиционных файловых системах.

Файл в "Эльбрусе" состоит из заголовка и памяти. В заголовке хранятся атрибуты файла , число которых – порядка 100 (!).

Существенным отличием файловой системы "Эльбруса" является то, что возможно создание файла и управление им без присваивания ему имени , т.е. без отображения его в справочниках (директориях). Такой временный файл создается в программе, ссылка на файл хранится в глобальной или локальной переменной, и по окончании выполнения программы файл уничтожается, если на него не была сохранена ссылка в справочнике на диске. Кроме того, файлы могут ссылаться друг на друга (по прямой "физической" файловой ссылке, а не c помощью символьных путей) через справочники внешних ссылок (СВС) .СВС имеется у каждого файла. Его элементы адресуются по номерам, а не по именам. Типичный пример: файл объектного кода (ФОК) ссылается через свой СВС на файл дополнения к файлу объектного кода (ДФОК) ,содержащий в унифицированном виде таблицы именованных сущностей, определенных в программе и ее процедурах. Выражаясь современным языком, ДФОК содержит метаданные . Эта взаимосвязь используется при диагностике ошибок времени выполнения и для многих других целей.

К недостаткам файловой системы "Эльбруса" можно отнести усложненную структуру файлов, большое число атрибутов, зависимость логической структуры файла и набора операций над ним от типа внешнего устройства , на котором он расположен. По сравнению с системой файлов "Эльбруса", система файлов в UNIX гораздо проще и удобнее, но нисколько не уступает по функциональности.

Типичная организация файловой системы изображена на рис. 19.3.


Рис. 19.3. Организация файловой системы.

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

Следует иметь в виду, что в разных разделах могут быть установлены различные операционные системы, использующие разное форматирование и разные файловые системы для своей работы. Даже если на компьютере установлена только одна ОС, различные разделы могут использовать различные типы файловых систем, например, в Windows раздел A может использовать файловую систему FAT32 , а раздел B – файловую систему NTFS . В разделе C может быть инсталлирована ОС Linux, использующая свою собственную файловую систему Ext2Fs .


©2015-2019 сайт
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-04-11

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

Что такое файл?

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

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

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

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

Со времен MS DOS нам по наследству достались расширения, которые позволяют визуально определять форматы файлов. Размер расширения обычно составляет три буквы и располагается оно за точкой ограничивающей имя файла. Называется эта схема 8.3, в память о тех временах, когда на название файла выделялось всего восемь символов.

Современные файловые системы позволяют давать файлам имена, состоящие из 255 символов, но расширение в большинстве случаев по-прежнему состоит из трех. Это те самые *.doc, *.jpg, *.avi, которые всем знакомы и по которым можно определить, с каким файлом вы имеете дело.

Группировка файлов по типу

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

Большинство указанных типов файлов открываются штатными средствами операционных систем, и работа с ними не требует от пользователя каких-либо специальных знаний и умений. С документами ситуация обстоит несколько по-другому. Для работы с ними уже требуются специальные пакеты программ. Поэтому подробнее мы рассмотрим как раз форматы текстовых файлов и основы взаимодействия с ними.

Текстовые процессоры

Основное предназначение текстового файла понятно из его названия. Создаются они с помощью текстовых процессоров, входящих в состав пакетов офисных программ. Наиболее известным таким процессором является Word. Он получил широкое распространение благодаря основному детищу компании Microsoft - операционной системе Windows.

Word обладает широкими возможностями работы с текстами, позволяет создавать документы высокой сложности. Входит этот удобный и производительный текстовый процессор в состав Microsoft Office и распространяется для платформ Windows и MacOS. Притом распространяется далеко не бесплатно, Microsoft в этом плане никогда не отличалась альтруизмом.

Есть ли альтернативные программы с аналогичными возможностями? Да, есть. Самое известное решение называется OpenOffice. Это свободный программный продукт, в состав которого входит текстовый процессор Writer. Да, он выглядит не столь красиво, как Word, но практически не уступает ему по функциональным возможностям работы с текстом. Доступен он на любой десктопной платформе, выпускаются версии для Windows, Linux и MacOS.

Надо сказать, что OpenOffice - не единственный свободный пакет. На его базе созданы еще несколько аналогичных программ. Самой известной является программа LibreOffice, имеющая более свободную политику развития и созданная группой разработчиков, отделившихся от осинового проекта. Распространяется бесплатно и имеет версии для всех популярных операционных систем.

Популярные текстовые форматы

Давайте посмотрим, какие форматы файлов используют самые известные текстовые процессоры. Наиболее широко распространен в России, да и в мире формат *.doc. Он давно стал форматом, в котором по умолчанию готовятся все текстовые документы. Его дальнейшее развитие формат *.docx. Этот формат появился вместе с Microsoft Office 2007. В отличие от своего предшественника, полностью закрытого двоичного формата *.doc, *.docx основан на открытом формате разметки XML.

OpenOffice, как свободный программный продукт, использует открытый формат файла с расширением *.odt. OpenDocument Format получил международную стандартизацию в 2006 году и изначально основан на XML. Создавался он в противовес полностью закрытому формату от Microsoft. В ряде европейских стран он используется достаточно широко, и доля его в документообороте достигает 22%.

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

Другие текстовые форматы

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

Особенностью этих форматов является полная совместимость с разными операционными системами и возможность работать с ними без офисного пакета. Они могут открываться и редактироваться штатными средствами, программами, изначально входящими в состав ОС. К примеру, для Windows это будет Блокнот и WordPad, MacOS откроет их в программе Просмотр.

В заключение

За время развития компьютерных технологий создано большое количество различных программ, каждая из которых использует свой формат файла и, соответственно, имеет какое-то расширение. В этом материале мы рассмотрели только малую их часть, те, с которыми приходится сталкиваться в повседневной жизни. Для более подробного изучения этого вопроса можем порекомендовать русскоязычный ресурс Fileext.ru, на котором можно найти подробное описание любого файла по его расширению.

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

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

(adsbygoogle = window.adsbygoogle || ).push({});

Теперь вместо того чтобы запоминать, например, что программа-редактор текстов записана на дорожке 10, сектора 12 и 13 и для её запуска нам нужно обратиться к этим секторам, мы присваиваем файлу этой программы имя kwriter. Этому имени ставятся в соответствие данные сектора на диске, о чём делается запись в начале диска. Теперь при обращении к этому файлу по имени компьютер будет искать это имя в своём списке. Найдя его, он автоматически обратится к нужным секторам, чтобы считать с них данные. Для удобства желательно, чтобы имя файла отражало его содержимое. Например, файл стандартной программы-редактора текстов «Блокнот» из операционных систем семейства Windows носит имя notepad (блокнот). Таким образом, пользователю становится легко ориентироваться в записанных на диске данных.
Итак, пользователь указывает только имя файла, а конкретное место его расположения на диске определяет операционная система (об операционных системах см. в гл. 5). В некоторых старых операционных системах, например DOS, имя файла ограничивалось восемью символам и могло состоять только из латинских букв и некоторых специальных символов (например, подчёркивание или восклицательный знак).

В современных системах имя файла может быть очень длинным - например, до 255 символов в современных версиях Windows. При этом в имени файла могут использоваться самые разные символы, в том числе пробелы и даже русские буквы. Однако мы не рекомендуем злоупотреблять русскими буквами в названиях файлов. Дело в том, что, во-первых, такие «русские» файлы могут не читаться в некоторых системах (а мало ли, что может понадобиться!), а во-вторых, в неко­торых аварийных ситуациях извлечь или спасти такие файлы бывает значительно труднее, чем файлы, в именах которых использованы только латинские буквы. Иногда это и вовсе невозможно.

Ну вот, скажете вы, только начался рассказ о хранении данных в файлах, как автор уже пугает аварийными ситуациями... Автору, конечно, никого пугать не хочется. Однако непредвиденные аварийные ситуации могут возникнуть в любой области, в том числе и в компьютерной системе. Поэтому всегда лучше заранее принять меры предосторожности, тем более, что в данном случае это совсем нетрудно.
Считается, что в полное имя файла ещё входят путь к нему (path) и расширение (extension). Речь об этом и пойдёт далее

Какие бывают файлы

Когда пользователь начинает работу с каким-либо файлом, системе необходимо «знать», с помощью какой программы этот файл можно открыть и в каком формате он записан. Например, если файл содержит обычный текст, то он может быть прочитан в любой текстовой программе («Блокнот», WordPad, kwriter и т. п.). Если файл является звуковым фрагментом, то его можно открыть в программе-проигрывателе (Winamp, XMMS и пр.) или в каком-нибудь звуковом редакторе (Sound Forge, Adobe Audition, Samplitude и т. п.).

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

Расширение в имени файла. Чтобы программы и операционные системы могли «с первого взгляда» определять тип файла, к имени файла добавляют так называемое расширение. Оно обычно состоит из небольшого количества символов. В старых системах вроде DOS оно ограничивалось тремя символами. В современных системах, в том числе в Windows XP или Linux, такого ограничения нет, однако большинство файлов всё равно оканчивается трёхбуквенными расширениями. От собственного имени файла расширение отделяется точкой.

Во многих современных системах и в Интернете принят ряд стандартных расширений имён файлов. Некоторые из них приведены в табл. 3.1.

Стандартные расширения имён файлов

Сжатый музыкальный файл формата mp4 audio
.аас
Файл архива

Векторный рисунок формата популярной программы Adobe Illustrator
.ai
Звуковой файл (как правило, на Macintosh)

Aiff
Анимированный указатель мыши

Ani
Файл архива

Arj

Потоковый звуковой или видеофайл
.asx
Звуковой файл (формат Sun Audio)

Видеофайл стандартного для Windows формата
.avi

Старая (предыдущая) копия какого-либо файла
.bak

«Командный файл» - содержит ряд команд операционных систем DOS или Windows, которые будут выполняться последовательно
.bat

Двоичный файл
.bin
Растровый рисунок

Bmp
Файл архива

Bz
Файл архива

Код программы на языке С или С++
.c

Установки для какой-либо программы
.cfg

Программа (апплет), написанная на языке Java
.class

Исполняемый файл (программа, которую можно непосредст­венно запустить)
.com
Файл конфигурации какой-либо программы (обычно в Linux)

Conf
Музыкальный проект популярной программы Cubase

Файл стиля для веб-страниц
.ess

Указатель мыши
.cur

Видеоклип
.dat

Файл базы данных
.db

Динамическая библиотека связей (обычно компонент какой-либо программы)
.dll

Документ, как правило, формата Microsoft Word
.doc


.eps

Исполняемый файл (программа, которую можно непосредс­твенно запустить)
.ехе

Рисунок (сжатый файл)
.gif

Файл справки
.sр


.htm

Гипертекстовый файл, обычно для веб-страниц
.html

Значок
Лео

Сведения для установки какой-либо программы
.inf

Файл настроек программы (обычно в Windows или DOS)
.ini

Файл образа компакт-диска
.iso

Файл шрифта
.fon

Файл архива
.gz

Файл архива
.gzip

Исполняемая программа на языке Java
.jar

Рисунок (сжатый файл)
.jpeg

Рисунок (сжатый файл)
jpg

Скрипт на языке JavaScrpipt
.js

Музыкальный файл с текстом (для караоке)
.kar

Файл архива
.zip

«Протокол» действий, совершённых какой-либо программой (обычно при установке)
.log

Листинг
.1st


.m3u

MIDI-файл (музыкальный файл, который исполняется через синтезатор звуковой карты)
.mid


.mov

Сжатый музыкальный файл формата трЗ
.трЗ

Сжатый видеофайл формата mpeg
.mpg

Файл установки программы для Windows
.msi

Нотный файл формата популярной программы Finale
.mus

Системный файл ActiveX
.осх

Сжатый музыкальный файл формата Ogg Vorbis
.ogg

Старая копия какого-либо файла
.old

Документ формата Adobe Acrobat
.pdf

Скрипт на языке РНР
.php

Скрипт на языке РНР
.phtml

Скрипт на языке PERL
.pi

Стандартный список воспроизведения
.pis

Файл вёрстки в формате Adobe Pagemaker
.pmd

Рисунок сжатого формата
png

Графический файл полиграфического формата PostScript
.ps

Рисунок формата популярной растровой программы Adobe Photoshop
.psd

Зашифрованный пароль и другие сведения о пользователе
.pwl

Видео или звуковой файл формата Apple Quick Time
qt

Файл Real Audio
.ra

Файл архива
.rar

Сведения для внесения в системный реестр Windows
.reg

Файл установки программы для Linux
.rpm

Текстовый файл со шрифтовой разметкой
.rtf

Нотный файл формата популярной программы Sibelius
.sib

Файл установки программы для мобильного телефона
.sis

Файл фильма популярного формата Shokwave Flash
.swf

Документ в формате OpenOffice.org
.sxw

Системный файл
sys

Файл архива
.tar

Рисунок
.tif

Файл шрифта TrueType
.ttf

Текстовый файл
.txt

Драйвер виртуального устройства - один из системных ком­понентов Windows
.vxd

Стандартный звуковой файл в Windows
.wav

Сжатый музыкальный файл формата Windows Media
.wma

Рисунок (стандартный Windows-формат)
.wmf

Сжатый видеофайл формата Windows Media
.wmv

Текстовый документ в формате Write или WordPad
.wri

Документ, размеченный в соответствии со стандартом XML
.xml

Конечно, здесь перечислены далеко не все расширения и типы файлов, их слишком много Дело в том, что каждая вновь создаваемая программа может использовать уже имеющийся стандартный тип для своих рабочих файлов, а может иметь и свой собственный. Так, например, графический редактор Adobe Photoshop может работать со стандартными форматами рисунков (bmp, jpg, tif и пр.), но в то же время имеет свой собственный файловый формат (psd). Музыкальная программа Cubase может работать со стандартными MIDI-файлами (mid) или звуковыми файлами (wav), однако при работе чаще используется оригинальный формат (срг).

Более того, поскольку программ существует очень много, то легко может случиться так, что две или более программы будут «стараться» использовать одинаковое расширение для файлов своего формата. Например, расширение mus традиционно используется для нотных файлов формата Finale, однако это же расширение mus имеют и нотные файлы совершенно другого формата MusicTime.

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

Открытие файлов. В современных системах, таких как Windows XP или Linux с графической оболочкой это обычно осуществляется с помощью двойного щелчка мыши на имени или значке файла. Получив команду «Открыть файл», система прежде всего определяет тип файла по его расширению. Если файл окажется исполняемым (программа), то его содержимое загружается в память и передаётся процессору для исполнения. Если же файл имеет другой известный тип, то система сначала открывает ту программу, которая работает с этим типом файлов, и затем файл будет открыт уже из этой программы. Если тип файла системе неизвестен, то пользователю будет предложено выбрать рабочую программу самому. Эта ситуация в операционных системах Windows показана на рис. 3.1.

Каталоги

Итак, теперь вы знаете, что такое файл. Если бы файлов на диске было не больше одного-двух десятков, запомнить, что означают их имена, и разобраться в них не предоставляло бы труда. Однако их уже очень много на новом диске, и в дальнейшем их количество растет с ураганной скоростью. Например, на жёстких дисках моего компьютера расположено около тридцати тысяч различных файлов. Откуда они вообще берутся и как в них разобраться?
Рис. 3.1 Выбор программы для открытия файла (в Windows и Linux)

Во-первых, в состав современных программ (за редким исключением) входят от нескольких десятков до сотен вспомогательных файлов. К примеру, система Windows XP состоит из почти 10 000 файлов. Чтобы облегчить жизнь, решили все файлы, относящиеся к одной программе, объединять в группу. В результате на диске будет несколько таких групп.

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

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

Итак, файлы (все или часть) распределили по каталогам (папкам). Но процесс продолжается, и вот уже внутри одного каталога может располагаться другой каталог, в нём ещё один и так далее, как в русской матрёшке.

Теперь, чтобы указать точное местоположение файла, кроме имени файла и расширения, необходимо указать ещё и путь к файлу. Путь (path) состоит из имён всех каталогов, внутри которых файл расположен. В системах DOS и Windows это выглядит так: в начале пути к файлу ставится буквенное имя диска (логического раздела), после которого всегда ставится двоеточие, и далее следует перечисление имён каталогов, в которых расположен данный файл. При этом имена каталогов разделяются обратной косой чертой (\). Например, если вы записали звуковой файл и назвали его MySound.wav, а затем поместили его в каталог Sounds, который, в свою очередь, вложен в каталог MyFiles на жёстком диске D:, то полное имя файла (включающее путь) будет выглядеть так:

D:\MyFiles\Sounds\MySound.wav

В системе Linux и других с подобной организацией имён файлов, имена каталогов разделяются обычной косой чертой (/). Ею же обозначается корневой раздел. Например, если вы поместили звуковой файл MySound.wav в свой домашний каталог под названием Ivanov, который находится в каталоге home, то полный путь к файлу будет выглядеть так:

/home/Ivanov/MySound.wav

Файловые системы. Иногда возникает ситуация, когда файлы (а точнее - целые логические диски), которые прекрасно «видны» из-под одной операционной системы, бесследно исчезают в другой. Как правило, это бывает, когда операционные системы используют разные файловые системы. Файловая система - это формат, в котором записана информация о расположении файлов на диске. Существует универсальная файловая система на PC, которая называется FAT или FAT16. С ней могут работать DOS, Windows, OS/2, Linux, BeOS и т. п. Универсальной является и файловая система FAT32, но она к тому же разрешает использование больших жёстких дисков. При файловой системе FAT16 размер раздела не должен превышать 2 Гбайт. С FAT32 могут работать практически все операционные системы, кроме DOS.

Существует и другие же файловые системы, но они не столь универсальны. Например, систему HPFS могли понимать только OS/2 и Windows NT ранних версий. Файловую систему NTFS, которая используется в Windows NT/2000/XP, не «понимают» Windows 95/98/ME, а в Linux её лучше использовать только для чтения, но не для записи. Характерная для Linux файловая система ext3 обычно не читается из Windows.Если по разным причинам на компьютере работает несколько операционных систем, то автор рекомендует пользоваться наиболее универсальной файловой системой FAT32.

Программные пакеты

Современные программы, как правило, состоят не из одного исполняемого файла, а из множества, или компонентов пакета. Для работы программ бывает необходимо подготовить систему, т. е. произвести определённые настройки и дать знать системе о существовании программ. С этой целью программные пакеты поставляют в «запакованном» виде, и к ним прилагают небольшую программку, обычно именуемую Setup или Instal. Эта программка распаковывает файлы-компоненты программы, помещает их в нужные каталоги, записывает или изменяет системные установки и т. д. Этот процесс называется установкой программы, а запакованный программный пакет с программой установки называется дистрибутивом.

Например, дистрибутив нотно-графической программы Finale 2004 содержит файл Setup.exe. При запуске он создаёт специальный каталог для программы Finale 2004, помещает туда десять необходимых файлов, создаёт внутри него ещё десять каталогов (для библиотек установок, шаблонов, учебных файлов, подключаемых модулей и пр.) и наполняет их содержимым. Кроме того, устанавливает в системе «нотные» шрифты (Maestro, Petrucci и пр.) и несколько PostScript-шрифтов (специальных шрифтов для полиграфических работ).

Иногда вместо установочного файла или сценария, который совершает подобную работу, дистрибутив программы содержит несколько команд для стандартного инсталлятора системы. Эти указания могут быть запакованы вместе с необходимыми для работы программы данными в один файл со стандартным расширением msi (для Windows) или rpm (для Linux). Для установки такой программы достаточно открыть этот файл, а всё остальное система сделает сама.








Конечно, в ней перечислены не все возможные расширения и типы файлов. Каждая вновь создаваемая программа может использовать как уже имеющийся стандартный тип для своих рабочих файлов, так и иметь свой собственный. Например, графический редактор Adobe Photoshop работает со стандартными форматами рисунков (BMP, JPG, TIF и пр.), но в то же время имеет свой собственный файловый формат (PSD). В музыкальной программе Cubase можно работать со стандартными MIDI-файлами (MID) или звуковыми файлами (WAV), однако чаще используется оригинальный формат (CPR).

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

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


Рис. 6.1. Выбор программы для открытия файла.