Что такое файлы данных. Внешние файлы данных. Файл и структуры данных Falcon

Файлы, сохраненные в формате данных используются программой Analysis Studio, и это приложение хранит в этих файлах данных деталей, используемых для автономного анализа. Эти данные могут быть введены в соответствующий файл данных, созданное пользователем Analysis Studio. Как правило, классифицируются как файлы данных, эти файлы DATA прикреплены с расширением.data и более конкретно называется Analysis Studio файлы данных в автономном режиме. Appricon разработала формат данных и программное обеспечение Analysis Studio, чтобы предоставить пользователям автономного хранения данных и аналитических функциональных возможностей полезной instatistical данных исследований, хранения, управления и анализа. Содержание этих файлов данных может включать в себя данные, закодированные в текстовом формате или в разделителями табуляции форматов. заголовки файлов Analysis Studio также могут быть включены в эти данные файлов пользователем Analysis Studio. Пользователь отключен от сервера Analysis Studio, как правило, получает доступ к этим данным файлов в автономном режиме, хотя программное обеспечение Analysis Studio также предоставляет пользователю доступ к содержанию этих файлов данных даже в режиме реального времени. Содержание этих файлов данных также могут быть импортированы из других баз данных, таких как Microsoft SQL Server и баз данных Microsoft Access. Программное обеспечение Analysis Studio связывает файл с данными в соответствующий файл STP, и содержание этих файлов STP состоит из метаданных объекта и детали проекта схемы. Пользователь Microsoft Windows может удалить файл заголовка Analysis Studio файла данных, чтобы открыть и просмотреть его содержимое с помощью электронных таблиц приложения Microsoft Excel 2010.

Доброго времени суток уважаемый пользователь, в этой статье речь пойдет о такой теме, как файлы. А именно мы рассмотрим: Управление файлами , типы файлов , файловая структура , атрибуты файла .

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

Одной из основных задач ОС является предоставление удобств пользователю при работе с данными, хранящимися на дисках. Для этого ОС подменяет физическую структуру хранящихся данных некоторой удобной для пользователя логической моделью, которая реализуется в виде дерева каталогов, выводимого на экран такими утилитами, как Norton Commander, Far Manager или Windows Explorer. Базовым элементом этой модели является файл , который так же, как и файловая система в целом, может характеризоваться как логической, так и физической структурой.

Управление файлами

Файл – именованная область внешней памяти, предназначенная для считывания и записи данных.

Файлы хранятся в памяти, не зависящей от энергопитания. Исключением является электронный диск, когда в ОП создается структура, имитирующая файловую систему.

Файловая система (ФС) - это компонент ОС, обеспечивающий организацию создания, хранения и доступа к именованным наборам данных — файлам.

Файловая система включает:Файловая система включает:

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

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

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

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

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

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

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

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

Пример

Файловая система FAT (file allocation table) имеет множество реализаций как система управления файлами

  • Система, разработанная для первых ПК называлась просто FAT (сейчас ее называют просто FAT-12) . Ее разрабатывали для работы с дискетами, и некоторое время она использовалась для работы с жесткими дисками.
  • Потом ее усовершенствовали для работы с жесткими дисками большего объема, и эта новая реализация получила название FAT–16. это название используется и по отношению к СУФ самой MS-DOS.
  • Реализация СУФ для OS/2 называется super-FAT (основное отличие – возможность поддерживать для каждого файла расширенные атрибуты).
  • Есть версия СУФ и для Windows 9x/NT и т.д. (FAT-32).

Типы файлов

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

Обычные файлы могут быть двух типов:

  1. Программные (исполняемые) – представляют собой программы, написанные на командном языке ОС, и выполняют некоторые системные функции (имеют расширения.exe, .com, .bat).
  2. Файлы данных – все прочие типы файлов: текстовые и графические документы, электронные таблицы, базы данных и др.

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

Специальные файлы – это фиктивные файлы, ассоциированные с устройствами ввода/вывода, которые используются для унификации механизма доступа к файлам и внешним устройствам. Специальные файлы позволяют пользователю осуществлять операции ввода/вывода посредством обычных команд записи с файлов или чтения из файлов. Эти команды обрабатываются сначала программами ФС, а затем на некотором этапе выполнения запроса преобразуются ОС в команды управления соответствующим устройством (PRN, LPT1 – для порта принтера (символьные имена, для ОС – это файлы), CON – для клавиатуры).

Пример . Copy con text1 (работа с клавиатурой).

Файловая структура

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

Виды файловых структур:

  • простая , или одноуровневая : каталог представляет собой линейную последовательность файлов.
  • иерархическая или многоуровневая : каталог сам может входить в состав другого каталога и содержать внутри себя множество файлов и подкаталогов. Иерархическая структура может быть двух видов: «Дерево» и «Сеть». Каталоги образуют «Дерево», если файлу разрешено входить только в один каталог (ОС MS-DOS, Windows) и «Сеть» – если файл может входить сразу в несколько каталогов (UNIX).
  • Файловая структура может быть представлена в виде графа, описывающего иерархию каталогов и файлов:



