Лаб_ВМСиС. Вычислительные машины, системы и сети
Скачать 2.31 Mb.
|
2. Внешние запоминающие устройстваУстройства внешней памяти, или, иначе, внешние запоминающие устройства (ВЗУ), весьма разнообразны. Их можно классифицировать по целому ряду признаков: по виду носителя, по типу конструкции, по принципу записи и считывания информации, по методу доступа и т. д. При этом под носителем понимается материальный объект, способный хранить информацию. Один из возможных вариантов классификации ВЗУ приведен на рис. 1. В зависимости от типа носителя все ВЗУ можно подразделить на накопители на магнитной ленте и дисковые накопители. Накопители на магнитной ленте, в свою очередь, бывают двух видов: накопители на бобинной ленте и накопители на кассетной ленте (стримеры). В ПК используются только стримеры. Накопители на дисках более разнообразны (табл. 1):
Рис. 1. Классификация ВЗУ Таблица 1. Сравнительные характеристики дисковых накопителей
Время доступа – средний временной интервал, в течение которого накопитель находит требуемые данные. Трансфер – скорость передачи данных при последовательном чтении. Магнитные дискиМагнитные диски (МД) относятся к магнитным машинным носителям информации. В качестве запоминающей среды у них используются магнитные материалы со специальным свойством, позволяющим фиксировать два направления намагниченности, которым ставятся в соответствие двоичные цифры: 0 и 1. На рис. 2 показана логическая структура МД. Накопители на МД (НМД) являются наиболее распространенными внешними запоминающими устройствами в ПК. Они бывают жесткими и гибкими, сменными и встроенными в ПК. Все диски, и магнитные, и оптические, характеризуются своим диаметром, или, иначе, форм-фактором. Наибольшее распространение получили диски с форм-факторами 3,5 дюйма (89 мм). Но существуют диски и с форм-факторами 5,25 дюйма (133 мм), 2,5 дюйма (64 мм), 1,8 дюйма (45 мм) и другие. Дорожка Сектор Кластер Рис. 2. Логическая структура магнитного диска Информация на магнитные диски (МД) записывается и считывается магнитными головками вдоль концентрических окружностей – дорожек (треков). Количество дорожек на МД и их информационная емкость зависят от типа МД, конструкции накопителя на МД, качества магнитных головок и магнитного покрытия. Совокупность дорожек МД, находящихся на разных пластинах-дисках и на одинаковом расстоянии от его центра, называется цилиндром. При записи и чтении информации МД вращается вокруг своей оси, а механизм управления магнитной головкой подводит ее к дорожке, выбранной для записи или чтения информации. Устройство для чтения и записи информации на магнитном диске называется дисководом. Кроме основной своей характеристики – информационной емкости – дисковые накопители характеризуются и двумя другими показателями:
Время доступа (access time) к информации на диске, то есть время, которое дисковод тратит до начала чтения-записи данных, складывается из нескольких составляющих:
Диски относятся к машинным носителям информации с прямым доступом. Понятие прямой доступ применительно к диску означает, что ПК может «обратиться» к дорожке, на которой начинается участок с искомой информацией или куда нужно записать новую информацию, непосредственно, где бы ни находилась головка чтения-записи накопителя. После доступа к информации происходит ее последовательное считывание — хорошие дисководы обеспечивают скорость считывания (transfer rate) 2 Мбайт/с и выше. Рассматривая организацию данных на внешних носителях, следует различать физическую и логическую организацию. Физическая организация определяет правила размещения данных на внешних носителях, логическая – описывает взаимные связи между данными и способы доступа к ним. Поскольку при работе на компьютере пользователь практически взаимодействует только с файлами, необходимо подробнее познакомиться с организацией файловой системы. Файлы, их виды и организацияФайлом называется именованная совокупность данных на внешнем носителе информации. В ПК понятие файла применяется в основном к данным, хранящимся на дисках (реже на кассетной магнитной ленте), и поэтому файлы обычно отождествляют с участком (областью, полем) памяти на этих носителях информации. Поэтому возможно такое определение: файл – именованная область внешней памяти, выделенная для хранения массива данных. Данные, содержащиеся в файлах, имеют самый разнообразный характер – программы на алгоритмическом или машинном языке; исходные данные для работы программ или результаты выполнения программ; произвольные тексты; графические изображения и т. п. Понятие файла в операционной системе обобщается на внешние устройства и блоки компьютера (логические устройства), работающие с массивами данных: принтер, клавиатуру, дисплей, оперативную память (виртуальные диски) и т. д. Файловой системой называется совокупность программ, обеспечивающая выполнение операций над файлами. В настоящее время в ОС для ПК используются десятки файловых систем: в DOS - FAT16, FAT32 и FAT12 для гибких дисков (FAT – File Allocation Table, таблица размещения файлов), для Windows 9x характерны FAT16 и FAT32, в Windows NT и Windows 2000 – NTFS, для OS/2 - HPFS, для ОС - Ext2FS и т.д. Наибольшее распространение получили файловые системы DOS: FAT16 и FAT32. Некоторые их особенности и различия будут рассмотрены ниже. В общем случае при программировании работы с файлами необходимо производить:
При доступе к структурированным данным, кроме этого, необходимо выполнять процедуру установки указателя текущей записи. В зависимости от версии системы набор таких операций может меняться, но при этом всегда обеспечивается возможность создания и удаления файлов, а также чтение их содержимого и запись информации в них. Файловая система включает в себя также:
С каждым файлом связываются:
Полное имя файла в общем случае состоит из двух частей:
Логическая организация файловой системыУпорядочение файлов, хранящихся в дисковой памяти, называется логической организацией файловой системы. Основой логической организации являются каталоги. Каталогом называется специальный файл, в котором регистрируются другие файлы. Наряду с термином «каталог» в сообщениях ОС и ее документации для идентификации этого файла используются также термины «раздел», «директория». "папка". В каталоге содержится вся информация, характеризующая входящие в него файлы, и сведения о том, в каком месте диска файл расположен. В частности, в каталоге поддерживаются следующие параметры файла: имя, расширение, атрибуты, размер в байтах, дата и время создания или последнего обновления, номер начального кластера размещения файла. Сам же файл хранится как последовательность байтов без каких-либо дополнительных справочных сведений. Каталог, в свою очередь, может входить в другой каталог – быть его подкаталогом. Каталог верхнего уровня, который не является подкаталогом, называется корневым каталогом (Root Directory). Место для корневого каталога резервируется при форматировании (разметке). Корневой каталог не может быть удален средствами операционной системы. Каждый элемент (файл или подкаталог) корневого каталога имеет размер 32 байта и включает 8 полей (параметров), для файлов это:
Каталог – это файл специального формата, содержащий записи о файлах и каталогах, которые ему подчинены. Каталог, который входит в другой каталог, называется подкаталогом, или дочерним каталогом. В свою очередь каталог, имеющий дочерние каталоги, называется родительским каталогом, или надкаталогом. Как правило, если это не вызывает путаницы, употребляют термин «каталог», подразумевая или подкаталог, или надкаталог в зависимости от контекста. Термины «подкаталог» (дочерний каталог) и «надкаталог» (родительский каталог) обычно применяют, когда речь идет о собственно структуре каталогов. Подкаталоги могут создаваться и уничтожаться пользователем. Правила наименования подкаталогов такие же, как и правила наименования файлов, но имена подкаталогов не имеют расширений. Каталог, не содержащий никаких файлов, называется пустым. Каждый диск хранит свою файловую структуру, которая формируется по следующим правилам:
Файловая система обеспечивает формирование иерархической многоуровневой файловой структуры, в корне которой находится корневой каталог, а узлами и листьями являются каталоги и файлы. Рассмотрим пример дерева каталогов (рис. __). Здесь в состав корневого каталога включены подкаталоги ASM, VIR и DB, содержащие файлы компиляторов, программ антивирусной защиты и данных. В свою очередь, подкаталог ASM содержит компилятор языка ассемблер masm.exe и подкаталог ASMPROG, в котором находятся файлы с программами на этом языке. Подкаталог VIR содержит файлы aidstest.exe и dir.exe. В подкаталоге DB Расположены файлы базы данных. Уединение файлов в каталоги не означает, что они каким-либо образом сгруппированы в одном месте на диске. Более того, один и тот же файл может быть «разбросан» (фрагментирован) по всему диску. Сведения о местонахождении отдельных частей файла хранятся в таблице размещения файлов (FAT File Allocation Table), находящейся на том же диске. Рис. __Пример дерева каталогов Спецификация файлаДля того чтобы операционная система могла обратиться к файлу, необходимо указать:
Эта информация наличествует в спецификации файла, которая имеет следующий формат: [drive:] [\][path\]filename[.type], или в русскоязычном варианте: [дисковод:] [\][путь\]имя файла[.расширение]. Квадратные скобки означают, что элементы, заключенные в них, могут отсутствовать. Сами квадратные скобки являются синтаксическими знаками и в спецификации файла не используются. Между элементами спецификации и внутри них (исключая имя и расширение файла) не должно быть пробелов. Элемент drive (дисковод) обозначает диск, на котором находится файл или куда он записывается, например А:, В:, С:, D: и т. д. Если дисковод не указан, то по умолчанию используется текущий диск. Текущий диск – это диск, с которым в настоящий момент работает операционная система. Текущий диск устанавливается автоматически после загрузки ОС и может быть переустановлен командой операционной системы. Имя текущего диска всегда выводится в подсказке на экране. Path (путь) – это каталог или последовательность каталогов, которые необходимо пройти по дереву каталогов к тому каталогу, где находится файл. Имена в пути записываются в порядке от корневого каталога и разделяются символом "\". Путь может начинаться символом «\»: в этом случае поиск файла начинается с корневого каталога. Путь может начинаться символами «..»: тогда поиск файла начинается с предшествующего надкаталога. Если путь опущен, то по умолчанию подразумевается текущий каталог. Например, D:\VIR\aidstest.exe – файл aidstest.exe находится в подкаталоге VIR на диске D:. Путь состоит из корневого каталога и подкаталога VIR. (Если текущий дисковод D, то можно указать \VIR\aidstest.exe.) D:\ASM\ASMPROG\sqr.asm – файл sqr.asm находится в каталоге ASMPROG. Путь включает в себя корневой каталог и подкаталоги ASM и ASMPROG. Masm.exe файл masm.exe отыскивается на текущем диске в текущем каталоге. Текущим каталогом должен быть каталог ASM. (Если текущий каталог ASMPROG, то годится спецификация masm.exe.) Размещение информации на дискахДорожки диска разбиты на секторы (рис. 1). В одном секторе дорожки обычно размещается 512 байт данных. Обмен данными между НМД и ОП осуществляется последовательно кластерами. Кластер – это минимальная единица размещения информации на диске, состоящая из двух или большего числа смежных секторов дорожки (кластеры называют также единицами выделения памяти – allocation unit). Поэтому, если необходимо разместить на диске маленький файл, например размером 20 байт, он все равно займет дисковое пространство размером в кластер (минимум 2 х 512 = 1024 байт). Количество секторов в кластере всегда равно целой степени 2. Таблица FAT16 в 16-ти битах должна быть способна отображать значение максимального номера кластера, то есть количество кластеров на диске (или в разделе диска) не больше, чем 216 = 65 536. По причине выхода за пределы 16-битовой адресации внутри кластера его максимальный размер должен быть меньше 64 Кбайт, то есть 32 Кбайт. В FAT16 размер кластера (а косвенно и количество кластеров) можно определить, разделив объем памяти диска на 64 Кбайт (65 536) и округлив результат до ближайшего большего числа, кратного степени двойки. Так, для диска емкостью 1,2 Гбайт размер кластера составит: 1 258 291,2/65,5 = 19,2 Кбайт, после округления получим 32 Кбайт; для дисков объемом 2 Гбайт размер кластера будет равен 64 Кбайт, а для 2,5-гигабайтовых дисков – более 64 Кбайт, что недопустимо. Иными словами, FAT16 практически может работать только с дисками емкостью не более 2 Гбайт. Поэтому была разработана более мощная 32-разрядная файловая система FAT32. В ней количество секторов и количество кластеров могут быть одинаковыми и ограничено значением 232. Хотя размер кластера с целью экономии дискового пространства можно было бы приравнять размеру сектора, это не сделано по причине большого объема самой FAT – таблицы размещения файлов (напомню, что по имени этой таблицы называют и всю файловую систему целиком), которая для диска, например, емкостью 10 Гбайт будет иметь размер 80 Мбайт (а таких файлов на диске должно быть несколько, включая страховые копии). Одна из таблиц при наличии кэш-памяти для диска загружается в ОП. Поэтому размеры кластеров в FAT32 приняты в соответствии с табл. Емкость диска, Гбайт Размер кластера, Кбайт До 8 4 До 16 8 До 32 16 Более 32 32 Примечание. На диске емкостью 20 Гбайт 10-байтовый файл будет занимать 16 Кбайт памяти (поскольку под него отводится целое число кластеров). Высвободить пространство в кластерах для использования другими файлами позволяют программы сжатия диска, в частности DriveSpace. Но надежность работы файловой системы при этом снижается. В файловой системе FAT32 как элементы FAT, так и номера секторов – 32-разрядные. Вот что это значит: умножим 4 294 967 296 различных 32-разрядных значений на 512 байт в секторе и получим огромное число 2 Тбайт (2 199 023 255 552 байт), которое представляет собой максимально возможную емкость диска при использовании FAT32. Адресация информации на дискеНа каждом диске можно выделить 2 области: системную и данных. Системная область диска (начинается с 0 дорожки, стороны 0, сектора 1) состоит из 3 участков.
Для каждого файла в корневом каталоге (3-я зона системной области) указывается номер его начального кластера, а в этом начальном и следующих кластерах в FAT указываются, соответственно, следующие кластеры файла, и так до последнего, где указан код FFFF. Таблица размещения файлов крайне важна, так как без нее последовательно читать файл на диске (особенно если кластеры файла записаны не подряд, а через промежутки, занятые другими файлами) становится невозможно. Поэтому для надежности FAT на диске дублируется. Когда файл на диске удаляется, все его кластеры маркируются как свободные, но сами данные файла не удаляются (затираются только после записи на их место других данных) – то есть удаленные файлы можно восстановить. При организации логических дисков системная область создается на каждом из них. |