Современное
ПО для малых вычислительных комплексов на базе мини и микро-ЭВМ
реализующее широкий набор функций, требует большого объема внешних
запоминающих устройств, которого может не быть в некоторых
вычислительных комплексах или в их отдельных конфигурациях. Созадается
ситуация, когда ПО может функционировать на ЭВМ данной архитектуры, и в
то же время его нельзя использовать т.к. объем внешних запоминающих
устройств недостаточно для его хранения
Под ограничением объема внешних запоминающих устройств понимается любое условие влияющие на методы работы.
Единственный выход из этой ситуации — ограничить набор используемых функций ПО. Каждый делает это по своему и не всегда удачно.
Из опыта работы на различных вычислительных комплексах сформировались
некоторые методы, описанные ниже, позволяющие эффективно и надежно
работать в любой обстановке. В качестве примера выбрана операционная
система РАФОС-II, обладающая очень широкими функциональными
возможностями.
1.0 Методы работы на ДВК-2М
Диалоговый вычислительный комплекс ДВК-2М с января 1985 года
поставляется в комплекте с одним накопителем НГМД-6022, имеющи 2
привода емкостью по 220 кбайт. Комплекс в данной конфигурации
применялся для разработки программ на языке ПАСКАЛЬ и подготовки
документации. Минимальный объем ПО, необходимый для этих работ
составляет 335 КБайт или 670 блоков, что более чем в 1.5 раза превышает
объем накопителя.
Решением этой задачи явилось создание полностью автономного комплекта, состоящего из пяти дискет диаметром 133мм.
Из общего состава программ ОС было выделено ядро, которое было записано
на четыре дискеты в одинаковом порядке, таким образом, чтобы можно было
загружать ОС с любой дискеты. Так как ядро системы записывалось на одно
и то же место на всех дискетах, то дискеты на системном устройстве
можно было менять без перезагрузки ОС.
Далее на различные дисскеты были записаны программы, реализующие
отдельные функции, таким образом, чтобы минимизировать число
перестановок дисскет при работе. В результате были сформированы
варианты ОС для проведения различных видов работ. Их функции были
отражены в идентификаторах тома, чтобы можно было узнать какой вариант
ОС находиться в системном приводе.
Дискета №1
VOLUME ID : RT11SJ V50.00 OWNER : MACRO.PASCAL SWAP .SYS 26P 10-MAR-83 8 \ RT11SJ.SYS 73P 11-MAR-83 34 \ TT .SYS 2P 10-MAR-83 107 | DX .SYS 3P 06-FEB-84 109 | SL .SYS 13P 06-FEB-84 112 | LP .SYS 2P 10-MAR-83 125 | ЯДРО MX .SYS 10P 29-OCT-84 127 | СИСТЕМЫ PIP .SAV 29P 10-MAR-83 137 | DUP .SAV 45P 10-MAR-83 166 | DIR .SAV 19P 10-MAR-83 211 | DATIME.SAV 4P 10-JUL-86 230 / STARTS.COM 1P 10-JUL-86 234 / DUMP .SAV 8P 03-JAN-83 235 K52 .SAV 55P 29-MAR-84 243 MACRO .SAV 60P 06-FEB-84 298 PASCAL.SAV 52P 12-MAR-85 358 LIBR .SAV 24P 06-FEB-84 410 CREF .SAV 6P 19-APR-84 434 18 FILES, 432 BLOCKS
На данной данной дискете расположены трансляторы MACRO-11 и PASCAL,
экранный редактор K52, программы создания таблицы перекрестных ссылок и
библиотекарь. С помощью этой дисскеты можно проводить полный комплекс
работ по созданию исходных текстов программ на языках MACRO-11 и
PASCAL, а также модулей и библиотек.
Отсутствие на дисскете системной макро-библиотеки не вызывает особых
трудностей, так как она переписывается каждый раз с дискеты №3 на
рабочую дискету и указывается для транслятора как библиотека
пользователя. После окончания трансляции она может быть удалена.
Однако, если не предполагается разработка программ на языке PASCAL, то
вместо транслятора PASCAL можно записать системную макро-библиотеку
SYSMAC.SML.
Дискета №2
VOLUME ID : RT11SJ V50.00 OWNER : LINK.LIBRARY SWAP .SYS 26P 10-MAR-83 8 \ RT11SJ.SYS 73P 11-MAR-83 34 \ TT .SYS 2P 10-MAR-83 107 | DX .SYS 3P 06-FEB-84 109 | SL .SYS 13P 06-FEB-84 112 | LP .SYS 2P 10-MAR-83 125 | ЯДРО MX .SYS 10P 29-OCT-84 127 | СИСТЕМЫ PIP .SAV 29P 10-MAR-83 137 | DUP .SAV 45P 10-MAR-83 166 | DIR .SAV 19P 10-MAR-83 211 | DATIME.SAV 4P 10-JUL-86 230 / STARTS.COM 1P 10-JUL-86 234 / LINK .SAV 49P 06-FEB-84 235 PASCAL.OBJ 89P 13-FEB-85 284 SYSLIB.OBJ 113P 19-APR-84 373 ODT .OBJ 10P 19-APR-84 416 PATCH .SAV 9P 19-APR-84 426 LET .SAV 5P 06-FEB-84 435 18 FILES, 432 BLOCKS
Эта дискета содержит кроме программы LINK.SAV, системную объектную
библиотеку и объектную библиотеку языка PASCAL, а также отладчик ODT и
программу редактирования двоичных файлов PATCH. Таким образом с помощью
этой дискеты можно производить весь комплекс работ по созданию
загрузочных модулей из объектных файлов и отладке создаваемых программ.
Программа LET введена для изменения текстовых строк в драйвере SL.
Измененный драйвер можно переписать на другие дискеты.
Дискета №3
VOLUME ID : RT11SJ V50.00 OWNER : DOC SYSMAC SWAP .SYS 26P 10-MAR-83 8 \ RT11SJ.SYS 73P 11-MAR-83 34 \ TT .SYS 2P 10-MAR-83 107 | DX .SYS 3P 06-FEB-84 109 | SL .SYS 13P 06-FEB-84 112 | LP .SYS 2P 10-MAR-83 125 | ЯДРО MX .SYS 10P 29-OCT-84 127 | СИСТЕМЫ PIP .SAV 29P 10-MAR-83 137 | DUP .SAV 45P 10-MAR-83 166 | DIR .SAV 19P 10-MAR-83 211 | DATIME.SAV 4P 10-JUL-86 230 / STARTS.COM 1P 10-JUL-86 234 / K52 .SAV 65P 29-MAR-84 235 DOC .SAV 45P 10-SEP-84 290 SYSLIB.OBJ 43P 19-APR-84 335 PACK .SAV 6P 10-JUL-83 378 UNPACK.SAV 5P 10-JUL-83 384 LET .SAV 5P 06-FEB-84 389 SYSMAC.SML 45P 06-FEB-84 394 <UNUSED> 1 439 19 FILES, 431 BLOCKS 1 FREE BLOCKS
На этой дискете представлена система подготовки документации, которая
позволяет провести комплекс работ по подготовке документации. Программы
PACK и UNPACK позволяет уменьшить объем текстового файла примерно на
30-40%
Дискета №4 содержит сервисные программы для форматирования дискет,
редакторы двоичных и текстовых файлов, дизассемблер и дополнительные
драйверы, которые могут потребоваться при выполнении некторых программ.
Драйвер FS выполнение арифметических команд с плавающей точкой, драйвер
LT позволяет выводить на термопечатающее устройство символы верхнего и
нижнего регистров русского и латинского алфавитов.
Дискета №4
VOLUME ID : RT11SJ V50.00 OWNER : SERVICE ROUT SWAP .SYS 26P 10-MAR-83 8 \ RT11SJ.SYS 73P 11-MAR-83 34 \ TT .SYS 2P 10-MAR-83 107 | DX .SYS 3P 06-FEB-84 109 | SL .SYS 13P 06-FEB-84 112 | LP .SYS 2P 10-MAR-83 125 | ЯДРО MX .SYS 10P 29-OCT-84 127 | СИСТЕМЫ PIP .SAV 29P 10-MAR-83 137 | DUP .SAV 45P 10-MAR-83 166 | DIR .SAV 19P 10-MAR-83 211 | DATIME.SAV 4P 10-JUL-86 230 / STARTS.COM 1P 10-JUL-86 234 / DUMP .SAV 9P 21-MAY-85 235 RESORC.SAV 22P 06-FEB-84 244 BINCOM.SAV 24P 06-FEB-84 266 SRCCOM.SAV 26P 06-FEB-84 290 SLP .SAV 13P 06-FEB-84 346 SIPP .SAV 20P 06-FEB-84 329 DISASM.SAV 17P 10-JUL-84 349 LD .SYS 8P 06-FEB-84 366 FS .SYS 4P 21-MAY-85 374 LT .SYS 3P 21-MAY-85 378 MXTST .SAV 37P 30-DEC-84 381 <UNUSED> 22 418 19 FILES, 410 BLOCKS 22 FREE BLOCKS
Дискета №5 свободная и предназначена для временного содержимого других дискет при их форматировании.
Для обеспечения надежной работы необходимо следовать следующим правилам:
— системные дискеты желательно ставить всегда на тот привод, на котором
они формитированы. Лучше для этого использовать нижний привод в
НГМД-6022, так как температура в нем на 15-20 град. ниже.
— необходимо периодически (1 раз в 2-3 недели) форматировать дискеты на
приводе, который был принят в качестве системного. Второй привод при
этом считается рабочим.
Для форматирования всего комплекта дискет необходимо:
1) Установить дискету №5 на рабочий (0) привод и дискету №4 на системный (1) привод
2) вызвать программу форматирования дискет командой
--+-------- | MXTST<ВК>
и ответить на вопросы:
--+-------- | Выбор привода > 0 <ВК> | Команда : F <ВК> | Команда : K <ВК>
3) Инициализировать каталог командой:
--+-------- | INIT/BAD MXO:
4) Вынуть дискету N4 и на ее место поставить форматируемую дискету.
5) переписать ее содержимое на дискету N5 командой
--+-------- | COPY/VER/SLOW/SYS SY: MX0:
6) Переписать загрузчик монитора на дискету N5 командой:
--+-------- | COPY/BOOT MX0:RT11SJ MX0:
7) перезагрузить систему с MX0: командой:
--+-------- | BOOT MX0:
8) На привод MX1: поставить дискету N4 и вызвать программу форматирования командой:
--+-------- | RUN MX1:MXTST
и вынуть дискету.
9) На привод MX1 поставить форматируемую дискету и ответить на вопросы:
--+-------- | Выбор привода > 0 <ВК> | Команда : F <ВК> | Команда : K <ВК>
10) Инициализировать каталог форматируемой дискеты командой:
--+-------- | INIT/BAD/VOL MX1:
В качестве идентификатора тома в ответ на вопрос: "VOLUME ID" для всех дискет записывается: "RT11SJ V5.00".
В качестве имени владельца в ответ на вопрос "OWNER:" записывается:
для дискеты N1 — "MACRO.PASCAL"
для дискеты N2 — "LINK.LIBRARY"
для дискеты N3 — "DOC SYSMAC"
для дискеты N4 — "SERVICE ROUT"
11) Переписать загрузчик монитора на форматируемую дискету командой:
--+-------- | COPY/VER/SLOW/SYS SY: MX1:
12) Переписать загрузчик монитора на форматируемую дискету командой:
--+-------- | COPY/BOOT MX1:RT11SJ MX1:
13) Перезагрузить систему с MX1: командой:
--+-------- | BOOT MX1:
Для последующих дискет повторить все операции с 3 по 13.
Затраты времени на форматирование комплекта дискет около 2 часов.
Копирование содержимого одной дискеты на другую занимает 12 минут.
Время копирования можно уменьшить, исключив из команды копирования ключ
/SLOW, однако это может отрицательно сказаться на надежности копируемой
информации.
Данный комплект дискет находился в эксплуатации 1.5 года на разных ДВК,
при этом ни разу не потребовалось восстанавливать программы с
эталонного носителя.
2.0 Методы работы на ДВК-1 или "Электроника-60"
Вычислительные комплексы ДВК-1 и "Электроника-60" поставляются в
комплекте с одним накопителем ГМД-70 или ГМД-7012, которые имеют по два
привода емкостью 256 кбайт. При разработке программ на макроассемблере
трудностей не возникает, т.к. все необходимые программы, хоть и с
трудом, но влезают на одну одну сторону дискеты.
Однако, при разработке программ на языках высокого уровня — ФОРТРАН и
ПАСКАЛЬ — необходимо пользоваться таким же приемом, как и на ДВК-2М.
Пример дискеты для работы на ФОРТРАН-IV
Первая сторона:
VOLUME ID : RT11SJ V50.00 OWNER : FORTRA.COMPL SWAP .SYS 26P 10-MAR-83 8 \ RT11SJ.SYS 73P 11-MAR-83 34 \ TT .SYS 2P 10-MAR-83 107 | DX .SYS 3P 06-FEB-84 109 | SL .SYS 13P 06-FEB-84 112 | LP .SYS 2P 10-MAR-83 125 | ЯДРО MX .SYS 10P 29-OCT-84 127 | СИСТЕМЫ PIP .SAV 29P 10-MAR-83 137 | DUP .SAV 45P 10-MAR-83 166 | DIR .SAV 19P 10-MAR-83 211 | DATIME.SAV 4P 10-JUL-86 230 / STARTS.COM 1P 10-JUL-86 234 / K52 .SAV 65P 29-MAR-84 235 FORTRA.SAV 128P 31-DEC-81 290 MACRO .OBJ 60P 06-FEB-84 418 CREF .SAV 6P 10-JUL-83 478 16 FILES, 484 BLOCKS
Используя эту сторону можно разрабатывать программы на Фортране и
макроассемблере без каких-либо ограничений, однако системная
макробиблиотека должна быть записана на дискете пользователя.
Вторая сторона:
VOLUME ID : RT11SJ V50.00 OWNER : FORTRA.COMPL SWAP .SYS 26P 10-MAR-83 8 \ RT11SJ.SYS 73P 11-MAR-83 34 \ TT .SYS 2P 10-MAR-83 107 | DX .SYS 3P 06-FEB-84 109 | SL .SYS 13P 06-FEB-84 112 | LP .SYS 2P 10-MAR-83 125 | ЯДРО MX .SYS 10P 29-OCT-84 127 | СИСТЕМЫ PIP .SAV 29P 10-MAR-83 137 | DUP .SAV 45P 10-MAR-83 166 | DIR .SAV 19P 10-MAR-83 211 / LINK .SAV 49P 06-FEB-84 230 SYSLIB.OBJ 205P 31-DEC-81 279
12 FILES, 484 BLOCKS
На второй стороне записаны, кроме ядра системы, редактор связей LINK и
системная объектная библиотека, в состав которой включена объектная
библиотека Фортрана SYSF4.OBJ.
Загрузчик монитора системы может быть записан на обоих сторонах
дискеты, но при загрузке со второй стороны, ввиду отсутствия стартового
командного файла и программы установки даты, установку даты, времени и
параметров системы необходимо выполнить вручную.
При создании исходных текстов программы и их трансляции используется
первая сторона дискеты. Для получения загрузочных модулей дискета
переворачивается.
Данный вариант широко использовался при подготовке программ для
курсовых работ по курсу "Вычислительная техника в
инженерно-экономических расчетах" в МИЭТе. Однако для подготовки
документации использовался другой вариант системы.
Если предполагается разрабатывать программы только на языке ФОРТРАН, то
можно несколько изменить систему — вместо макроассемблера MACRO.SAV и
программы сбора таблицы перекрестных ссылок CREF.SAV на первой стороне
записать программу форматирования текстов DOC.SAV.
Работа в этом случае происходит следующим образом:
— вызвать программу DOC
--+-------- | RUN DOC<ВК>
— перевернуть дискету
— ввести спецификацию файла.
Это вызвано тем, что программа DOC при сборе оглавления обращается к
системной объектной библиотеке, которая должна быть на системной
дискете.
3.0 Методы работы на ЭВМ "Элетроника-60.1"
Вычислительные комплексы построенные на базе микро-ЭВМ МС1211 и МС1212, поставляются как правило в минимальном комплекте:
— один накопитель ГМД-7012
— одна плата ОЗУ 256 кбайт.
Наличие дополнительного ОЗУ, поддерживаемого диспетчером памяти,
максимальный обхем которого может достигать 4 Мбайт, позволяет
организовать белее эффективную работу, если использовать, имеющийся в
ФОДОС-II, драйвер виртуальной памяти VM.SYS. При этом ядро системы
переписывается в ОЗУ (устройство VM) и в дальнейшем необходимые функции
системы модифицируются с помощью командных файлов. Таким образом в
качестве системного используются два устройства: то, с которого
загружалась система и устройства VM.
Трудности организации такой системы, в том что необходимо привязать оба
устройства к командным файлам. Так как объем дискетыи устройства VM не
позволяют использовать программу IND.SAV, то заставить пользователя
указать устройство на котором стоит системная дискета, нельзя. Тогда
необходимо напомнить об этом пользователю.
Общая схема работы системы следующая:
— загрузка системы с дискеты со стороны 1. При этом стартовый командный
файл выполняет обычные установки параметров драйверов и даты. После
этого с системой можно работать обычным образом.
— Для переписи системы на устройство VM: используется командный файл VM.COM, который вызывается командной:
@SY:VM<ВК>
который должен выполнить следующие функции:
— инициализировать устройство VM0:, и создать на нем каталог.
— скопировать ядро системы на устройстве VM. Так как стартовый
командный файл для устройство VM находится первоначально на той же
дискете, что и стартовый командный файл для первой загрузки, то на
дискете записан файл STARTV.COM, который затем на устройстве VM
переименовывается в файл STARTS.COM.
— скопировать базовый набор функций системы. По умолчанию это экранный редактор и компилятор языка Паскаль.
— скопировать загрузчик монитора на устройство VM.
— перезагрузить систему с устройства VM.
После перезагрузки системы автоматически запускается стартовый
командный файл, который на дискете был назван STARTV.COM. Он выполняет
обычные установки параметров драйверов и обязательно должен
заканчиваться напоминанием в вводе имени устройства, на котором стоит
системная дискета. В качестве напоминания используется неполный ввод
команды, в результате чего монитор задает вопросы, на которые
пользователь должен ответить.
3.1 Содержание носителей и командные файлы
В качестве системного носителя используется дискета диаметром 203мм.
Причем на первой стороне записаны — ядро системы, экранный редактор
K52, трансляторы языков Паскаль и Macro-11, программа сбора таблицы
перекрестных ссылок. На второй стороне записаны программы для
макроассемблера (повторно), редактор связей LINK, объектные библиотеки,
программа форматирования текстов и интерпретатор языка Бейсик. Ниже
приведены каталоги обих сторон дискеты:
сторона 1:
VOLUME ID : RT11SJ V50.00 OWNER : LSI-11/23PLUS SWAP .SYS 26P 10-MAR-83 8 RT11SJ.SYS 73P 11-MAR-83 34 TT .SYS 2P 10-MAR-83 107 LP .sys 2P 10-MAR-83 109 DX .SYS 3P 06-FEB-84 111 MX .SYS 10P 29-OCT-84 114 VM .SYS 3P 06-FEB-84 124 SL .SYS 13P 06-FEB-84 127 PIP .SAV 29P 10-MAR-83 140 DUP .SAV 45P 10-MAR-83 169 DIR .SAV 19P 10-MAR-83 214 DUMP .SAV 9P 21-MAY-84 233 DATIME.SAV 4P 10-JUN-86 242 STARTS.COM 1P 07-FEB-86 246 STARTV.COM 1P 07-FEB-86 247 VM .COM 1P 07-FEB-86 248 K52 .SAV 55 29-MAR-84 249 PASCAL.SAV 52 12-MAR-85 304 K52 .COM 1P 07-FEB-86 356 MACRO .SAV 60 06-FEB-84 357 CREF .SAV 6 19-APR-84 417 SYSMAC.SML 45 06-FEB-84 423 MACRO .COM 1P 07-FEB-86 468 RESORC.SAV 22P 06-FEB-84 469 <UNUSED> 3 491 24 FILES, 483 BLOCKS 3 FREE BLOCKS
сторона 2:
VOLUME ID : RT11SJ V50.00 OWNER : LSI-11/23PLUS LINK .SAV 49 06-FEB-84 8 PASCAL.SAV 89 13-FEB-85 57 SYSLIB.OBJ 47 06-FEB-84 146 ODT .OBJ 10 19-APR-84 193 PATCH .SAV 9 19-APR-84 203 LET .SAV 5 06-FEB-84 212 DOC .SAV 45 10-SEP-84 217 PACK .SAV 6 10-JUL-83 262 UNPACK.SAV 5 10-JUL-83 268 LIBR .SAV 24 06-FEB-84 273 MACRO .SAV 60 06-FEB-84 297 SYSMAC.SML 45 06-FEB-84 357 CREF .SAV 6 19-APR-84 402 BASIC .SAV 56 31-DEC-82 408 DOC .COM 1P 07-FEB-86 464 MACRO .COM 1P 07-FEB-86 465 LINK .COM 1P 07-FEB-86 466 SIPP .SAV 20 06-FEB-84 467 <UNUSED> 7 487 18 FILES, 479 BLOCKS 7 FREE BLOCKS
Итак, при загруске системы с первой стороны автоматически запускается
стартовый командный файл STARTS.COM, содержащий стледующие команды:
SET TT QUIET ! отказ от вывода на экран SET TT SCOPE ! в качестве терминала использвоать дисплей SET LP LC ! разрешить нижний регистр при печати SET SL ON ! включить SL-драйвер R SY:DATIME ! вызвать программу установки даты
После этого можно выполнять работы по созданию текстов, трансляции с
языков Pascal и MACRO-11. Для расширения функций систему необходимо
преобразовать. Для этого используется командный файл VM.COM, содержащий
следующие команды:
SET TT QUIET ! отказ от вывода на экран INI/VOL/NOQ VM: RT11SJ V5.00 VIRT.MEMORY
! копирование системных файлов на устройство VM: COP/VER/SLOW/SYS/NOLOG SY:.SYS VM: ! копирование ядра системы на устройство VM: COP/VER/SLOW/NOLOG SY:(PIP,DUP,DIR,DUMP,STARTV) VM: ! копирование базового набора функций COP/VER/SLOW/NOLOG SY:(K52.SAV,PASCAL.SAV,LET.SAV) VM: ! переименование стартового командного файла REN VM:STARTV.COM VM:STARTS.COM ! копирование загрузчика системы COPY/BOOT VM:RT11SJ VM: ! перезагрузка системы BOOT VM:
При перезагрузке системы выполняется новый стартовый командный файл,
уже на устройстве VM:, содержащий такие же команды, как и предыдущий,
но с указанием устройства, на котором стоит системная дискета:
SET TT QUIET ! отказ от вывода на экран SET TT SCOPE ! в качестве терминала использовать дисплей SET LP LC ! разрешить нижний регистр при печати SET SL ON ! включить SL-драйвер ASSIGN
Именно незаконченная команда ASSIGN вызывает подсказку для
пользователя, в ответ на которую необходимо ввести имя устройства, на
котором стоит системная дискета:
--+-------- | DEVICE NAME: DX1:<ВК>
и в ответ на второй вопрос необходимо ввести логическое имя этого устройства — SYS.
--+-------- | LOGICAL NAME: SYS<ВК>
В результате чего физическому устройству DX1:, на котором стоит
системная дискета будет присвоено логическое имя SYS. В дальнейшем это
логическое имя будут использовать командные файлы для модификации
системы.
Еще одна трудность заключается в том, что командные файлы должны будут
удалять с устройства SY: файлы, спецификации которых неизвестны, так
как неизвестна предыдущая конфигурация системы. Необходимо только
оставить на устройстве SY: ядро системы. Выход оказался простой —
файлы, которые необходимо оставлять всегда защищаются функцией
/PROTECT.
Кроме того, необходимо было не прерывать выполнение командного файла и
в случае отсутствия незащищенных файлов. Таким образом командные файлы
для модификации системы имеют следующий вид (например, K52.COM):
SET TT QUIET ! отказ от вывода на экран SET ERROR NONE DEL/NOQ/NOPRO SY: SET ERROR ERROR COP/VER/SLOW/NOLOG SYS:(K52,PASCAL,LET).SAV SY:
Остальные командные файлы строяться подобным образом.
В результате изменить конфигурацию системы можно одной командой.
|