Л.И. Брусиловский, А. В. Гаврючков, В.В. Скляров
ОСОБЕННОСТИ УСТАНОВКИ ПАКЕТА КЕ1Ш1Т ДЛЯ ПЕРЕДАЧИ ФАЙЛОВ В ОПЕРАЦИОННОЙ СРЕДЕ ЯТ-1 1
ПОСТАНОВКА ЗАДАЧИ
В автоматизированных системах научных исследований (АСНИ) важное место занимает управление экспериментом в реальном времени. В СССР широкое распространение в этой области получили микроЭВМ, программно совместимые с "Электро-никой-60", с операционными системами (ОС) реального времени типа [<1-1 I. Однако состав средств вычислительной техники (СВТ) в существующих АСНИ часто неоднороден [1]. В то же время в развитых системах автоматизации актуальна задача организации файлового обмена между ЭВМ. Для однородных машин вышеназванного класса файловый
обмен можно реализовать при помощи поставляемых в дистрибутивном наборе ОС ЯТ-1 I версии 5.1 и старше утилит УТСОМ и ТЯА^Р. Для неоднородных СВТ задача файлового обмена может быть просто и дешево решена при помощи пакета файлового обмена КЕИМИ. обеспечивающего безошибочную передачу символьных и двоичных файлов номерованными блоками под управлением протокола канального уровня по терминальным линиям связи [2,3]. Протокол KKR.MII был разработан и сопровождается в ряде университетов США [3]. В данной статье описан опыт установки пакета КЕКМ1Т (5-я редакция) на ЭВМ с ОС 1*1-11. Основные сведения о протоколе, описание типов передаваемых данных, топологии возможных соединений и сценарий проведения сеанса связи можно найти в [ 1 ].
ДВЕ ВЕРСИИ ПАКЕТА KERMIT ДЛЯ 0CRT-11
В дистрибутивном наборе 5-й редакции предлагаются две версии пакета. Первая написана на языке OMS1 Pascal, VI.2, вторая - на Масго-11. В состав наборов для каждой из версий входят исполняющиеся программы в хексометрическом формате (16-рич-ные значения для файла в образе памяти в кодах ASCII), исходные тексты, командные файлы компиляции и сборки исполняющихся программ из исходных текстов, вспомогательные инструкции и ряд сервисных программ.
УСТАНОВКА ВЕРСИИ KERMIT НА ЯЗЫКЕ PASCAL
Данную версию написал программист Philip Murton из университета города Торонто. В полном дистрибутивном пакете KERMIT она имеет префикс RT». Версия ориентирована только на RT-11 и включает в себя:
- поддержку обычных и модемных последовательных асинхронных интерфейсов;
- поддержку таймаутов.
В ней реализованы только базовые команды. Состав набора приведен в табл. 1. Разработка исполняющейся программы (KERMIT.SAV) предусмотре-
на как из исходных текстов, так и из файла в хексометрическом формате (KERMIT.HEX).
В первом случае (если в вашей RT-11 есть компилятор OMSI Pascal, VI.2) нужно выполнить следующие действия:
— отредактировать файл KLINE.PAS для настройки параметров линии связи ;
— отредактировать файл KTIME.PAS для настройки на таймер;
— выполнить командный файл KERMIT.COM для компиляции и сборки исполняющейся программы их исходных модулей;
— запустить на выполнение программу KERMIT.SAV.
Во втором случае (если в вашей RT-11 нет компилятора OMSI Pascal, VI.2) нужно:
— отредактировать командный файл INSTAL. СОМ для настройки параметров линии и таймера;
— выполнить командный файл INSTAL.COM. который загрузит при помощи программы LOAD файл KERMIT.HEX в память и при помощи системной утилиты SIPP произведет настройку параметров.
УСТАНОВКА ВЕРСИИ KERMIT НА ЯЗЫКЕ MACRO
Ассемблерную версию разработал программист Brain Nelson из Computer Services университета
Таблица 1
Дистрибутивный набор RT
Имя файла Длина в блоках Назначение файла
RTREAD.ME
RTKERM.COM
RTOPT.PAS
RTF. D.LOG
RTKERM.PAS
RTGLOB.PAS
RTKEXT.PAS
RTPROC.PAS
RTPAR.PAS
RTINIT.PAS
RTSEND.PAS
RTRECV.PAS
RTTIME.PAS
RTLINE.PAS
RTKERM.HEX
RTLOAD.MAC
RTINST.COM
RTHELP.HLP
RTREN.COM
Итого: 19 Files,
7 2 1 3
20 13 11 53 70 5
15 18
5
17 165
8 1
5
2
411 Blocks
Краткое описание версии RT Командный файл для компиляции и сборки Файл условий компиляции Заголовочный файл Основная программа KERMIT Модуль значений глобальных параметров Модуль значений внешних параметров Модуль определений внешних процедур Модуль—пересечение распознавания команд Модуль-пересечение команды INIT Модуль-пересечение команды SEND Модуль-пересечение команды RECEIVE Процедура управления таймером и консолью Процедура управления LD-11 Исполняющаяся программа в НЕХ-формате Программа загрузки НЕХ-файла в память Командный файл для настройки НЕХ-файла Справочный файл
Командный файл переименования набора RT
всех операций ввода-вывода использует системные запросы. Это позволяет использовать различные типы интерфейсов, но накладывает ряд особенностей на процесс генерации ОС.
ОСОБЕННОСТИ ГЕНЕРАЦИИ ОПЕРАЦИОННОЙ СИСТЕМЫ КТ-11
Генерация операционной системы !<Т-11 - это интерактивный процесс определения основных параметров системы. Начиная с 5-й версии процесс гене-
Таблица 2
Дистрибутивный набор К11
Имя файла Длина в блоках Назначение файла
К 1 1 AAA.AAA 8 Краткая информация о версии Kl 1
К11 RT4.COM 1 Командный файл для создания исполняющейся програм-
K11ART.DOC 23 мы Краткое описание протокола KERMIT
K11FIL.DOC 7 Описание набора Kl 1 для всех ОС PDP-11
К11INS.DOC 34 Инструкция по установке пакета Kl 1
K11HLP.HLP 99 Текст для полной справочной системы HELP
K11RT4.HEX 275 Исполняющаяся программа в НЕХ-формате
К 11 ART.RNO 20 Инструкции в формате RUNOFF
К 11HLP.RNO 94 То же
К11INS.RNO 29 — " —
К11 ATR.MAC 24 Модуль формирования атрибутов пакета
K11CDF.MAC 4 Модуль значений глобальных параметров
К 11CMD.MAC 87 Модуль распознавания команд
К11СОМ.МАС 12 Модуль ветвлений на различные команды
K1ICPY.MAC 19 Модуль команды COPY
К 1 1CVT.MAC 17 Модуль передачи атрибутов файла
К 1 1 DAT.MAC 10 Модуль ввода-вывода основных данных
К11 DEB.MAC 15 Модуль команды DISPLAY
К! 1DEF.MAC 4 Модуль определения типа пакета
К! 1DFH.MAC 6 Минимальная справочная система HELP
К11HLP.M AC 21 Модуль команды HELP
К 11 INI.MAC 29 Модуль инициализации перекрытий
K11LCL.MAC 17 Модуль определения локальных команд
Kl 1MAC.MAC 20 Файл макроопределений
К1 INHD.MAC 4 Модуль эмуляции команд SOB. ASH, MUL, DIV
К11 РАК.MAC 148 Модуль управления пакетами
К11 RTC.M AC 38 Модуль интерфейса к RT-11
К11 RTD.MAC 37 Модуль работы с каталогом RT-11
К 11 RTE.MAC 9 Модуль обработки кодов ошибок для RT-11
K11RTT.MAC 28 Модуль управления терминалом в RT-11
Kl 1RTU.MAC 24 Утилиты в/в для RT-1 1 (.DELETE, RENAME)
К11 RT4.MAC 53 Ввод-вывод с диска и системные примитивы RT-11
К 11SER.M AC 46 Модуль режима SERVER
К11SHO.M AC 21 Модуль команды SHOW
Kl 1STT.MAC 43 Модуль команды SET
Kl 1SUB.MAC 39 Утилиты, общие для всех версий Kl 1
K11TRA.MAC 7 Модуль команд передачи
К11HEX.FTN 8 Программа перекодировки из НЕХ-формата
K11ASM.RT4 1 Командный файл для ассемблирования
К1 ILNK.RT4 1 Командный файл для сборки с перекрытиями
Итого: 41 Files, 1382 Blocks
г. Толедо. В полном дистрибутивном наборе она имеет префикс К11*, а 5-й редакции пакета соответствует ревизия 2.17. В ней наиболее полно реализованы все возможности протокола KERM1T. в частности режим SERVER. Данная версия позволяет разрабатывать исполняющуюся программу KERMIT для следующих основных ОС: для RT-1 1 версии 4.0 и старше, RSTS/E версии 7.2 и старше, RSX-11 версии 4.0 и старше и RSX-11M PLUS версии 2.0 и старше. Набор данной версии описан в табл. 2. Программа KERMIT при работе с линией связи для
рации управляется процессором косвенных командных файлов IND. При генерации ОС RT-1 I для нормальной работы программы KERMIT необходимо:
- использовать FB- или ХМ-мониторы:
- задать многотерминальную систему, в которой адреса регистров состояния и векторов прерывания должны соответствовать адресам связного интерфейса. Тогда номер линии для связного интерфейса, заданный при генерации системы, будет соответствовать номеру текущей линии связи для программы KERMIT.
СОЗДАНИЕ ИСПОЛНЯЮЩЕЙСЯ ПРОГРАММЫ KERMIT.SAV
Как и в предыдущем варианте, дистрибутивный набор К11 для RT-11 содержит исполняющуюся программу (K11RT4.HEX) в хексометрическом формате и исходные тексты.
Для получения исполняющейся программы в SAV-формате из НЕХ-формата можно воспользоваться программой LOAD из RT-версии или перекодировщиком форматов K11HEX.FTN, который написан на языке FORTRAN-4 и поставляется в наборе К11.
Исполняющуюся программу в SAV-формате можно получить обычным образом из исходных текстов на ассемблере. В наборе К1 1 находится ко-
мандный файл K11RT4.COM. который выполняет сборку из отдельных модулей с заданными перекрытиями. Следует добавить, что полученную программу можно исполнять под RT-11 версии 4 и старше, но разрабатывать только под версией 5.0 и старше.
СРАВНЕНИЕ ВЕРСИЙ
Как уже отмечалось, паскалевский вариант программы KERMIT написан только для ОС RT-1 I. Его отличают простота реализации и сопровождения. В то же время он функционально ограничен, так как поддерживает только базовый набор команд протокола.
В варианте К11 реализован полный набор команд, в частности режим SERVER. Программное ядро данного варианта единое для всех основных систем: RT-1 1. RSX-II. RSX-11M PLUS, RSTS/E. Операции ввода-вывода выполняются через системные запросы, что дает возможность использовать все существующие типы связных интерфейсов и легко добавлять новые (через новые драйверы). Более того, такой подход при реализации позволяет применять пакет для работы с другими ОС, сохраняющими среду RT-11TSX PLUS.PA4>OC-2.SHARE ! 1.
ЛИТЕРАТУРА
1. Б русил ов ски й Л.И., Отливанчик Е.А. и др. Применение пакета файлового обмена KERMIT для взаимодействия традиционных систем автоматизации на базе разнородной вычислительной техники. - В сб.: Компьютерная оптика, вып. 2. Автоматизация проектирования и технологии. - М.: МИНТИ, 1987.
2. F г a n k da Cruz. Kermit Users Guide Fifth Edition. CUCCA. New York. 2 March 1984.
3. F r a n к da Cruz. Kermit Protocol Manual. Fifth Edition. CUCCA. New York. 3 April 1984