Тайны и секреты компьютера - Антон Орлов
Шрифт:
Интервал:
Закладка:
Рис. 8.5. В операционных системах Windows95/98 здесь можно указать, сколько путей к папкам и файлам операционная система запомнит и будет потом использовать.
Если установить в этом окне параметр "Настольный компьютер", то операционной системой будет запоминаться информация о местоположении первых кластеров 32 каталогов и 677 файлов, к которым в последнее время происходило обращение, а если "Сервер сети" — то о первых кластерах 64 каталогов и 2729 файлов. Эта информация располагается в оперативной памяти и тем самым сокращает в какой-то степени ее обьем, доступный другим приложениям, но в любом случае выигрыш во времени и сбережении головок жесткого диска от износа при кэшировании очевиден.
То есть — казалось бы: если для каждой операции с файлами, даже самого элементарного считывания файла из корневого каталога, нужно посмотреть минимум в три места на жестком диске, — в файл этого корневого каталога, затем в FAT, и лишь потом в кластеры, содержащие данные файла (а если файл фрагментирован, то еще и пройти по ним по отдельности), — то почему же эти операции происходят все же достаточно быстро? А потому, что на самом деле система смотрит в FAT и в каталоги не всегда — она сначала копирует их в оперативную память, а затем, при необходимости считывания файла, берет нужные данные именно из оперативной памяти, а не с диска. Этот процесс именуется кэшированием.
Разделы
В начале жесткого диска, в его самом первом секторе самой первой дорожки располагается небольшая программа — так называемая "главная загрузочная запись" Master Boot Record. В том же секторе помещается Корневая Таблица Разделов ("Root Partition Table"), в которой располагаются сведения о разбиении всего физического пространства жесткого диска на разделы — участки диска с определенной файловой системой на них.
Раздел — это кольцевидная зона поверхности жесткого диска, находящаяся между двумя определенными цилиндрами. В Корневой Таблице Разделов указывается для каждого раздела, с какого сектора какой дорожки какого цилиндра он начинается и на каких заканчивается, сколько в нем всего секторов, какой тип файловой системы на нем установлен и является ли данный логический диск в данный момент загрузочным — то есть должна ли операционная система загружаться именно с него. Согласно стандартам IBM PC, всего в Корневой Таблице Разделов может быть описано не более четырех различных разделов, так как ее размер не должен превышать 512 байт вместе с Master Boot Record.
Внутренняя структура раздела определяется той файловой системой, которая на нем создана. Однако в начале каждого раздела обязательно располагается Загрузочная запись раздела ("Boot Record") — небольшая программа, выполняющая начальную загрузку операционной системы. Один из разделов, описанных в Корневой Таблице Разделов, помечается как «загрузочный», или «активный», и при загрузке компьютера Master Boot Record считывает Корневую Таблицу разделов, а затем считывает и запускает Boot Record того раздела, который помечен в этой таблице как загрузочный. (Сама Master Boot Record запускается BIOS'ом, запрограммированным считывать с диска и запускать на исполнение содержимое его первого сектора.)
С понятием «раздела» тесно связано понятие "логического диска", использующееся в операционных системах MS DOS и Windows. "Логический диск" — это некоторая часть жесткого диска, представляемая операционной системе как отдельное физическое устройство — как отдельный жесткий диск. При наличии нескольких логических дисков проще организовывать хранение данных, в частности, можно разнести системные файлы и данные пользователя.
Изначально, согласно стандартам, принятым при разработке MS-DOS и впоследствии унаследованными всеми операционными системами типа Windows, в каждом разделе мог быть выделен лишь один логический диск. Однако для увеличения числа логических дисков, могущих быть выделенными на винчестере, в те же стандарты была добавлена возможность создания так называемого Расширенного раздела DOS.
Структура этого Расширенного раздела DOS такова. В его первом секторе расположена Таблица Разделов Расширенного раздела DOS с точно такой же структурой, как и Корневая Таблица Разделов. Только описываются в ней координаты начала и конца первого логического диска в этом Расширенном разделе (точно так же, как и каждого раздела в Master Boot Record), его тип файловой системы, а также координаты начала и конца зоны, занимаемой остальными логическими дисками, если они есть. Соответственно в первом секторе зоны остальных логических дисков находится Таблица Разделов с информацией о втором логическом диске, расположенном в Расширенном разделе Dos, и зоне, занимаемой следующими за ним дисками. В итоге получается как бы ряд вложенных друг в друга, как матрешки, разделов, в каждом из которых имеется по Таблице Разделов, описывающей координаты одного логического диска и зоны, занимаемой следующими дисками. Такая структура может показаться сложной, но только она дает возможность совместить большое количество логических устройств и ограниченный размер Таблиц Разделов.
Все изложенное проиллюстрировано на рис. 8.6.
Рис. 8.6. Структура жесткого диска, на котором в MS-DOS или Windows выделено несколько логических дисков.
Операционные системы MS-DOS и Windows допускают создание на жестком диске лишь одного Расширенного раздела DOS. Остальные разделы при этом могут содержать не более одного логического диска (то есть границы этих дисков попросту совпадают с границами разделов) и именуются Первичными разделами DOS.
В начале каждого логического диска размещается его Загрузочная запись ("Boot Record"), содержащая в себе информацию о размерах кластера на данном диске, а также о местах начала и конца обеих копий FAT, если на этом диске используется именно такая файловая система. Если логический диск является загрузочным (а это возможно в том случае, если он расположен в Первичном разделе DOS, помеченном в Корневой Таблице Разделов как активный, — в этом случае Master Boot Record загрузит Boot Record именно этого диска в память и запустит ее), то в его Boot Record содержится также и программа, обеспечивающая считывание файлов операционной системы, отвечающих за ее начальный запуск. Эта программа может считывать лишь определенные секторы диска (обычно, хоть и не обязательно, находящиеся сразу за корневым каталогом), поэтому и файлы начального запуска операционной системы обязательно должны располагаться в местах, известных BootRecord.[21]
На логических дисках, не являющихся загрузочными (например, расположенным в Расширенном разделе Dos), Boot Record служит просто для хранения информации о файловой системе.
Для разбиения нового жесткого диска на разделы часто используется программа Microsoft FDisk, входящая в состав MS-DOS и Windows 9x. При работе FDisk создаются Таблицы Разделов и все Загрузочные записи.
Если вы подготавливаете с помощью FDisk к работе новый чистый жесткий диск, единственный в компьютере, то FDisk следует скопировать на загрузочную дискету (вы можете найти эту программу в Windows 95/98 в подкаталоге Command папки, где установлена Windows) при ее изготовлении, а затем загрузиться с этой дискеты и запустить программу. После запуска FDisk вы увидите вопрос о включении поддержки больших дисков. Согласившись на ее использование, вы сможете создавать разделы с файловой системой FAT32. Сделать это стоит. Затем вы перейдете в основное меню программы (рис. 8.7), после чего можете выполнять разбиение диска. Интерфейс у программы достаточно понятный, так что работать с ней легко, если, конечно, знать о значении всех терминов.
Рис. 8.7. Microsoft FDisk
После окончания работы fdisk не забудьте отформатировать полученные логические диски командой format (из них диск С: — как системный: format C: /s). Все — жесткий диск готов для установки на него операционной системы.
Например, сначала на пустом диске выделите Primary Dos Partition — основной раздел DOS размером в 2–4 гигабайта. Все остальное место отведите под Extended DOS Partition — дополнительный раздел DOS, если вы, конечно, не собираетесь работать с Unix или Linux. В Extended DOS Partition выделите 3–5 логических дисков обьемом до 2 гигабайт, а остальное отведите под один большой диск.
Помните, что при удалении логического диска или раздела вся информация на нем удаляется, и восстановить ее можно лишь с помощью специальных программ или приемов.
У программы FDisk есть также некоторые неявные параметры, которые могут иногда помочь восстановить работоспособность компьютера. Скажем, некоторые вирусы в результате своей деятельности уничтожают содержимое Master Boot Record, и компьютер перестает загружаться, так как не может найти и использовать Корневую Таблицу Разделов (ведь именно это делает программа, записанная в Master Boot Record). Исправить эту ситуацию можно, загрузив компьютер с дискеты, содержащей FDisk, и введя команду fdisk/mbr. Если у вас два или больше жестких дисков, то ключ должен выглядеть как /cmbr <номер диска> для восстановления загрузочной записи на соответствующем устройстве.