С.Кононов

"ЛИнТех" представляет: Локальная сеть с IBM-совместной головной машиной NET-CP/M версия В-1.0.

В первом номере журнала "ИНФО" за 1993 г. в статье "Сетевая операционная система "NET-CP/М" версия А-1.0 была сделана попытка ознакомить пользователей КУВТ "Корвет" ("Форманта", "Нейва", "Орбита") с сетевой операционной системой (ОС). Из существующих на настоящий момент для данного класса компьютеров - ОС NET-CP/M А-1.0 - это одна из лучших разработок.

Основная цель создания ОС NET-CP/M А-1.0 - программно компенсировать отсутствие дисководов на рабочих местах учеников (далее будет применяться термин "терминал") посредством использования дисководов рабочего места преподавателя (далее будет использоваться термин "головная машина" - ГМ). При этом на терминале обеспечивалась работа в среде ОС, совместимой со стандартной ОС СР/М-80.

ОС NET-CP/M А-1.0 представляет собой программный комплекс, работающий без каких-либо переделок на стандартном оборудовании КУВТ. Несомненно, КУВТ "Корвет" является одним из самых надежных школьных классов на настоящий момент (кто не верит, пусть попробует сравнить его, скажем, с УКНЦ), компьютеры имеют мощные графические возможности, быстрый алфавитно-цифровой экран, гибкую архитектуру, под них написано достаточно большое количество программ.

При всем при этом есть три крупных недостатка КУВТ, отражающихся на работе сети в целом и не позволяющих создать действительно функционально мощную сетевую ОС. Прежде всего низкая физическая скорость обмена (19.5 кбит/с) не дает даже одному пользователю в сети производить пересылки относительно больших (к примеру, программа интенсивно использует оверлеи) объемов информации без риска заснуть около терминала. Ну, а для нескольких пользователей сети получится великолепный сюжет для кошмарного сна преподавателя информатики - к концу урока все ученики, наконец, загрузили свои машины. Если же все-таки удалось пропихнуть свою информацию в сеть, то там ждет вторая неприятность в лице низкопроизводительной головной машины - не торопясь она считает данные из сети, немножко отдохнет и, наконец, обратится за помощью к дисководам. Ну а все, что связано с дисководами,- это отдельная и очень грустная песня: если класс снабжен японскими дисководами, то в этом случае навредить может крайне ненадежный контроллер дисковода, ну, а если отечественное происхождение имеют и дисководы, то по отношению к пользователям более гуманно выкинуть весь КУВТ, нежели пытаться его использовать.

Резюме для вышесказанного - используя возможности стандартного оборудования КУВТ, обеспечить чисто программными средствами высокое быстродействие, надежность и функциональную полноту не представляется возможным. Необходим переход на качественно, более высокий уровень в аппаратном, и, как следствие, в программном обеспечении сетевых систем в этот переход был сделан...

В конце 1992 г. Лабораторией Информационных Технологий ("ЛИнТех") закончена разработка программно-аппаратного комплекса, представляющего собой качественно новый уровень развития сетевых систем. Были ликвидированы узкие места аппаратуры КУВТ, написана новая, функционально мощная сетевая операционная система NET-CP/M В-1.0, столь же похожая на ОС NET-CP/M А-1.0, как и калькулятор на IBM-PC.

Здесь уместно будет сказать, что ОС NET-СР/М В-1.0 разрабатывалась для применения в качестве дешевой общеучрежденческой локальной сети, что обусловливает изначально заложенные высокие технические требования к системе. В настоящее время готовятся программы автоматизации бухгалтерского и складского учета, учета кадров, информационно-справочная система, мощная обучающая система.

В качестве головной машины в ОС NET-CP/M В-1.0 используется IBM-PC/AT совместимая машина. В головную машину вставляется сетевой контроллер. К каждому терминалу через порт расширения подключается сетевой контроллер терминала. Всего в сети к одной головной машине IBM-PC может подключаться до 64 терминалов, а длина магистрального кабеля может составлять 1 км.

Сетевые контроллеры предназначены для повышения физической скорости передачи данных в канале и обеспечивают скорость 375 кбит/с, что почти в 20 раз выше скорости стандартной сети КУВТ. Для установки сети в школьном классе не требуется перемонтажа существующих линий связи - новая сеть работает на коммуникациях старой, что позволяет в случае необходимости (например, неисправность IBM-совместимой головной машины или сетевых контроллеров) вернуться в режим работы с ОС NET-CP/M А-1.0.