Типы имен файлов

Файлы идентифицируются именами. Пользователи дают файлам символьные имена , при этом учитываются ограничения ОС как на используемые символы, так и на длину имени. В ранних файловых системах эти границы были весьма узкими. Так в популярной файловой системе FAT длина имен ограничивается известной схемой 8.3 (8 символов — собственно имя, 3 символа — расширение имени), а в ОС UNIX System V имя не может содержать более 14 символов.

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

Например, Windows NT в своей файловой системе NTFS устанавливает, что имя файла может содержать до 255 символов, не считая завершающего нулевого символа.

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

Символьные имена могут быть трех типов: простые, составные и относительные:

  1. Простое имя идентифицирует файл в пределах одного каталога, присваивается файлам с учетом номенклатуры символа и длины имени.
  2. Полное имя представляет собой цепочку простых символьных имен всех каталогов, через которые проходит путь от корня до данного файла, имени диска, имени файла. Таким образом, полное имя является составным , в котором простые имена отделены друг от друга принятым в ОС разделителем.
  3. Файл может быть идентифицирован также относительным именем . Относительное имя файла определяется через понятие «текущий каталог». В каждый момент времени один из каталогов является текущим, причем этот каталог выбирается самим пользователем по команде ОС. Файловая система фиксирует имя текущего каталога, чтобы затем использовать его как дополнение к относительным именам для образования полного имени файла.

В древовидной файловой структуре между файлом и его полным именем имеется взаимно однозначное соответствие – «один файл — одно полное имя». В сетевой файловой структуре файл может входить в несколько каталогов, а значит может иметь несколько полных имен; здесь справедливо соответствие – «один файл — много полных имен».

Для файла 2.doc определить все три типа имени, при условии, что текущим каталогом является каталог 2008_год.

  • Простое имя: 2.doc
  • Полное имя: C:\2008_год\Документы\2.doc
  • Относительное имя: Документы\2.doc

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

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

  • Признак «только для чтения» (Read-Only);
  • Признак «скрытый файл» (Hidden);
  • Признак «системный файл» (System);
  • Признак «архивный файл» (Archive);
  • Тип файла (обычный файл, каталог, специальный файл);
  • Владелец файла;
  • Создатель файла;
  • Пароль для доступа к файлу;
  • Информация о разрешенных операциях доступа к файлу;
  • Время создания, последнего доступа и последнего изменения;
  • Текущий размер файла;
  • Максимальный размер файла;
  • Признак «временный (удалить после завершения процесса)»;
  • Признак блокировки.

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

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

Права доступа к файлу

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

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

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

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

Вся информация, содержащаяся в переменных и массивах, исчезает по окончании работы программы. Если она может понадобиться в дальнейшем, то эту информацию сохраняют на жёстком диске, дискете или другом носителе, а при следующем запуске программы обратно загружают с внешнего носителя в массивы или переменные. Такая запись на диске или другом носителе называется файлом данных . Кроме файлов данных существуют также исполняемые файлы (программы в машинных кодах с расширением.exe или.com). Некоторые языки и системы программирования (в том числе из диалектов Паскаля – Borland Pascal и Delphi) позволяют из собственной программы запустить такой файл. Pascal ABC такой возможностью не располагает.

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

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

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


В файлах, описанных как типовые, все данные имеют один и тот же тип (указанный при описании), так же как и в массивах. Поэтому в таких файлах обычно сохраняют содержимое массивов. Хранить в типовом файле текст неудобно, так как все строки должны быть одинаковой длины. Для хранения текста со строками различной длины используется текстовый файл. Для отделения одной строки от другой, в таком файле каждая строка заканчивается символом, соответствующим клавише ENTER. Кроме строк в текстовом файле можно хранить и числа (но это менее экономно, чем в типовом файле, где они хранятся в двоичном коде, а не посимвольно).

Чтобы занести в файловую переменную имя файла , используется команда

assign(ф/п, ’полное имя файла’);

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

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

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

append(ф/п); - открывает уже существующий файл и устанавливает указатель на его конец (для добавления информации после конца файла).

rewrite(ф/п); - создаёт новый файл (если файл уже существует, он очищается).

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

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

read(ф/п, список переменных); - читает из типового и текстового файла.

readln(ф/п, список переменных); - читает из текстового файла.

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

write(ф/п, список переменных); - записывает в типовый и текстовый файл.

writeln(ф/п, список переменных); - записывает в текстовый файл с переводом строки.

Для перемещения по файлу (только типовому!) используется команда seek(ф/п, номер записи); . Нумерация записей в файле ведётся с нуля. Чтобы попасть в конец файла для добавления новой записи, в качестве номера в этой команде используется функция filesize(ф/п), определяющая размер файла (не в байтах, а в записях данного типа).

