Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

информатика / 1 семестр / 1 занятие / Хранение данных на внешних

.doc
Скачиваний:
10
Добавлен:
17.04.2015
Размер:
48.64 Кб
Скачать

Файлы и папки. Файловая система хранения информации. Работа с файловой структурой ОС Windows. Стандартные программы прикладного назначения. Технология работы в программе Проводник.

При хранении данных решаются две задачи:

  • как сохранить данные;

  • как обеспечить быстрый и удобный доступ к ним.

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

В свою очередь каждая папка на внешнем носителе, кроме корневой, имеет свою родительскую папку. Корневая папка на внешнем носителе не имеет родительской, она самая главная. У корневой папки нет имени, она обозначается символом «обратный слеш»(\) после имени диска. Создается корневая папка автоматически при форматировании диска и не может быть удалена пользователем. Папки, зарегистрированные в корневой папке внешнего носителя информации, называют папками первого уровня по отношению к корневой. Для папок первого уровня корневая папка является родительской. В свою очередь папки, зарегистрированные в папках первого уровня, называют папками второго уровня и т.д. Таким образом, на диске создается иерархическая структура папок.

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

Имя файла имеет особое значение – оно фактически несет в себе адресные функции в иерархических структурах. Например, файл E:\Galina\Лабораторная работа 1.doc находится в папке Galina, а папка Galina находится в корневой папке диска E:. Запись вида [дисковод:] [путь\] имя-файла называют полным именем файла (квадратные скобки в записи означают, что данный параметр может быть опущен). Если опущен параметр дисковод:, то по умолчанию файл находится на текущем диске, если опущен параметр путь\ , то по умолчанию файл находится в текущей папке. Кроме того, имя может иметь расширение, в котором хранятся сведения о типе данных. Это важно, поскольку при автоматической обработке по типу файла может запускаться приложение (программа), работающее с ним. В настоящее время самые рядовые компьютеры на жестком диске хранят десятки, а может быть, сотни тысяч файлов, и для доступа к ним используется определенного вида программное обеспечение, решающее задачу централизованного управления данными.

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

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

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

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

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

Файловая система – это часть операционной системы и поэтому всегда несет на себе отпечаток свойств конкретной операционной системы.

Некоторые форматы файлов стандартизированы и должны поддерживаться любой операционной системой и работающими в ней приложениями (например, графические файлы, определенные спецификациями GIF или JPEG). Наряду с этим всегда имеются форматы, специфичные только для данной системы (например, исполняемые файлы MS DOS или Windows). Кроме того, есть еще форматы, разработанные для конкретных приложений, работающих под управлением данной операционной системы (например, формат .xls, используемый MS Excel).И, наконец, в некоторых случаях при разработке приложений новые форматы приходится создавать самим программистам.

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

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

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

Продемонстрируем это на простом примере. Предположим, что нам нужно сохранить таблицу из шести чисел, имеющую две строки и три столбца (2*3):

4

1

8

2

5

11

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

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

3

2

4

1

8

2

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

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

ЗАГОЛОВОК

(служебная информация)

Собственно сохраняемые данные

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

Современные программные системы позволяют одновременно включать в файл данные разных видов, а это требует разработки очень сложных форматов. Например, работая с программой MS Word, мы можем включить в один документ текст, картинки, таблицы, созданные в Excel, и многое другое. Комбинации этих элементов в своем числе практически бесконечны, и придумать простой формат, который позволил бы хранить все это вместе, невозможно. Например, для хранения документов MS Office строятся так называемые структурированные хранилища – фактически целые файловые системы, спрятанные в едином с точки зрения пользователя файле.

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

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