Научно-технический кооператив "Спрайт" г. Новосибирск 1992 ОПЕРАЦИОННАЯ СИСТЕМА "С П Р А Й Т" (версия 1.5) РУКОВОДСТВО ПРОГРАММИСТА III. СИСТЕМНОЕ ПРОГРАММНОЕ НАПОЛНЕНИЕ III.1. Сервисные системные утилиты В данном документе описывается порядок работы с програм- мами, входящими в комплект поставки ОС "Спрайт" в виде ав- тономных программ. СОДЕРЖАНИЕ 1. Порядок запуска утилит 2. FORMAT - разметка диска 2.1. Терминология 2.2. Общие сведения 2.3. Диалог с программой 2.4. Выбор устройства и номера тома 2.5. Изменение параметров устройства 2.6. Разметка диска и тома 2.7. Контроль диска и тома 2.8. Повторение работ и выход 2.9. Сообщения программы 3. CONVERT - конвертирование файлов из среды ИКП 3.1. Общие сведения 3.2. Диалог с программой 3.3. Выбор устройств 3.4. Выбор объектного каталога 3.5. Выбор файлов для конвертирования 3.6. Установка режимов записи 3.7. Конвертирование 3.8. Порядок работ и выход 3.9. Сообщения программы 4. CONV - двустороннее конвертирование файлов 4.1. Общие сведения 4.2. Формат командной строки 4.3. Работа программы 5. MAKESYS - запись загрузочного модуля системы 5.1. Общие сведения 5.2. Диалог с программой 5.3. Сообщения программы 6. DMAP - карта использования диска 6.1. Общие сведения 6.2. Работа программы 6.3. Вид карты 6.4. Просмотр и корректировка карты 7. SPEEDUP - ускорение MFM-дисководов 7.1. Общие сведения 7.2. Режим определения задержки опытным путем 7.3. Режим установки заданной задержки 8. CONFIG - выдача конфигурации внешней памяти 8.1. Общие сведения 8.2. Выходные данные программы 9. PRINTER - инсталляция драйвера принтера 10. COMP - сравнение файлов 11. DSORT - сортировка подкаталогов 12. MOVE - перемещение файлов 1. ПОРЯДОК ЗАПУСКА УТИЛИТ Все описываемые здесь программы располагаются на поста- вочном диске системы в подкаталогах SYSTEM и UTILS в файлах с теми же именами, имеющими расширение ".PRG" . Запуск их осуществляется из режима командного диалога системы по об- щепринятым правилам. Для запуска утилиты достаточно ввести ее имя (без расши- рения). Дополнительные режимы работы задаются ключами и па- раметрами в командной строке или непосредственно в диалоге с программой; их описание дается ниже. По окончании работы утилит происходит возврат в команд- ный режим. 2. FORMAT - РАЗМЕТКА ДИСКА 2.1. Терминология В данном документе используется традиционная терминоло- гия, связанная с дисковыми устройствами внешней памяти. Для других устройств, поддерживаемых системой, но основанных на иных принципах организации внешней памяти (электронные дис- ки и т.п.), все понятия преносятся по аналогии с сохранени- м соотношений между ними. Единая системная терминология описания внешней памяти и ее универсальная структура под- робно описана в "РП.I" и "РСП.II.3". 2.2. Общие сведения Программа FORMAT служит для разметки внешней памяти в формате всех типов устройств, обслуживаемых ОС "Спрайт". Программа позволяет: - размечать носитель (диск), т.е. физически форматировать его на блоки по 256 байтов для хранения информации; - размечать том данных ОС "Спрайт", т.е. инициализировать структуру таблиц, описывающих размещение на диске фай- лов и подкаталогов; - контролировать целостность разметки диска; - варьировать ряд характеристик диска при разметке. Управление разметкой ведется в режиме диалога с програм- мой. Пакетное управление из командной строки в текущей вер- сии не реализовано. 2.3. Диалог с программой Задание параметров разметки и выбор работ осуществляется через меню, имеющие вид окон со списками альтернатив. Выбор альтернатив в меню ведется традиционным образом - с помощью курсора (">>"). В отдельном окне выдается подсказка по уп- равлению текущим меню. На экране программы есть 3 окна меню: - меню работ (слева вверху), - меню параметров (справа вверху), - меню интервала треков (слева внизу), и 2 окна сообщений: - окно подсказки по текущему режиму (справа внизу), - окно ошибок (справа в середине). 2.4. Выбор устройства и номера тома Перед началом разметки требуется установить диск в нуж- ное устройство и указать имя устройства и номер тома диска. Имя устройства (буква A,B и т.д. по общесистемным прави- лам) устанавливается верхней альтернативой в меню работ. Там же выводится тип устройства, определяемый автоматически по имени. После выбора устройства в меню параметров устана- вливаются его стандартные параметры. Номер тома является идентификатором диска и служит для различения разных дисков системой при одновременной работе с ними. Во избежание порчи при этом данных требуется давать разным дискам разные номера. Номер тома - число от 0 до 255. Номер тома текущего диска определяется автоматически при выполнении любой работы, кроме разметки диска. 2.5. Изменение параметров устройства Переход из меню работ в меню парамеетров позволяет реда- ктировать параметры текущего устройства. Выбором верхней альтернативы можно изменить весь текущий набор параметров: либо на принятый в системе для устройств данного типа ("стандартный"), либо на считанный из блока параметров текущего устройства ("текущий"). Обычно они сов- падают. Возможно изменение некоторых параметров и по отдельнос- ти, хотя это не всегда имеет смысл: например, драйверы стандартных дисководов игнорируют изменение размера трека в секторах. Часть параметров являются производными и вычисля- ются автоматически по значениям других параметров. Часть параметров имеют ограничения на максимальное значение, в т. ч. и производные от других параметров. Изменение параметра становится возможным после его выбо- ра в меню; оно проводится по общим правилам редактирования строки (см. РП.I.3.4), в которой изначально записано теку- щее значение. Все числа задаются в десятичном представлении. Список и смысл параметров носителя таковы: - число сторон (1 или 2) соответствует числу головок дис- ковода; - число треков на диске (общее, с учетом всех сторон) и размер каждого трека в секторах (блоках) по 256 байтов при перемножении дают общий объем диска в блоках; - число блоков системного резерва (<255) определяет объем начального фрагмента дискового пространства, зарезерви- рованного для хранения загрузочного модуля системы или в иных целях и исключаемого из динамического распреде- ления дискового пространства под файлы; - число стартовых блоков (не более размера трека,обычно 1) задает число блоков системы, загружаемых автоматически контроллером дисковода; входит в системный резерв; - число рабочих блоков определяется как разность объемов диска и системного резерва и задает размер файлового пространства; - число блоков корневого каталога (не более 32) задает размер линейного участка, выделяемого при разметке тома под корневой каталог в целях уменьшения его разброса по диску при последующем заполнении. 2.6. Разметка диска и тома Полная разметка диска под систему включает в себя физи- ческую разметку диска и разметку тома. Эти работы следует выполнять последовательно в названном порядке. Допускается не размечать физически диски, которые были размечены ранее (В ОС "Спрайт" сохранен единый физический формат диска с ИКП и другими системами, но принят иной формат тома). После выбора "разметки диска" в меню работ требуется указать интервал размечаемых треков в левом нижнем меню (по умолчанию он совпадает со всем диском) и еще раз подтвер- дить готовность к разметке. Разметка сопровождается выдачей номеров форматируемых треков и может быть прервана нажатием РЕД. По окончании разметки происходит возврат в меню работ. По "разметке тома" на диске инициализируются служебные таблицы размещения файлов в памяти и инициализируется 0-й блок, содержащий запись корневого каталога и параметры дис- ка. Таким образом, диск фактически освобождается от ранее записанных файлов. 2.7. Контроль диска и тома "Контроль диска" и "контроль тома" в меню работ означают контрольное считывание, соответственно, всех блоков диска и только служебных блоков с целью проверки порчи формата. Другие виды контроля здесь не ведутся, для них следует ис- пользовать другие утилиты (например, DMAP). Контроль диска, так же как и разметка, может быть прове- ден по заданному интервалу треков. 2.8. Повторение работ и выход Смена диска, изменение параметров и выполнение всех ра- бот могут быть проведены любое число раз в любом порядке. Выход из программы в командный режим системы - "выход" в меню работ. 2.9. Сообщения программы Программа выдает стандартные системные сообщения об ошибках, запросы перестановки дисков и подсказку по режимам. 3. CONVERT - КОНВЕРТИРОВАНИЕ ФАЙЛОВ ИЗ СРЕДЫ ИКП 3.1. Общие сведения Программа CONVERT служит для конвертирования (переписи) файлов с дисков формата DOS 3.3 (ИКП, "Школьница" и др.сис- темы) в формат диска ОС "Спрайт". Под конвертированием понимается только буквальная пере- пись содержимого файла. Не нуждаются в дальнейшей обработке текстовые файлы в расширенной кодировке ASCII (с русскими буквами). Перекодировка текстов с другой таблицей символов должна быть выполнена после конвертирования специальной программой. Объектные и программные файлы других систем, в общем случае, требуют дальнейшей адаптации к ОС "Спрайт" - настолько, насколько изменились требованию к внутреннему формату и системному интерфейсу при переносе инструменталь- ной системы или языка. Программа CONVERT позволяет: - выбирать файлы для конвертирования через меню по именам и шаблону имен; - записывать файлы в различные подкаталоги диска; - вести контроль записи и повторной записи. Управление конвертированием ведется в режиме диалога с программой. Пакетное управление из командной строки не пре- дусмотрено. 3.2. Диалог с программой Выбор работ и файлов осуществляется через меню, имеющие вид окон со списками альтернатив. Выбор альтернатив в меню ведется традиционным образом - с помощью курсора (">>"). В отдельном окне выдается подсказка по управлению текущим ме- ню. На экране программы есть 4 окна меню: - меню работ диска-оригинала (слева вверху), - меню работ диска-дубликата (справа вверху), - меню файлов диска-оригинала (слева в середине), - меню файлов диска-дубликата (справа в середине), Внизу расположено окно диагностики и подсказки по текущему режиму. 3.3. Выбор устройств Перед началом конвертирования требуется указать имена устройств, на которых расположены диск-оригинал (в формате ИКП, с которого будут считываться файла) и диск-дубликат (в формате ОС "Спрайт", на который будут записываться файлы). Допускается совпадение этих устройств: тогда по ходу кон- вертирования будут выдаваться запросы на перестановку дис- ков. Имя устройства (буква A,B и т.д. по общесистемным прави- лам) устанавливается верхней альтернативой в каждом из меню работ. Тип устройства определяется автоматически из конфи- гурации системы. 3.4. Выбор объектного каталога Альтернатива "Просмотр и выбор каталога" в меню работ дубликата позволяет перейти в окно файлов дубликата и про- смотреть или выбрать подкаталог, в который будут записы- ваться конвертируемые файлы. В первой строке меню файлов выводится номер тома дубли- ката и размер свободной памяти на нем в блоках. Ниже пере- числяются файлы текущего подкаталога - сколько помещается в окне. Циклическое скроллирование списка файлов вверх и вниз происходит при перемещении курсора. В начале в меню файлов выдан корневой каталог дубликата. Для перехода в подкаталог следует "выбрать" имя подкаталога (они отмечены знаком "\" перед именем). Для перехода в над- каталог в начале каталога есть специальная альтернатива. При этом в окне выдаются файлы указанного каталога. Выбор текущего каталога в качестве каталога для записи происходит по нажатию РЕД. При этом происходит возврат в меню работ дубликата. Полный путь доступа к текущему подкаталогу отображается после имени устройства дубликата. 3.5. Выбор файлов для конвертирования Альтернативы "Чтение нового каталога" и "Выбор файлов по каталогу" в меню работ оригинала позволяют перейти в меню файлов оригинала для выбора файлов для конвертирования. По первой из них каталог диска-оригинала считывается в память, а по второй происходит переход в уже считанный каталог. Меню файлов оригинала и порядок работы в нем аналогичен меню файлов дубликата, но вместо свободной памяти выдается число выбранных файлов, подкаталоги не выбираются из-за их отсутствия, а выбор любого файла означает установку или снятие отметки его для конвертирования. Имена файлов здесь обрезаются до 15 символов, т.к. больше не допускает система. Для удобства поиска в меню работ можно установить шаблон имен файлов в исходном каталоге: в нем допустимы символы умолчания "*" и "?", смысл которых тот же, что и в шаблонах имен файлов в ОС "Спрайт" (см. РП.II.2.3). 3.6. Установка режимов записи Альтернатива "Перезапись" в меню работ дубликата включа- ет и выключает контроль записи в уже существующий файл. В режиме "ДА" новый файл затирает старый. В режиме "НЕТ" за- прашивается новое имя для конвертируемого файла. Альтернатива "Проверка записи" в том же меню включает и выключает контроль записи данных на дубликате. Функциональ- но ее действие равносильно директиве VFY в командном режиме. 3.7. Конвертирование Конвертирование отмеченных на оригинале файлов начинает- ся по выбору альтернативы "Запись отмеченных файлов" в меню работ оригинала. По мере переписи файлы в исходном каталоге меняют маркировку. Маркировка "записан" остается у файла и после завершения переписи - до чтения нового каталога. Это позволяет проводить конвертирование по одному каталогу в несколько приемов, отслеживая уже обработанные файлы. 3.8. Порядок работ и выход Смена дисков, чтение каталогов, выбор файлов и смена ре- жимов могут быть проведены любое число раз в любом порядке. Выход из программы в командный режим - Упр-К. 3.9. Сообщения программы Программа выдает стандартные системные сообщения об ошибках, запросы перестановки дисков и подсказку по режимам. 4. CONV - ДВУСТОРОННЕЕ КОНВЕРТИРОВАНИЕ ФАЙЛОВ 4.1. Общие сведения Программа CONV обеспечивает двунаправленное конвертиро- вание файлов между форматами ОС "Спрайт" и DOS 3.3 (ИКП) с управлением из командной строки. Программа CONV позволяет: - конвертировать отдельные файлы и группы файлов из любого формата (DOS 3.3, ОС "Спрайт") в любой; при конвертиро- вании в DOS 3.3 - указывать типы объектных файлов; - просматривать содержимое каталогов любого формата. Управление конвертированием ведется из входной строки вызова программы. Программа реализует расширение точное директив COPY и DIR Командера для двух файловых форматов, поэтому ниже при- водится только описание особенностей, не покрываемых анало- гией. 4.2. Формат командной строки Командная строка вызова программы имеет общий вид: CONV/ключи <оригинал> <копия> [ -<тип копии> ] Ключи задают режимы работы программы и тип файлов-копий для формата DOS 3.3 (A,B,K,R,D,T). Другой вариант указания типа - буква после '-' в конце строки. Если тип не задан, по умолчанию выбирается текстовый формат файлов-копий. <Оригинал> и <копия> задают устройства, подкаталоги и группу файлов для переписи - аналогично COPY. Замечание:так как в формате библиотек DOS 3.3 подкаталогов нет, указание их в соответствующем пути недопустимо. 4.3. Работа программы По ключу H или при пустой входной строке работа програм- мы ограничивается выдачей краткой подсказки по ее запуску. По ключу F выдается каталог файлов на <оригинале>. Воз- можно указание шаблона имен. В других случаях выполняется копирование файлов, удовле- творяющих спецификации <оригинала> на устройство-<копию>. Распознавание и преобразование форматов файлов выполняются автоматически при первом обращении к носителям. Т.о., программа реализует 4 типа конвертирования: - DOS 3.3 -> "Спрайт", как в программе CONVERT; - "Спрайт" -> DOS 3.3 - обратное; - "Спрайт" -> "Спрайт" - в этом случае программа работает аналогично директиве COPY Командера; - DOS 3.3 -> DOS 3.3 - что позволяет, например, выполнять конвертирование B-файлы в K-файлы и наоборот. Конвертирование группы файлов сопровождается стандартным выводом имен файлов и запросами подтверждения выбора. Ключ N отменяет запросы. 5. MAKESYS - ЗАПИСЬ ЗАГРУЗОЧНОГО МОДУЛЯ СИСТЕМЫ 5.1. Общие сведения Программа MAKESYS служит для записи стандартного именно- го загрузочного модуля ОС "Спрайт" в блоки системного ре- зерва диска. Программа позволяет формировать 4 версии: для 7 и 9 ис- полнения ПЭВМ Агат, для дисководов ЕС-5323/5311 и ЕС-5088/ 5089. Работа с программой ведется в виде ответов на запросы. Программа формирует на диске т.н. "рабочий" модуль сис- темы. Создание рабочего модуля возможно только при подтвер- ждении пароля и только с поставочного диска. Во избежание порчи поставочного диска запись на него следует исключить и пользоваться только рабочими копиями. Если системный модуль поставочного диска все-таки испорчен, следует переформати- ровать с помощью программы FORMAT первые два трека и вос- становить загрузочный модуль на нем с помощью MAKESYS. 5.2. Диалог с программой В начале работы программа запрашивает пароль для иденти- фикации пользователя системы. Неподтверждение пароля ведет к формированию неработоспособного модуля системы. При вводе пароль на экране не отображается в целях секретности. Программа позволяет копировать систему на произвольное количество дисков, выводя циклически запросы на установку диска в нужное устройство, на ввод исполнения ПЭВМ, на ввод имени устройства и на продолжение работ. На последний за- прос требуется ответить "д" или "н" на любом регистре, при этом "н" завершает работу программы. Ответ РЕД на любой другой запрос влечет запрос продолжения. На запрос исполнения следует ответить "7" или "9": в за- висимости от того, какая версия формируется. На запрос устройства следует ввести A, B и т.п. - имя устройства, на котором находится диск для записи. Тип за- грузочного дисковода версии определяется типом этого уст- ройства. 5.3. Сообщения программы Возможны следующие диагностики по ходу работы: "Идет запись..." - загрузочный модуль пишется на диск; "Система записана" - запись завершена успешно; "Такого устройства нет!" - задано несуществующее устройство; запрос устройства повторяется; "А размечен ли Ваш диск?" - не читается стартовый блок дис- ка: возможно, диск не размечен; "Это диск не ОС "Спрайт"!" - чужой диск: в стартовом блоке отсутствует или испорчена таблица параметров диска; "Ошибка чтения DPB!" - поврежден стартовый блок диска: за- пись невозможна, требуется преразметить диск; "Мало блоков в сист.резерве, заданном при разметке диска: запись невозможна!" - размер системы превосходит размер системного резерва на диске (см.п.2.5); если это случай- ная ошибка при разметке диска и на нем еще нет файлов, его следует переразметить; "Нет MAKESYS.SYS в текущем каталоге!" - отсутствует дистри- бутивный модуль системы, хранящийся обычно в подкаталоге \SYSTEM\MAKESYS\ поставочного диска: этот файл в момент запуска программы должен находиться в текущем каталоге; следует иметь в виду, что этот файл имеет атрибут скры- того файла и выдается в каталоге лишь по ключу /H ; "Испорчен MAKESYS.SYS!" - дистрибутивный файл поврежден или неверно указан пароль; "Ошибка записи на диск!" - прочие повреждения диска. 6. DMAP - КАРТА ИСПОЛЬЗОВАНИЯ ДИСКА 6.1. Общие сведения Программа DMAP предназначена для проверки корректности структуры тома файлов на диске. В данной версии программа работает только с носителем на текущем устройстве. Работа программы ведется автоматически с выходом в диа- лог для просмотра результатов, коррекции и повторного за- пуска. Программа не требует никаких входных параметров и может быть запущена в пакетном режиме. Более подробную информацию о структуре тома см. в ?РСП.?? 6.2. Работа программы При запуске программа читает с текущего носителя таблицы размещения файлов в томе (VTOC), затем выполняет просмотр файлов по всем подкаталогам, начиная с корневого. При этом на экран выдаются имена просматриваемых файлов. В ходе про- смотра читаются блок-списки файла всех уровней и по ним определяется реально занимаемое файлом пространство в томе. Здесь ведется контроль и диагностика следующих нарушений файловой структуры тома: - недопустимый номер блока - диагностика вида: N файла : N блока - пересечение двух файлов по некоторому блоку - диагности- ка вида: N файла-1 & N файла-2 : N блока В процессе просмотра файлы нумеруются; нумерацию можно будет увидеть позже. 6.3. Вид карты По окончании просмотра реальная карта памяти выводится на экран в виде прямоугольной таблицы, поля которой соот- ветствуют блокам памяти. В поле указываются: число - номер файла, если блок выделен под файл (маркер FF во VTOC2-NN), иначе число не выдается; * - если блок занят системной информацией (маркер F7 во VTOC2-NN); . - если блок считается свободным (маркер 00 во VTOC2-NN); X - если блок считается плохим (маркер F0 во VTOC2-NN); ? - при другой маркировке блока во VTOC2-NN. Нормальной считается разметка таблицы, при которой в по- зиции выведен либо номер файла без дополнительной маркиров- ки, либо точка, либо * (при стандартной разметке диска сис- темными блоками считаются около 40 его первых блоков и бло- ки с номерами NN00, занятые под VTOC2-NN). Пустое (занятое пробелом) поле соответствует выделенному, но не использо- ванному блоку. Карта выдается порциями по $100 (256) блоков; каждая порция соответсвует одному VTOC2-NN. Справа внизу карты вы- дается числовая информация вида AA/BB:CC/DD:EE , где: AA - число занятых блоков во VTOC2-NN, записанное в NN-м байте VTOC1; BB - число выделенных блоков во VTOC2-NN, определенное подсчетом ненулевых байтов (начиная с 1) в нем самом; CC - сколько из них считается выделенными под файлы (имеют маркер FF); EE - число реально занимаемых файлами блоков во VTOC2-NN, определенное по построенной карте; DD = EE + число блоков, имеющих другую маркировку занятос- ти (не FF) во VTOC2-NN. При нормальной разметке все эти числа должны быть равны между собой. Если на носителе отмечены плохие, дополнитель- ные системные или иным образом маркированные блоки, то нор- мальным считается соотношение: AA=BB=DD>CC=EE. В нижней части экрана выводится фрагмент списка файлов с используемой в карте нумерацией. 6.4. Просмотр и корректировка карты Показ следующей/предыдущей порции карты - стрелки "вниз" и "вверх". Листание списка файлов - стрелки "влево/вправо". По нажатию пробела производится корректировка текущего VTOC2-NN таблицы размещения (только в памяти!) по состоянию карты: - все выделенные, но не использованные блоки отмечаются как незанятые; - число выделенных блоков во VTOC2-NN, записанное в VTOC1, приводится в соответствие с его реальным значеним. Клавиши Упр-R и Упр-W служат, соответственно, для чтения новой карты (повторение заново всего процесса ее построе- ния) и записи текущей карты (точнее, таблиц размещения, возможно, исправленных) обратно на диск. Выход в командный режим - Упр-К. 7. SPEEDUP - УСКОРЕНИЕ MFM-ДИСКОВОДОВ 7.1. Общие сведения Программа SPEEDUP позволяет изменить длительность задер- жки при перемещении головки дисковода в системном драйвере дисководов MFM-типа, т.е. ускорить это перемещение. Стан- дартная задержка подобрана в соответствии с технической до- кументацией на дисковод, однако, на практике она может быть уменьшена вдвое. Быстрый режим более благоприятен для дис- ковода. Программа работает автоматически, в режиме определения константы задержки опытным путем и в режиме установки за- данной константы. Первый позволяет подбирать константу для конкретного дисковода, второй - быстро устанавливать ее впоследствии. Программа может быть запущена в пакетном режиме. 7.2. Режим определения задержки опытным путем Для запуска программы в этом режиме достаточно запустить ее без параметров: SPEEDUP Подбор константы ведется путем уменьшения ее текущего значения (по стандарту - 50) с одновременным перемещением головки по диску - до тех, пока не начнутся сбои в кон- трольном чтении блока. Затем ведется более тщательное испы- тание найденной константы и выдается в качестве рекомендуе- мого ее значение с запасом +4. Испытания проводятся без ущерба для диска. 7.3. Режим установки заданной задержки Для установки произвольного значения программа вызывает- ся с параметром S во входной строке, например: SPEEDUP/S=18