При чтении из файла неизвестной длины, можно перед чтением проверять, не кончился ли ещё файл, с помощью функции eof(ф/п), которая даёт true, если указатель находится после последней записи. Например:


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

Команда rename(ф/п,’новое_имя’)переименовывает файл, связанный с файловой переменной. Файл должен быть закрыт.

Команда erase(ф/п)удаляет файл, связанный с файловой переменной. Файл должен быть закрыт.

Не всегда файловые операции проходят успешно. Например, при попытке прочесть с дискеты, которую забыли вставить в дисковод, появляется сообщение об ошибке, и происходит аварийное завершение программы. Подобные ошибки лучше предупредить. Функция FileExists(’имя’) возвращает True, если на диске имеется файл с данным именем (и путём), в противном случае возвращает False. Её нужно использовать перед попыткой обращения к уже существующему файлу. Если нужно создать новый файл, перед этим используется функция CanCreateFile(’имя’). Если имя файла или путь указаны неправильно, или на диске нет места, или по другим причинам невозможно создать файл с таким именем, она возвращает False.

вполне закономерен.

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

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

Рассмотрим пример. Файл "document.doc". Здесь "document" это имя файла, а "doc" это расширение, которое указывает Windows, что данный файл необходимо открывать и редактировать с помощью текстовых процессоров, таких как Microsoft Word или OpenOffice Writer. В случае если расширение не известно Windows (не установлено необходимых программ), то система предложит выбрать программу вручную. Стоит знать, что в Windows есть предопределенные наборы известных расширений, таких как txt (текстовый файл), exe (исполняемая программа) и прочие.

Классификация файлов по функциональному применению

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

1. Файлы пользователя - рисунки, веб-страницы, документы, таблицы и прочие файлы, которые пользователи используют для собственных задач. Имена таких файлов ограничены лишь стандартом имен Windows. Расширения таких файлов обычно не задаются пользователями, а автоматически проставляются используемыми программами, во время создания файлов. Например, программа Microsoft Word выставляет расширение "doc" или "docx" (в зависимости от версии), а OpenOffice Writer устанавливает "odt".

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

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

Стандарт имен файлов в операционной системе Windows.

Рассмотрим стандарт имен файлов в операционной системе Windows. Имеется два набора символов:

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

2. Допустимый набор символов . Сюда входит пробел, подчеркивание, апостроф, точка с запятой, точка, запятая, а так же специальные символы " ! @ # $ % & " (и часть специальных символов основной кодировки). Стоит знать, что этот набор символов интерпретируется Windows специфически. Поэтому по возможности не стоит их применять. Тем не менее, с символами пробела, точки, запятой и подчеркивания редко возникают проблемы. А вот при использовании остальных символов могут возникать ошибки. Особенно, с некоторыми спецсимволами. Так же стоит знать, что если вам нужны файлы, которые будут нормально открываться и в других операционных системах, то стоит ограничиваться только цифрами и латинским алфавитом, а точку использовать только для разделения имени и расширения.

Запрещенный набор символов - в именах файлов нельзя использовать: \ /: * ? < > |

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

Как формируется полный путь до файла . У компьютера есть диски, они представлены латинской буквой. Это первая составляющая пути. После нее ставится разделитель в виде двоеточия и косой черты ":\". В случае если файл лежит в корне диска, то далее идет полное имя файла (далее по тексту просто имя файла). Если же файл лежит в каталоге, вначале указывается имя каталога, затем ставится символ "\" и указывается имя файла. Если же файл находится в подкаталоге каталога, то после каталога так же должно идти имя подкаталога и "\". Далее по аналогии. В данном случае символ "\" является разделителем, который позволяет идентифицировать каждую часть полного пути до файла.

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

Таблица 6.2

Кроме имени файла существует такое понятие, как «формат файла», который определяет способ хранения информации (структуру данных) в файле и отображения файла на экране или при печати. Формат файла определяет правила написания имен файлов и зависит от файловой системы, поддерживаемой операционной системой (ОС), установленной на компьютере. Например, в ОС MS DOS имя файла должно содержать не более восьми букв латинского алфавита, а расширение состоит из трех латинских букв – primer.txt, prim.txt, priml.txt и т. д. В ОС семейства Windows имя файла может иметь до 255 символов, при этом можно использовать и русский алфавит – album, jpg, пример. сюс и т. д. Эти правила в ОС MS DOS и ОС семейства Windows запрещают при назначении имен файлов использовать следующие знаки и символы: / \: *? < >|.

На любом из вышеперечисленных внешних ЗУ может храниться большое количество файлов. Порядок ихранения определяется файловой системой, которая может иметь определенную файловую структуру. Каждому имени файла соответствует свой уникальный адрес, что позволяет МП при необходимости находить на внешнем ЗУ нужный файл, а затем считывать из него данные в ОЗУ. Файлы в операционных системах по функциональному или тематическому признаку могут объединяться в каталоги или папки, которые в свою очередь могут входить в другие каталоги или папки, т. е. иметь сложную файловую структуру.