Чтение онлайн

ЖАНРЫ

Интернет-журнал "Домашняя лаборатория", 2008 №5
Шрифт:

Длинные имена

В Windows95 было введено понятие "длинного" имени. Такое имя может содержать до 256 символов. Длинное имя может включать любые символы, за исключением девяти специальных: \ /:*?"<> |.В имени допускаются пробелы и несколько точек.

Наряду с длинным именем операционные системы Windows 95 и Windows 98 создают также и короткое имя файла — необходимое для возможности работы с данным файлом на рабочих местах с устаревшими операционными системами.

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

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

операций с файлами. Существует четыре основных атрибута:

• Только для чтения (Read Only)

• Скрытый (Hidden)

• Системный (System)

• Архивный (Archive)

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

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

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

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

Вернемся к размещению файлов на жестком диске. К сожалению, часто происходит путаница между такими понятиями как сектор", "кластер" и "блок". Фактически, между "блоком" и "сектором" разницы нет. Правда, одно понятие логическое, а второе топологическое. "Кластер" — это несколько секторов, рассматриваемых операционной системой как одно целое. Почему не отказались от простой работы с секторами? Переход к кластерам произошел потому, что размер таблицы размещения файлов (FAT) был ограничен, а размер диска увеличивался. В случае FAT16 для диска объемом 512 Мб кластер будет составлять 8 Кб, до 1 Гб — 16 Кб, до 2 Гб — 32 Кб и так далее.

Для того чтобы однозначно адресовать блок данных, необходимо указать все три числа (номер цилиндра, номер сектора на дорожке, номер головки). Такой способ адресации диска быта широко распространен и получил впоследствии обозначение аббревиатурой CHS (cylinder, head, sector). Именно этот способ был первоначально реализован в BIOS, поэтому впоследствии возникли ограничения, связанные с ним. Дело в том, что BIOS определил разрядную сетку адресов на 63 сектора, 1024 цилиндра и 255 головок. Однако развитие жестких дисков в то время ограничилось использованием лишь 16 головок в связи со сложностью изготовления. Отсюда появилось первое ограничение на максимально допустимую для адресации емкость жесткого диска: 1024*16*63*512 = 504 Mb. BIOS — Базовая система ввода/вывода (от англ.> Basic Input/Output System). BIOS — это программы, предназначенные для выполнения следующи функций:

— тестирования основных устройств компьютера;

— распознавания типов устройств, установленных в компьютере;

— вызова блока начальной загрузки операционной системы;

— обслуживания системных прерываний.

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

Со временем, производители стали делать HDD все большего размера. Соответственно число цилиндров на них превысило 1024, максимально допустимое число цилиндров (с точки зрения старых BIOS). Однако, адресуемая часть диска продолжала равняться 504 Мбайтам, при условии, что обращение к диску велось средствами BIOS. Это ограничение со временем было снято введением так называемого механизма трансляции адресов, о котором чуть ниже. Проблемы, возникшие с ограниченностью BIOS по части физической геометрии дисков, привели в конце концов к появлению нового способа адресации блоков на диске. Этот способ довольно прост. Блоки на диске описываются одним параметром — линейным адресом блока. Адресация диска линейно получила аббревиатуру LBA (logical block addressing). Линейный адрес блока однозначно связан с его CHS адресом:

lba = (cyl*HEADS + head)*SECTORS + (sector — 1);

Введение

поддержки линейной адресации в контроллеры жестких дисков дало возможность BIOS'ам заняться трансляцией адресов. Суть этого метода состоит в том, что если в приведенной выше формуле увеличить параметр HEADS (ГОЛОВКИ), то потребуется меньше цилиндров, чтобы адресовать то же самое количество блоков диска. Но зато потребуется больше головок. Однако головок-то как раз использовалось всего 16 из 255. Поэтому ВЮЭ'ы стали переводить избыточные цилиндры в головки, уменьшая число одних и увеличивая число других. Это позволило им использовать разрядную сетку головок целиком. Это отодвинуло границу адресуемого BIOS'ом дискового пространства до 8Gb.

Следует упомянуть и о режиме работы с дисками большого объема (Large Mode). Этот режим работы предназначен для работы жестких дисков объемом до 1 Гб. В Large Mode количество логических головок увеличивается до 32, а количество логических цилиндров уменьшается вдвое. При этом обращения к логическим головкам 0..F транслируются в четные физические цилиндры, а обращения к головкам 10..1F — в нечетные. Винчестер, размеченный в режиме LBA, несовместим с режимом Large, и наоборот.

Дальнейшее увеличение адресуемых объемов диска с использованием прежних сервисов BIOS стало принципиально невозможным. Действительно, все параметры задействованы по максимальной "планке" (63 сектора, 1024 цилиндра и 255 головок). Тогда был разработан новый расширенный интерфейс BIOS, учитывающий возможность очень больших адресов блоков. Однако этот интерфейс уже не совместим с прежним, вследствие чего старые операционные системы, такие как DOS, которые пользуются старыми интерфейсами BIOS, не смогли и не смогут переступить границы в 8 GB. Практически все современные системы уже не пользуются BIOS'ом, а используют собственные драйвера для работы с дисками. Поэтому данное ограничение на них не распространяется. Но следует понимать, что прежде чем система сможет использовать собственный драйвер, она должна как минимум его загрузить. Поэтому на этапе начальной загрузки любая система вынуждена пользоваться BIOS'ом. Это и вызывает ограничения на размещение многих систем за пределами 8GB, они не могут оттуда загружаться, но могут читать и писать информацию (например, DOS который работает с диском через BIOS).

Разделы, или Partitions

Обратимся теперь к размещению операционных систем на жестких дисках. Для организации систем дисковое адресное пространство блоков разделяется на час ти, называемые разделами (partitions). Разделы полностью подобны целому диску в том, что они состоят из смежных блоков. Благодаря такой организации для описания раздела достаточно указания начала раздела и его длины в блоках. Жесткий диск может содержать четыре первичных раздела. Во время загрузки компьютера, BIOS загружает первый сектор головного раздела (загрузочный сектор) по адресу 0000h:7C00h и передает ему управление. В начале этого сектора расположен загрузчик (загрузочный код), который прочитывает таблицу разделов и определяет загружаемый раздел (активный). А дальше все повторяется. То есть он загружает загрузочный сектор этого раздела на этот же адрес и снова передает ему управление. Разделы являются контейнерами всего своего содержимого. Этим содержимым является, как правило, файловая система. Под файловой системой с точки зрения диска понимается система разметки блоков для хранения файлов. После того, как на разделе создана файловая система и в ней размещены файлы операционной системы, раздел может стать загружаемым. Загружаемый раздел имеет в своем первом блоке небольшую программу, которая производит загрузку операционной системы. Однако для загрузки определенной системы нужно явно запустить ее загрузочную программу из первого блока. Разделы с файловыми системами не должны пересекаться. Это связано с тем, что две разные файловые системы имеют каждая свое представление о размещении файлов, но когда это размещение приходится на одно и то же физическое место на диске, между файловыми системами возникает конфликт. Этот конфликт возникает не сразу, а лишь по мере того, как файлы начинают размещаться в том месте диска, где разделы пересекаются. Поэтому следует внимательно относиться к разделению диска на разделы. Само по себе пересечение разделов не опасно. Опасно именно размещение нескольких файловых систем на пересекающихся разделах. Разметка диска на разделы еще не означает создания файловых систем. Однако, уже сама попытка создания пустой файловой системы (то есть форматирование), на одном из пересекающихся разделов может привести к возникновению ошибок в файловой системе другого раздела. Все сказанное относится в одинаковой степени ко всем операционным системам, а не только самым популярным. Диск разбивается на разделы программным путем. То есть, Вы можете создать произвольную конфигурацию разделов. Информация о разбиении диска хранится в самом первом блоке жесткого диска, называемым главной загрузочной записью (Master Boot Record (MBR)). MBR является основным средством загрузки с жесткого диска, поддерживаемым BIOS.

Поделиться с друзьями: