Математика Курс лекций по информатике Машиностроительное черчение Решение задач по физике Теоретические основы электротехники Сопротивление материалов История искусства Ядерные реакторы
Сбои в персональных компьютерах Программа инициализации Управление файлами Программы низкоуровневого форматирования Загрузочные секторы разделов Корневой каталог Таблицы размещения  файлов (FAT) Потери дискового пространства

Немногие пользователи знают, что программа CHKDSK может проверять степень фрагментированности определенного файла (или группы файлов). Кроме того, с ее помощью можно составить список всех файлов (включая скрытые и системные) конкретного тома — точно так же, как это делается при введении команды DIR с ключом /S. Но все же главным достоинством программы CHKDSK является способность обнаруживать и исправлять дефекты файловой системы DOS.

Название программы не вполне соответствует ее сущности: складывается впечатление, что ее основное предназначение — проверять диск (CHKDSK — Check Disk). На самом деле программа не состоянии проверить целостность данных на диске или в отдельном файле. CHKDSK не может даже точно определить количество плохих секторов на диске, тем более определить их, положение или пометить обнаруженные дефекты. Единственное, ,что может сделать рассматриваемая программа — это проверить каталоги и FAT и определить, имеются ли между ними расхождения. CHKDSK не может обнаружить повреждений в области данных, занимаемой файлом (и, естественно, не сообщает об этом) — она проверяет только зоны FAT и каталогов на диске (его оглавление). Поэтому правильнее было бы дать программе название наподобие CKDIRFAT (Check Directory and FAT — проверка каталога и FAT). Кстати, ни из реального, ни из гипотетического имени не следует, что программа способна корректировать дефекты в вышеуказанных структурах диска.

Как уже было сказано, с помощью программы CHKDSK можно проверить степень фрагментированности файлов. Файлы, целиком записанные на последовательно расположенные дорожки и секторы диска или дискеты, обрабатываются гораздо быстрее. Обращение к файлам, фрагменты которых разбросаны по разным участкам диска, происходит гораздо медленнее. В процессе считывания файла DOS определяет местоположение его следующего фрагмента по указателю — специальному коду, хранящемуся в FAT. Иногда, при определенном стечении обстоятельств, эти указатели могут оказаться затертыми или испорченными, в результате чего DOS оказывается не в состоянии найти некоторые фрагменты файла. Программа CHKDSK может сообщить вам об этой неприятности и "вернуть в оборот" такие потерянные кластеры, т.е. использовать их для записи новых файлов.

Запуск программы CHKDSK

Программа CHKDSK вызывается следующей командой:

CHKDSK [d:][path][filename] [/F] [/V]

Параметр [d:] обозначает диск (том DOS), который вы хотите проанализировать. В параметрах [path] и [filename] указываются конкретные файлы или их группы, которые должны быть проверены на фрагментированность (в дополнение к анализу всего тома). Для включения в список всех файлов выбранного каталога или определенной их части в параметре [filename] можно использовать символы и (wildcards). Единственным недостатком при анализе фраг-ментированности является то, что нельзя пересекать границы каталогов, т.е. можно за один заход проверить только те файлы, путь к которым определен параметрами [d:] и [path].

При задании ключа /F (Fix) программа CHKDSK, найдя ошибки в каталогах или FAT, сама вносит в них исправления. Если ключ /F не используется, то программа не в состоянии записать что-либо на диск, и никаких исправлений, естественно, внести не может.

Если вы воспользуетесь ключом /V (Verbose), то программа выведет список всех элементов корневого каталога (подкаталогов и файлов) указанного диска [d:] с подробной информацией об обнаруженных ошибках.

Ни один из вышеперечисленных параметров и ключей в командной строке не является обязательным. Если не указан ни один из них, то программа CHKDSK обследует текущий том или накопитель и не проверяет файлы на фрагментированность. Если задать параметры [d:], [path] и [filename], то CHKDSK проверит указанные файлы и выведет одно из двух возможных сообщений:

All specified file(s) are contiguous {Все указанные файлы являются непрерывными)

или

[d:][path][filename] Contains xxx non-contiguous blocks

(Файл с указанным названием состоит из ххх отдельных блоков)

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

Запись на диски и в файлы в персональных компьютерах