Электронная библиотека книг Александра Фролова и Григория Фролова.
Shop2You.ru Создайте свой интернет-магазин
Библиотека
Братьев
Фроловых

Тонкая настройка и оптимизация MS-DOS

© Александр Фролов, Григорий Фролов
Том 4, М.: Диалог-МИФИ, 1993, 236 стр.

[Назад] [Содеожание] [Дальше]

3.3. Опытному пользователю

Калейдоскоп архиваторов

Мы рассказали вам только об одном архиваторе - arj.exe. Существуют ещё несколько популярных программ архивации. Лучше всего выбрать для себя один, самый удобный с вашей точки зрения архиватор, и пользоваться им для сжатия файлов на диске. Однако вам могут принести архивы программ, подготовленные другими архиваторами. Поэтому полезно иметь полный набор самых популярных архиваторов и уметь по крайней мере восстанавливать содержимое архивов, созданных этими архиваторами.

Каждый архиватор создаёт файл архива со своим расширением имени. Архиватор arj.exe, в частности, создаёт архивы с расширением имени arj, например !collaps.arj. Поэтому вы можете не указывать расширение обрабатываемого архива.

Приведём таблицу расширений имени для некоторых архиваторов:

Архиватор Расширение имени архива
arj.exe .arj
pkzip.exe .zip
lharc.exe .lzh
lha.exe .lzh
ice.exe .ice
pak.exe .pak
zoo.exe .zoo
pkarc.exe .arc
pkpak.exe .arc

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

Все архиваторы имеют примерно один и тот же формат параметров:

[имя архиватора] [команда] [опции] [имя архива] [имена файлов]

Некоторые архиваторы состоят из нескольких программ, выполняющих различные функции. Например PKZIP.EXE создаёт архивы (архивирует), а PKUNZIP.EXE - восстанавливает файлы из архива (разархивирует). Каждый архиватор использует свои команды и опции для выполнения одних и тех же операций.

Мы не будем детально описывать команды и опции для всех архиваторов, такое описание займет слишком много места. Вместо этого мы сведем в таблицы основные команды и опции для самых распространенных архиваторов.

В следующей таблице мы приведём команды для создания архива с именем !collaps из файлов текущего каталога (вы можете использовать любое другое имя).

Архиватор Команда Имя архива
arj.exe arj a !collaps !collaps.arj
pkzip.exe pkzip !collaps !collaps.zip
lharc.exe lharc a !collaps !collaps.lzh
lha.exe lha a !collaps !collaps.lzh
ice.exe ice a !collaps !collaps.ice
pak.exe pak a !collaps !collaps.pak
zoo.exe zoo a !collaps *.* !collaps.zoo
pkarc.exe pkarc a !collaps !collaps.arc
pkpak.exe pkpak a !collaps !collaps.arc

Если вам нужно удалить из текущего каталога файлы, записанные в архив, вместо команды "a" используйте "m".

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

Архиватор Команда Имя архива
arj.exe arj a -r !collaps !collaps.arj
pkzip.exe pkzip -rp !collaps !collaps.zip
lharc.exe lharc a -r !collaps !collaps.lzh
lha.exe lha a -r !collaps !collaps.lzh
ice.exe ice a -r !collaps !collaps.ice
pak.exe pak a /i !collaps !collaps.pak

Для извлечения содержимого архива вместе со всеми подкаталогами можно использовать следующие команды:

Архиватор Команда Имя архива
arj.exe arj x !collaps !collaps.arj
pkunzip.exe pkunzip -d !collaps !collaps.zip
lharc.exe lharc e -x !collaps !collaps.lzh
lha.exe lha e -x !collaps !collaps.lzh
ice.exe ice e -x !collaps !collaps.ice
pak.exe pak e /path !collaps !collaps.pak

Некоторые архиваторы предоставляют возможность создания многотомных архивов, расположенных на нескольких дискетах. В отличие от утилиты MS-DOS BACKUP одновременно с выгрузкой содержимого каталогов и подкаталогов архиваторы выполняют сжатие файлов.

Очень удобно создавать многотомные архивы программой ARJ.EXE. Для этого ей надо задать опцию -vnnnn, где nnnn - ёмкость используемых для архива дискет: 360, 720, 1200, 1440. Например, для выгрузки на дискеты высокой плотности (1,2 мегабайта) каталога BORLANDC со всеми подкаталогами можно использовать следующую команду:

