RSTS/E
RSTS/E (Resource Sharing Timesharing System/Extended) — это многопользовательская операционная система с разделением времени, разработанная корпорацией Digital Equipment Corporation (DEC) для мини-компьютеров серии PDP-11. Система была создана в 1970 году и предназначалась для обеспечения одновременной работы нескольких пользователей в интерактивном режиме, а также для выполнения пакетных задач. RSTS/E получила широкое распространение в образовательных учреждениях, научных и инженерных организациях, а также в системах автоматизации и управления.
История
Разработка и ранние версии
Разработка RSTS началась в 1970 году под руководством инженеров DEC, включая Энди Хеллера и Дэвида Кейса. Первая версия, RSTS-11, была выпущена в 1971 году для компьютеров PDP-11/20 и PDP-11/40. Система базировалась на более ранней операционной системе RSTS, созданной для PDP-8, но была полностью переработана для 16-битной архитектуры PDP-11. В 1972 году вышла версия RSTS/E, которая добавила поддержку расширенной памяти (до 256 КБ) и улучшенную файловую систему.
Эволюция и распространение
В 1970-х годах RSTS/E стала одной из самых популярных операционных систем для PDP-11. Она поддерживала до 63 одновременных пользователей (в зависимости от конфигурации) и использовала язык программирования BASIC-PLUS (расширение BASIC) как основную среду разработки. В 1975 году вышла версия 6B, которая включила поддержку дисков с большей ёмкостью и сетевых протоколов. К 1980 году RSTS/E была установлена на тысячах систем по всему миру, включая университеты, исследовательские центры и промышленные предприятия.
Закат и наследие
С появлением более мощных 32-битных систем, таких как VAX/VMS, популярность RSTS/E начала снижаться. Последняя версия, RSTS/E 10.1, была выпущена в 1992 году. В 1994 году DEC объявила о прекращении поддержки системы. Тем не менее, RSTS/E продолжала использоваться на устаревшем оборудовании вплоть до 2000-х годов. Её наследие включает влияние на разработку последующих операционных систем, особенно в области многопользовательской работы и интерактивного программирования.
Архитектура и основные характеристики
Ядро и управление памятью
RSTS/E имела монолитное ядро, которое управляло процессами, памятью и вводом-выводом. Система поддерживала сегментированную память с использованием аппаратных средств PDP-11. Каждый пользовательский процесс получал до 64 КБ адресного пространства, разделённого на сегменты (коды, данные, стек). Для расширения памяти использовалась технология «overlay» (наложение сегментов), что позволяло запускать программы, превышающие доступную физическую память.
Файловая система
Файловая система RSTS/E была иерархической, с поддержкой каталогов и файлов. Основной единицей хранения был блок размером 512 байт. Файлы могли быть последовательными или с прямым доступом. Система поддерживала тома (диски) до 2 ГБ (в поздних версиях). Для управления дисковым пространством использовалась таблица распределения файлов (FAT).
Многопользовательская работа
RSTS/E обеспечивала разделение времени через циклическое планирование (round-robin). Каждому пользователю выделялся квант времени (обычно 100 мс). Система поддерживала до 63 терминалов, подключённых через последовательные интерфейсы. Пользователи могли работать в интерактивном режиме, запускать фоновые задачи и обмениваться данными через общие файлы.
Командная оболочка и языки программирования
Командный интерпретатор
Основным интерфейсом пользователя был командный интерпретатор CCL (Command Console Language). Он поддерживал команды для управления файлами (COPY, DELETE, RENAME), запуска программ (RUN), работы с терминалами (SET TERMINAL) и управления процессами (KILL, SUSPEND). Команды могли быть объединены в скрипты (файлы с расширением .CMD).
BASIC-PLUS
Главным языком программирования в RSTS/E был BASIC-PLUS — расширение языка BASIC, разработанное DEC. Он включал поддержку строковых операций, файлового ввода-вывода, матричных вычислений и структур данных. BASIC-PLUS был популярен в образовательных учреждениях благодаря своей простоте и интерактивности. Программы на BASIC-PLUS компилировались в промежуточный код (P-код), который выполнялся интерпретатором.
Другие языки
RSTS/E поддерживала и другие языки, включая:
- FORTRAN IV — для научных и инженерных расчётов.
- COBOL — для деловых приложений.
- MACRO-11 — ассемблер для PDP-11.
- C (в поздних версиях) — для системного программирования.
Применение
Образование
RSTS/E широко использовалась в университетах и школах для обучения программированию и информатике. Система позволяла десяткам студентов одновременно работать на одном компьютере, что снижало затраты на оборудование. Многие учебные заведения, включая Массачусетский технологический институт (MIT) и Стэнфордский университет, использовали RSTS/E в 1970–1980-х годах.
Научные и инженерные расчёты
В научных и инженерных организациях RSTS/E применялась для моделирования, обработки данных и автоматизации экспериментов. Система поддерживала работу с графическими терминалами и плоттерами, что позволяло визуализировать результаты.
Промышленность и автоматизация
RSTS/E использовалась в системах управления производством, сбора данных и тестирования оборудования. Например, на заводах DEC система управляла процессами сборки и контроля качества.
Сравнение с другими операционными системами
RSTS/E vs RT-11
RT-11 была однопользовательской операционной системой реального времени для PDP-11. В отличие от неё, RSTS/E была многопользовательской и ориентированной на разделение времени. RT-11 обеспечивала более низкую задержку, но RSTS/E позволяла одновременно работать нескольким пользователям.
RSTS/E vs Unix
Unix (разработанная в Bell Labs) была более портативной и поддерживала многозадачность с вытеснением. RSTS/E была более простой в настройке и использовании, но менее гибкой. Unix также имела более мощную файловую систему и командную оболочку. Тем не менее, RSTS/E оставалась популярной в среде BASIC-программистов.
Интересные факты
- RSTS/E была одной из первых операционных систем, поддерживающих «виртуальные терминалы» — возможность запуска нескольких сессий на одном физическом терминале.
- Система имела встроенную поддержку игр, таких как «Star Trek» и «Adventure», что способствовало её популярности среди студентов.
- Код RSTS/E был написан на ассемблере MACRO-11, что делало его трудно переносимым на другие архитектуры.
- В 1980-х годах DEC выпустила версию RSTS/E для компьютеров PDP-11/70, которая поддерживала до 2 МБ физической памяти.
Источники
- Digital Equipment Corporation. RSTS/E System User's Guide. DEC, 1976.
- Digital Equipment Corporation. RSTS/E System Manager's Guide. DEC, 1980.
- Bell, C. Gordon, et al. Computer Engineering: A DEC View of Hardware Systems Design. Digital Press, 1982.
- Levy, Henry M. Capability-Based Computer Systems. Digital Press, 1984.
- Ceruzzi, Paul E. A History of Modern Computing. MIT Press, 2003.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →