Операционная система реального времени BOS-1810
П. Кюльборн, инженер (ГДР)
BOS-1810 – мультизадачная система реального времени, предназначенная для ППЭВМ СМ1910. Ее можно применять как специфическую для области применения операционную систему и как систему для разработки программного обеспечения.
Операционная система BOS-1810 требует, чтобы в конфигурации ППЭВМ как минимум были процессор К1810ВМ86, программируемый блок управления прерываниями K580WN59A, программируемый датчик интервалов времени К-580 WI53 и оперативная память емкостью 16 Кбайт.
Структура исполнительной программы BOS-1810 допускает ее расширение драйверами периферийных устройств, специфических для условий применения. Для ряда устройств, необходимых, в частности, для разработки программного обеспечения, BOS–1810 уже располагает соответствующими драйверами. Ниже приведены периферийные устройства ППЭВМ СМ1910 (Роботрон А 7100), с которыми может работать система BOS-1810.
Дисководы накопителя на гибком минидиске (макс. 4 дисковода, две стороны, 80 дорожек) | Роботрон К 5600. 20 (СМ5640) |
Накопитель на несменном диске с подвижными головками (диаметр 133 мм, емкость 30–50 Мбайт) | Роботрон К 5504 (СМ5505) |
Блок управления алфавитно-цифровым монитором | Роботрон К 7071 |
Блок управления графическим монитором | Роботрон К 7075 |
Клавиатура | Роботрон К 7672 |
Последовательное печатающее устройство (через интерфейс "центроникс") | Роботрон К 6313 (СМ6329. 01М) или Роботрон К 6314 (СМ6329. 02М) |
Последовательное печатающее устройство (через ИРПС и ИРПР блока управления периферийными устройствами) | Роботрон К 1152 (СМ6317) |
Терминал (монитор, клавиатура) | Роботрон К 8911 (СМ1608) |
Альтернативно по отношению к дисплею и клавиатуре можно подключить один пульт управления СМ 1608.
BOS-1810 представляет собой модульную операционную систему, состоящую из исполнительной программы, сервисных программ, трансляторов и/или интерпретаторов.
Исполнительная программа состоит из нескольких используемых по выбору подсистем. В рамках подсистем пользователь может выбирать необходимые ему услуги и задавать такую конфигурацию исполнительной программе, которая оптимально соответствовала бы конкретным условиям применения.
BOS-1810 обеспечивает одновременный контроль независимых внешних событий и управление ими, дает возможность управлять большим количеством устройств ввода-вывода и внешних накопителей, готовит для оператора эффективные и гибкие средства наблюдения за поведением системы и ее изменением, позволяет применять трансляторы и другие вспомогательные средства разработки программ.
Рассмотрим системную архитектуру, организацию ввода-вывода, адаптацию к пользователю и вспомогательные средства BOS-1810.
Системная архитектура. Различают следующие типы объектов: задачи, задания, почтовые ящики, семафор, сегменты, соединения и др. (они могут быть образованы и определены пользователем).
BOS-1810 создает системные вызовы, с помощью которых пользователь может манипулировать в своей программе объектами, например CREATE, MAILBOX, DELETE MAILBOX. Объекты всех типов обладают специальными характеристиками, для обращения к которым существуют системные вызовы. BOS-1810 работает в мультизадачном режиме, закрепляя за каждым событием задачу по обработке. Это позволяет логично и просто реагировать на внешние асинхронные события.
Мультизадачный режим и обработка прерываний тесно связаны между собой. Способность технических средств к прерываниям и обработка прерываний позволяют эффективно управлять процессом в реальном времени. Способные к прерываниям системы можно легко расширять, закрепляя за новыми источниками прерываний задачи по обработке прерываний. BOS-1810 обеспечивает приоритетное управление выполнением задач, при котором каждой задаче сообщается ее приоритет. При одновременном возникновении нескольких прерываний активизируется задача, имеющая высший приоритет, а прерванная задача с более низким приоритетом ожидает окончания задачи, имеющей более высокий приоритет. Благодаря структуре BOS-1810, ориентированной на объекты, создаются условия для мультипрограммирования, а в независимых областях применения создается собственная программная среда с помощью объекта типа JOB. Система BOS-1810 обладает эффективными средствами для координации выполнения задач: обеспечивается обмен информацией между задачами, взаимное исключение задач при обращении за информацией, которая синхронизирует ход выполнения задач. Кроме того, структура BOS-1810 создает удобные возможности для расширения системы.
Организация ввода-вывода. В связи с тем, что различные области применения требуют разных характеристик ввода-вывода, BOS-1810 снабжена двумя системами ввода-вывода, которыми можно пользоваться альтернативно или в их сочетании.
Базисная система ввода-вывода образует низкий уровень организации ввода-вывода. Ее преимущество состоит в том, что пользователь может непосредственно обращаться к операциям ввода-вывода, хотя это требует более глубоких знаний системы. Расширенной системой ввода-вывода пользоваться легче: она освобождает специалиста от необходимости формулировать подробные задания и указывать параметры. Эта система объективно обеспечивает (например, с помощью "опережающего" считывания и записи) последовательные операции ввода-вывода и реализует автоматическую буферизацию ввода-вывода. Не зависящие от устройств вызовы ввода-вывода READ и WRITE дают возможность пользовательским программам легко реализовать ввод-вывод. Устройство определяется одним из параметров вызова. Благодаря использованию переменной в качестве параметра устройства можно выполнять процедуры ввода-вывода, совершенно не зависящие от устройств.
BOS-1810 обеспечивает иерархическое поименование файлов в памяти большой емкости. Это упрощает организацию присвоения имен файлам и повышает гибкость системы. Расширять состав файлов для новых областей применения можно независимо от прежних имен файлов. Управление доступом к файлам позволяет работать с файлами, имеющими иерархическую организацию имен. Владелец файлов может определить права доступа к его файлам и реализовать таким образом их защиту. С помощью управления разделением файлов, т. е. определения размеров блоков каждого файла в памяти большой емкости, пользователь в состоянии управлять временем обращения к файлам и емкостью памяти.
При компоновке системы пользователь может выбрать драйверы устройств, предоставляемые BOS-1810, или составить собственные драйверы и включить их в систему.
С помощью вспомогательного кода терминала BOS-1810 можно создавать программируемый интерфейс между системой ввода-вывода и драйвером терминала. В результате, с одной стороны, обеспечивается определенная независимость терминала, позволяющая подключать практически терминалы всех типов, с другой стороны, пользователь получает возможность программировать для специальных символов и символов управления специальные виды обработки.
Адаптация к пользователю. Система BOS-1810 предоставляет пользователю широкие возможности для оптимальной адаптации системы к его условиям. Связь между человеком и машиной реализуется с помощью интерактивных команд пользователя. Каждая команда интерпретируется как имя программы; файл программ хранится в памяти большой емкости. Пользователь в состоянии без изменения системы модифицировать существующие команды и/или добавлять собственные. Кроме того, BOS-1810 предоставляет в распоряжение пользователя интерпретатор командных строк, помогающий пользователю при приеме параметров и их интерпретации. Под управлением BOS-1810 из внешних накопителей допускается загрузка прикладного программного обеспечения. Большие программы можно разбивать на сегменты. Загрузочная программа BOS-1810 обеспечивает загрузку этих программных сегментов (с оверлейной структурой), в связи с чем в основной памяти не требуется хранить одновременно всю программу. Благодаря привязке к времени выполнения система BOS-1810 создает возможность динамической модификации системы. Предусмотрены три вида привязки ко времени выполнения: привязки объектов к задаче, файлов и устройств – к задаче, прикладного программного обеспечения – к BOS-1810.
Обработка ошибок обязательна для управления процессом. BOS-1810 предусматривает автоматическую обработку ошибок, в ходе которой предпринимается попытка устранить ошибку путем исключения из обработки задачи, содержащей ошибку, информирования оператора или игнорирования ошибки. Каждый системный вызов информирует о ходе своего выполнения в коде возврата, поэтому пользователь может реализовать в своей программе собственную обработку ошибок.
BOS-1810 обеспечивает динамическое распределение памяти, чем достигается эффективное использование ее емкости.
Вспомогательные средства. Вместе с системой BOS-1810 поставляется набор вспомогательных средств для разработки программ, присутствующий постоянно -или только в случае разработки прикладного программного обеспечения.
Программа отладки Debugger, ориентированная на объекты, значительно упрощает процесс поиска ошибок в мультизадачной среде. Она обеспечивает отладку нескольких задач, в то время как остальная система продолжает работать в реальном времени, показывает, какие задачи или объекты находятся в очередях "почтовых ящиков" и "семафоров", и обеспечивает контроль за связью между задачами.
В комплект поставки BOS-1810 входит работоспособная базисная система, которой можно пользоваться в качестве начальной во многих случаях применения. Благодаря модификации файла, предназначенного для создания базисной системы, можно легко разработать специфические для областей применения системы.
Прикладное программное обеспечение можно разработать на ведущей ЭВМ (система разработки программ), после чего использовать на подчиненной ЭВМ. Благодаря средствам разработки программ, которыми располагает BOS-1810, подчиненная ЭВМ может также выполнять функции системы разработки программ. BOS-1810 включает интерактивную систему создания конфигураций, которая с помощью меню руководит пользователем в процессе создания им конфигураций с целью адаптации исполнительной программы к требованиям пользовательской системы. В результате интерактивного определения конфигурации получают файл конфигурации, с помощью которого можно повторить создания конфигурации системы. Этим файлом можно воспользоваться как базой для модификаций. Ядро, как основной элемент BOS-1810, должно быть составной частью всех пользовательских систем, разработанных на базе BOS-1810. К числу свободно выбираемых компонентов, которые не обязательно должны входить в состав пользовательской системы, относятся система ввода-вывода, связь с оператором, прикладной загрузчик, программа отладки и блок управления терминалом. Для копирования и изменения имен файлов, получения и вывода файлов оглавлений, задания форматов НГМД и др. система BOS-1810 располагает рядом программ ведения файлов.
Сервисные программы. Кроме вспомогательных средств разработки программ, подчиненных исполнительной программе, в состав BOS-1810 входят следующие сервисные программы: редактор связей, библиотечная программа, редактор строк и редактор, ориентированный на применение дисплея, программа подготовки перекрестных ссылок, программа преобразования шестнадцатиричного кода, библиотеки объектных программ для выполнения арифметических операций.
Для работы в среде BOS-1810 разработаны системы программирования ассемблер ASM86, ПЛМ86, Фортран 77, служащие для системного и прикладного программирования решения научно-технических и экологических задач.
Статья опубликована в сборнике "Вычислительная техника социалистических стран", вып. 24, Москва, "Финансы и статистика", 1988 г., стр. 185.