arj a -r -v1200 a:\borlandc c:\borlandc



Предполагается, что каталог BORLANDC находится на диске C:, а многотомный архив будет создаваться на дискетах, вставляемых в дисковод a:.

Если BORLANDC - текущий каталог, команда будет выглядеть более просто:

arj a -r -v1200 a:\borlandc



В процессе создания архива утилита ARJ будет просить вас устанавливать всё новые и новые дискеты, до тех пор, пока все файлы не будут выгружены.

Для восстановления каталога BORLANDC лучше всего создать этот каталог командой MD или при помощи оболочки Norton Commander и сделать его текущим. Затем установите в дисковод первую дискету и выдайте следующую команду:

arj x -v a:\borlandc



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

Для задания пароля архиватор ARJ использует опцию -g. Пароль должен следовать сразу за этой опцией. Например, пусть нам требуется перенести все файлы из текущего каталога в архив и защитить архив паролем "pwd". Для этого можно использовать следующую команду:

arj m -r -gpwd !collaps



Для восстановления файлов из такого архива используйте команду:

arj x -gpwd !collaps



Приведём таблицу опций, используемых различными архиваторами для защиты архива паролем:

Архиватор Опция задания пароля
arj.exe -g
pkzip.exe -s
pak.exe -g
pkarc.exe -g
pkpak.exe -g

Динамический компрессор диска STACKER

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

На одном из логических дисков компьютера создаётся файл Stacker-диска, имеющий атрибуты "скрытый" и "системный". Специальный драйвер, подключённый в файле CONFIG.SYS, делает из него ещё один логический диск. За счёт устранения избыточности информации при записи размер этого логического диска получается в два раза больше, чем размер использованного для него файла.

То есть, если ваш компьютер имеет жёсткий диск ёмкостью 40 мегабайт, вы можете разместить на нём файл Stacker-диска размером 30 мегабайт. При этом у вас останется 10 мегабайт на жёстком диске, и ещё прибавится 60 мегабайт - это размер созданного логического диска.

Принцип работы Stacker-диска прост: при записи файлов на этот диск они сжимаются, при чтении - восстанавливаются. Разумеется, сжатие несколько замедляет процесс записи, однако замедление небольшое и незаметно в большинстве случаев.

Вместе с динамическим компрессором диска Stacker продаётся специальная плата, вставляемая в слот расширения материнской платы. Она выполняет аппаратную компрессию данных, причём делает это очень быстро. Вы можете не использовать аппаратную компрессию и, соответственно, не покупать эту плату. Программная компрессия выполняется также достаточно быстро.

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

Больше всего Stacker-диск подходит для хранения редко используемых программ, текстов, справочных баз данных. Вы можете перенести на него большинство утилит MS-DOS, но будьте осторожны с драйверами и резидентными программами, которые используются на этапе загрузки операционной системы. Их лучше хранить на обычном диске.

Перед установкой Stacker-диска удалите все резидентные программы из файла AUTOEXEC.BAT. Затем вставьте дистрибутивный диск Stacker в дисковод A:, сделайте диск A: текущим и введите команду:

a:\>install



На экране появится заставка:

Выберите строку "Continue with installation" и нажмите клавишу <Enter>.

После этого вам будет предложено выбрать диск и каталог, в котором будут находиться файлы драйвера Stacker-диска и обслуживающие утилиты:

Вы можете согласиться с предложенным каталогом C:\STACKER или выбрать любой другой. После определения каталога нажмите клавишу <Enter>.

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

Вы можете прервать процесс копирования, нажав клавишу <Esc> или <F10>.

После копирования вам будет предложено автоматически изменить файл AUTOEXEC.BAT для добавления к определению переменной среды PATH пути к созданному каталогу:

Вам надо выбрать строку, выделенную на этом рисунке.

После этого программа установки Stacker-диска предложит вам автоматически удалить все резидентные программы из файла AUTOEXEC.BAT и перезагрузиться:

Если вы уже удалили резидентные программы раньше, выберите строку, выделенную на этом рисунке и нажмите клавишу <Enter>.

Далее у вас будет выбор - создать пустой Stacker-диск или сразу перенести на Stacker-диск имеющиеся на обычном диске файлы:

Мы настоятельно рекомендуем вам при первой установке Stacker-диска создавать пустой диск и затем вручную переносить на него файлы. Для этого выберите строку "Build an empty Stacker drive".

На следующем этапе вам необходимо выбрать диск для размещения файла Stacker-диска. Т.е. необходимо выбрать диск, на котором будет создан скрытый системный файл Stacker-диска:

Выберите диск, содержащий достаточно свободного места или, что ещё лучше, пустой диск.

Программа-инсталлятор определит размер свободного пространства на выбранном вами диске и предложит размер создаваемого файла Stacker-диска:

Вы можете согласиться с предложенным размером диска и нажать <Enter>. В этом случае всё свободное пространство на выбранном вами диске будет распределено файлу Stacker-диска. Вы можете также уменьшить предложенную величину.

После определения размера диска вам будет предложено три возможности:

  • создать Stacker-диск;
  • изменить заданные параметры;
  • изменить настройку драйвера Stacker-диска.

Если вы всё задали правильно, выберите строку, выделенную на рисунке:

Вы можете поэкспериментировать с параметрами драйвера Stacker-диска, задавая различные значения для размера кластера и максимального коэффициента компрессии:

Однако при первой установке Stacker-диска мы рекомендуем вам использовать значения, принятые по умолчанию.

После выполнения всех описанных выше процедур необходимо перезагрузить операционную систему, после чего вам станет доступен новый Stacker-диск:

Вы также можете создать сразу несколько Stacker-дисков, выбрав в меню строку "Create another Stacker drive". После того, как все Stacker-диски созданы, необходимо перезагрузиться, выбрав строку "Reboot to access Stacker drive(s)".

После установки Stacker-диска в файл CONFIG.SYS будет добавлена строка типа:

DEVICE=C:\STACKER\STACKER.COM G:\STACVOL.000 G:\STACVOL.001



В этой строке после имени драйвера .i.STACKER.COM; следуют параметры - пути доступа к файлам Stacker-дисков.

Нестандартное форматирование дискет

Вам, наверное, известно, что наиболее распространены дискеты с двойной (Double Density - DD) и высокой (High Density - HD) плотностью, имеющие диаметр 5,25 и 3,5 дюйма.

Утилита MS-DOS FORMAT может отформатировать эти дискеты следующим образом.

Для дискет диаметром 5.25 дюйма:

Плотность Ёмкость отформатированной дискеты
Двойная - DD 360 килобайт
Высокая - HD 1,2 мегабайта

Для дискет диаметром 3,5 дюйма:

Плотность Ёмкость отформатированной дискеты
Двойная - DD 720 килобайт
Высокая - HD 1,44 мегабайта

В документации по операционной системе MS-DOS подробно описано, как форматировать дискеты двойной и высокой плотности.

Чем отличаются дискеты высокой плотности от дискет двойной плотности? Отличия заключаются в материале магнитного покрытия дискеты. Дискеты высокой плотности имеют более качественное (и, соответственно, более дорогое) магнитное покрытие, допускающее более плотную запись информации.

Мы уже рассказывали вам о том, что на дисках (и на дискетах) информация записывается на дорожках. Каждая дорожка делится на сектора. В следующей таблице мы приведём количество используемых дорожек и секторов для дискет, отформатированных стандартным образом:

5,25 DD, 360 К 40 дорожек, 9 секторов
5,25 HD, 1,2 М 80 дорожек, 15 секторов
3,5 DD, 720 К 40 дорожек, 9 секторов
3,5 HD, 1,44 М 80 дорожек, 18 секторов

Оказывается, на дискетах как двойной, так и высокой плотности можно расположить большее по сравнению с приведённым в этой таблице количество дорожек и секторов!

При этом ёмкость дискеты увеличится. Например, очень распространено форматирование дискет DD диаметром 5.25 дюйма на ёмкость 800 килобайт (стандартная ёмкость такой дискеты - 360 килобайт). Дискета, отформатированная на 800 килобайт, имеет 80 дорожек и 10 секторов.

Для нестандартного форматирования вам потребуются специальные программы. Наиболее распространены программы 800.COM, 900.COM, FDFORMAT.EXE. Кроме того, вы можете воспользоваться утилитой PU_1700.COM, созданной Ю.И. Панковым. Эта утилита работает более корректно с MS-DOS версии 5.0, учитывая все её особенности.

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

Например, поместите в AUTOEXEC.BAT такую строку:

c:\utility\800.com



Здесь мы предположили, что вы записали программу 800.COM в каталог UTILITY, расположенный на диске C:.

Если программа 800 запущена, вы можете форматировать дискеты обычной утилитой FORMAT, задавая при помощи параметров /T: и /N: требуемое количество дорожек и количество секторов на дорожке, соответственно. Например:

FORMAT A: /T:80/N:10



В данном случае дискета, вставленная в дисковод A:, будет форматироваться на ёмкость 800 килобайт.

Обратите внимание - вы сможете пользоваться дискетой, отформатированной на повышенную ёмкость, только в том случае, если была запущена программа 800.COM или аналогичная.

Какие параметры можно задавать утилите FORMAT? Это зависит от типа установленного в вашем компьютере дисковода для флоппи-дисков. Распространены 4 типа таких дисководов:

  • дисковод для дискет двойной плотности диаметром 5,25 дюйма, это дисковод для дискет, отформатированных на 360 килобайт;
  • дисковод для дискет высокой плотности диаметром 5,25 дюйма, это дисковод для дискет, отформатированных на 1,2 мегабайта;
  • дисковод для дискет двойной плотности диаметром 3,5 дюйма, это дисковод для дискет, отформатированных на 720 килобайт;
  • дисковод для дискет высокой плотности диаметром 3,5 дюйма, это дисковод для дискет, отформатированных на 1,44 мегабайта.

При использовании программы 800.COM вместе с дисководом для дискет двойной плотности диаметром 5,25 или 3,5 дюйма утилите FORMAT можно указывать следующие параметры:

Ёмкость дискеты Параметры команды FORMAT
360KB FORMAT a: /T:40/N:9
400KB FORMAT a: /T:40/N:10

Если у вас дисковод высокой плотности, вам также доступны и другие параметры:

Ёмкость дискеты Параметры команды FORMAT
720KB FORMAT a: /T:80/N:9
800KB FORMAT a: /T:80/N:10
1200KB FORMAT a: /T:80/N:15
1360KB FORMAT a: /T:80/N:17
1440KB FORMAT a: /T:80/N:18
1600KB FORMAT a: /T:80/N:20

Последние две строки таблицы описывают параметры, доступные только для дисководов высокой плотности для дискет диаметром 3,5 дюйма.

Программа PU_1700.COM - является аналогом 800.COM, но обладает большими возможностями. После запуска программы PU_1700 вы можете задавть утилите FORMAT следующие парметры:

FORMAT drv:[/T:tt][/N:nn][другие параметры]



Здесь:

  • drv - имя дисковода, использующегося для форматировния (A или B);
  • tt  - число форматируемых цилиндров;
  • nn - число секторов на дорожке.

Приведём таблицу значений объёмов отформатированной дискеты в зависимости от типа дисковода, типа дискеты и параметров форматирования tt и nn:

  -------------T--------------------T-----------------------¬
  ¦   Опции    ¦     Допустимый     ¦ Объём отформатирован- ¦
  ¦  FORMATа   ¦   тип дисковода    ¦ ной дискеты в байтах  ¦
  +-------T----+----T----T----T-----+-----------------------+
  ¦   tt  ¦ nn ¦360к¦720к¦1.2м¦1.44м¦   норма   - максимум  ¦
  +-------+----+----+----+----+-----+-----------------------+
  ¦ 40-41 ¦  9 ¦ +  ¦ +  ¦ +  ¦  +  ¦   362.496 -   371.712 ¦
  ¦ 40-41 ¦ 10 ¦ +  ¦ +  ¦ +  ¦  +  ¦   398.848 -   409.086 ¦
  ¦ 80-83 ¦  9 ¦    ¦ +  ¦ +  ¦  +  ¦   724.480 -   752.168 ¦
  ¦ 80-83 ¦ 10 ¦    ¦ +  ¦ +  ¦  +  ¦   806.460 -   837.120 ¦
  ¦ 80-83 ¦ 15 ¦    ¦    ¦ +  ¦  +  ¦ 1.212.928 - 1.259.008 ¦
  ¦ 80-83 ¦ 16 ¦    ¦    ¦ +  ¦  +  ¦ 1.294.848 - 1.344.000 ¦
  ¦ 80-83 ¦ 17 ¦    ¦    ¦ +  ¦  +  ¦ 1.376.768 - 1.427.968 ¦
  ¦ 80-83 ¦ 18 ¦    ¦    ¦ +  ¦  +  ¦ 1.457.664 - 1.512.960 ¦
  ¦ 80-83 ¦ 19 ¦    ¦    ¦    ¦  +  ¦ 1.539.584 - 1.596.928 ¦
  ¦ 80-83 ¦ 20 ¦    ¦    ¦    ¦  +  ¦ 1.620.480 - 1.681.920 ¦
  ¦ 80-83 ¦ 21 ¦    ¦    ¦    ¦  +  ¦ 1.702.400 - 1.765.888 ¦
  L-------+----+----+----+----------+------------------------






PU_1700, в отличие от драйвера 800, имеет два дополнительных формата большого объёма:

  • 1.44 MB для HD 5" (1.2 MB)
  • 1.68 MB для HD 3" (1.44 MB)

Приведём пример задания на форматирование дискеты HD на дисководе 1.44 MB (3,5 дюйма) на объём 1.702.400 байт в среде операционной системы MS-DOS версии 5.0:

FORMAT a:/t:80/n:21 /u



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

В документации на программу PU_1700 рекомендуется использовать следующие значения параметров (для MS-DOS версии 5.0):

    г====================================================¬
    ¦  FORMAT a:/t:81/n:10/u  -  на объём  .816.640 байт ¦
    ¦  FORMAT a:/t:81/n:18/u  -  на объём 1.476.096 байт ¦
    ¦  FORMAT b:/t:81/n:21/u  -  на объём 1.723.904 байт ¦
    L====================================================-

Программу PU_1700 следует запускать из файла AUTOEXEC.BAT в следующем формате:

     PU_1700 [/параметр]
       или
     PU_1700 [/параметр ... /параметр]

Приведём некоторые параметры программы PU_1700 (полностью параметры описаны в документации к программе PU_1700, составленной на русском языке и распространяемой в файле PU_1700.DOC).

  • /cfat контроль FAT при форматировании (необходим для корректной работы утилиты FORMAT MS-DOS версии 5.0.

Этот параметр допустим только при первом запуске программы.

Следующие параметры можно указывать как при первом запуске программы, так и при последующих её перезапусках:

  • /off отключение программы PU_1700;
  • /on активизация отключенной программы PU_1700;
  • /A=off дисковод A не обслуживается (не установлен);
  • /B=off дисковод B не обслуживается (не установлен);
  • /A=360 параметр указывает, что тип установленного дисковода A - дисковод двойной плотности (DD), рассчитан на дискеты диаметром 5,25 дюймов и на стандартную ёмкость 360 килобайт;
  • /B=360 дисковод 360 KB, 5" (DD);
  • /A=1.2 дисковод 1.2 MB, 5" (HD);
  • /B=1.2 дисковод 1.2 MB, 5" (HD);
  • /A=720 дисковод 720 KB, 3" (DD);
  • /B=720 дисковод 720 KB, 3" (DD);
  • /A=1.44 дисковод 1.44 MB, 3" (HD);
  • /B=1.44 дисковод 1.44 MB, 3" (HD);
  • /? вызов подсказки;
  • /sm=1 оптимальное расположение секторов при форматировании для увеличения производительности дисковода;
  • /sm=2 другой способ оптимального расположения секторов при форматировании для увеличения производительности дисковода;
  • /sm=off отключение оптимизации расположения секторов при форматировании.

В заключение несколько советов относительно использования нестандартно отформатированных дискет.

  • Не используйте нестандартно отформатированные дискеты для резервного копирования дистрибутивных дискет программного обеспечения, особенно операционных систем. У вас могут появиться проблемы с установкой программного обеспечения с нестандартных дискет. В крайнем случае воспользуйтесь программой PU_1700. Дискеты, подготовленные этой программой, могут быть загрузочными (системными).
  • Лучшее применение для программ нестандартного форматирования - форматирование дискет двойной плотности диаметром 5,25 дюйма (360 килобайт) на ёмкость 800 килобайт. Такие дискеты вы можете использовать для хранения архивов, документации, другого программного обеспечения, не критичного к структуре дорожки используемой дискеты.
[Назад] [Содеожание] [Дальше]