Итак, три основные проблемы аппаратуры КУВТ решены - высокая скорость обмена в сети обеспечивается сетевыми контроллерами, проблема производительности головной машины и надежности дисководов отпадает по определению - IBM-совместимые машины высокопроизводительны, винчестеры надежны, имеют большую емкость и скорость доступа к данным.

Тем не менее изменения р аппаратном обеспечении сети на самом деле отображают только вершину айсберга - на высокопроизводительном оборудовании можно разрабатывать и качественно более мощные программные системы. Исходя из этого принципа и создавалась ОС NET-CP/M В-1.0, которая представляет собой сетевую операционную систему с иерархической файловой структурой и системой резидентных команд практически полностью аналогичных операционной системе MS-DOS IBM-совместимых компьютеров. При этом сохранены все возможности и полная программная совместимость с ОС СР/М, что позволяет использовать все существующие для ОС СР/М программное обеспечение, но только существенно более эффективно.

Рамки журнальной статьи не позволяют подробно описать все возможности системы, поэтому для понимания используемых в ОС NET-CP/M В-1.0 базисных понятий ОС MS-DOS (например, понятие иерархической структуры каталогов) необходимо ознакомиться с соответствующей литературой по ОС MS-DOS, которой в настоящее время превеликое множество.

Итак, программное обеспечение (ПО) сети состоит из ПО головной машины и ПО терминала. В свою очередь ПО головной машины состоит из управляющей программы (монитора) головной машины и набора сервисных утилит по обслуживанию сети. ПО терминала состоит из управляющей программы (монитора) терминала, который в конечном итоге для пользователя и является той самой ОС, с которой он работает на терминале.

ПО головной машины подробно описано в фирменном руководстве по ОС и представляет интерес скорее для администратора сети, а не для пользователя, поэтому имеет смысл заострить внимание только на одном моменте - на понятии резидентности монитора ГМ. Монитор ГМ представляет собой основную программу, управляющую всеми режимами работы сети, исполняющую сетевые запросы с терминалов, обрабатывающую ошибки, и термин резидентности монитора ГМ означает, что на ней параллельно может работать и монитор ГМ в фоновом, незаметном для пользователя ГМ режиме и любая другая программа IBM-PC (например, игровая).

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

При работе в ОС NET-CP/M А-1.0 после включения питания автоматически производится загрузка монитора на терминал. При этом разграничение ресурсов производится по принципу сопоставления физического номера терминала и USER-подобласти рабочего диска. Естественно, что если несколько пользователей последовательно работают на одном и том же терминале и рабочая дискета не меняется, то все файловые операции производятся в одной и той же USER-подобласти диска. В современных сетевых системах такой принцип разграничения доступа недопустим.

В ОС NET-CP/M В-1.0 к основному принципу работы системы разграничения доступа относится соответствие имени и пароля пользователя, с одной стороны, и ресурсов головной машины - с другой. При этом сразу после включения питания терминала появляется запрос на ввод имени и пароля. После этого на ГМ производится проверка имени и пароля, и только в случае их корректности возможна регистрация терминала в системе.

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

Остановимся подробнее на каждой из трех фаз регистрации терминала в системе.

Всего на терминале пользователю доступно четыре диска <А, В, С, D>. Диск <А> соответствует электронному диску терминала, и он всегда доступен как на чтение, так и на запись. Три остальных диска сопоставляются с подкаталогами винчестера или флоппи-диска головной машины, определяемыми администратором сети в специальном файле регистрационной информации пользователей и могут быть защищены на запись или модификацию. Эти подкаталоги являются для пользователя терминала корневыми для данного диска.

Пересылка резидентной части монитора терминала на терминал, с точки зрения пользователя, выглядит просто как банальная загрузка ОС и пояснения не требует.

Третья фаза загрузки - исполнение стартовой последовательности команд состоит в запуске на терминале командного файла (аналогично запуску AUTOEXEC.BAT в системе MS-DOS) и исполнение заложенной в нем последовательности команд. При этом командный файл для каждого пользователя может быть своим и определяется администратором сети в файле регистрационной информации пользователей.

Поясним все вышесказанное на примере регистрации в системе трех пользователей - создателей системы NET-СР/М В-1.0 - Кононова С. В., Нужи В. В. и Авдюшина С. С.

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

Пусть структура каталога винчестера головной машины соответствует приведенной на рисунке.

В этом случае данные в файле регистрационной информации пользователей могут быть следующими:

для г-на Кононова

    Имя: Вождь
    Пароль: ЛИНТЕХ
    Стартовый файл: AUTO1.BAT
    Диск <В> - C:\NET\SYSTEM (нет доступа на запись)
    Диск <С> - C:\NET\USER0C (есть доступ на запись)
    Диск <D> - C:\NET\USER0D (есть доступ на запись);

для г-на Нужи

    Имя: Вася
    Пароль: А
    Стартовый файл: AUTO2.BAT
    Диск <В> - C:\NET\SYSTEM (нет доступа на запись)
    Диск <С> - C:\NET\USER1C (есть доступ на записи)
    Диск <D> - не определен (полностью заблокирован);

для г-на Авдюшина

    Имя: г-н Авдюшин 
    Пароль: Сергей Сергеевич 
    Стартовый файл: AUTO3.BAT 
    Диск <В> - C:\NET\SYSTEM (нет доступа на запись)
    Диск <С> - C:\NET\USER2C (есть доступ на запись)
    Диск <D> - не определен (полностью заблокирован).


    С:\ ------+--NET--+-- SYSTEM --+-- PASCAL
              |       |            |
              |       |            +-- BASIC
              |       |            |
              |       |            +-- ADA
              |       |            |
              |       |            +-- EDIT
              |       |            |
              |       |            +-- GAMES
              |       |
              |       +-- USER0C --+-- TEXT
              |       |            |
              |       |            +-- WORK
              |       |
              |       +-- USEROD------ PROGR
              |       |
              |       +-- USER1C --+-- SYS
              |       |            |
              |       |            +-- MAC
              |       |
              |       +-- USER2C --+-- CHR
              |       |            |
              |       |            +-- CAD
              |       |
             ...     ...
              |       |
              |       +-- PCAD
              |       |

Итак, г-н Кононов может с любого терминала, правильно введя имя и пароль и автоматически запустив при этом файл AUTO1.BAT, получить доступ к трем директориям винчестера головной машины и, естественно, ко всем подкаталогам и файлам, которые в нем находятся. При этом соответствие между диском <В> и подкаталогом C:\NET\SYSTEM для всех троих определено одинаково, диск защищен на запись и может содержать общеупотребительные программы, а диски <С, D> являются личными недоступными другим пользователям.

Как уже говорилось выше, система резидентных команд и механизм запуска командных (ВАТ)-файлов ОС NET-CP/M В-1.0 практически полностью соответствует стандарту ОС MS-DOS. Рамки журнальной статьи не позволяют подробно описать каждую из этих команд, поэтому желающим вновь рекомендую обратиться к литературе по MS-DOS, а здесь приведу только перечень команд:

В заключение уместно привести количественные показатели работы сети. При проведении тестов использовалась IBM-совместимая машина с тактовой частотой 16 МГц, винчестером 40 МБ/18 мс/6 мс, без сопроцессора, опрашивались 32 терминала, 1 был зарегистрирован.

Выполняемое действиеВремя исполнения в сети (с)
1.Регистрация в системе0.5
2.Запуск редактора "Микро-Мир"29
3.Запуск графического редактора "Акварель"2.7
4.Запуск графического редактора "Абрис"2.2
5.Запуск системы программирования "Express Pascal"2.9
6.Запуск системы программирования "Си": C8O.COM3.0
M80.COM1.8
L80.COM0.9
7.Запуск дискового варианта интерпретатора BASIC2.1
8.Удаление 20 файлов в текущей директории3.0
9.Копирование 200 Кбайт данных в режиме Хост-Хост через терминал в разные подкаталоги33.0

В таблице, в основном, приведены сроки исполнения наиболее емких по времени сетевых запросов. Простые запросы, например загрузка небольших программ (большинство игровых, почти все системные, сервисные), исполняются практически мгновенно в пределах 0.3-0.7 с.

Приобрести систему можно у фирмы "ЛИйТех", реклама которой постоянно появляется на страницах журнала "ИНФО", или у региональных дилеров, информацию о которых можно получить в вышеназванной фирме.

Р.S.: Исключительно любителям использовать ворованные копии программ посвящается... Система NET-CP/M А-1.0 защищена от копирования. При несанкционированном копировании и использовании подобных копий программ никаких грозных предупреждающих сообщений выдаваться не будет, правда, при этом и система работать нормально не будет - постоянные сообщения об ошибках аппаратуры, зависания программ и т. п.- все это в наказание за грабеж от фирмы "ЛИнТех".