Система разговорного монитора - Conversational Monitor System

Система разговорного монитора (CMS)
IBM logo.svg
Разработчик IBM
Первый выпуск 1967 ; 54 года назад ( 1967 )
Платформы IBM CP-40
Под влиянием Совместимая система разделения времени

Система Conversational Monitor ( CMS - первоначально: «Cambridge Monitor System») - это простая интерактивная однопользовательская операционная система . Изначально CMS была разработана как часть операционной системы IBM CP / CMS , которая была запущена в производство в 1967 году. CMS является частью семейства виртуальных машин IBM , которое работает на мэйнфреймах IBM . Впервые виртуальная машина была анонсирована в 1972 году и до сих пор используется как z / VM .

CMS работает в качестве «гостевой» операционной системы в частной виртуальной машине , созданной VM программы управления . Управляющая программа и CMS вместе создают многопользовательскую операционную систему с разделением времени.

История

CMS изначально разрабатывалась как часть операционной системы IBM CP / CMS . В то время аббревиатура означала «Cambridge Monitor System» (но также «Console Monitor System»).

  • CMS сначала работала под CP-40 , одноразовой исследовательской системой с использованием специального оборудования в Кембриджском научном центре IBM . Производственное использование в CSC началось в январе 1967 года. Пользовательский интерфейс CMS основывался на опыте работы с влиятельной системой разделения времени первого поколения CTSS , некоторые из разработчиков которой работали над CP / CMS . (CTSS использовалась как ранняя платформа разработки CP / CMS .)
  • Позже, в 1967 году, CP / CMS стала общедоступной в IBM System / 360 Model 67 , где, хотя новая программа управления CP-67 была существенной повторной реализацией CP-40 , CMS осталась практически такой же. IBM предоставила CP / CMS «как есть» - без какой-либо поддержки, в форме исходного кода, как часть библиотеки IBM Type-III . Таким образом, CP / CMS была системой с открытым исходным кодом . Несмотря на отсутствие поддержки со стороны IBM, CP / CMS добилась большого успеха в качестве платформы с разделением времени; к 1972 г. насчитывалось около 44 систем CP / CMS , включая коммерческие сайты, которые перепродавали доступ к CP / CMS .

В 1972 году IBM выпустила свою операционную систему VM / 370 , повторную реализацию CP / CMS для System / 370 , объявив о добавлении аппаратной виртуальной памяти в серию System / 370 . В отличие от CP / CMS , VM / 370 был поддержан IBM. Виртуальная машина прошла через серию версий и до сих пор используется как z / VM .

Несмотря на все свои различные версии и выпуски, платформа CMS оставалась довольно узнаваемой как близкий потомок исходной версии CMS, работающей под управлением CP-40 . Многие ключевые решения, связанные с пользовательским интерфейсом, знакомые сегодняшним пользователям, уже были приняты в 1965 году в рамках разработки CP-40 . Примеры см. В CMS под CP-40 .

И VM, и CP / CMS имели неоднозначную историю в IBM. VM не была одной из «стратегических» операционных систем IBM, которые были в первую очередь семействами ОС и DOS , и она страдала от политической борьбы IBM по поводу разделения времени по сравнению с целями пакетной обработки . Из-за этого конфликта CP / CMS изначально была выпущена как неподдерживаемая система и почему у VM часто были ограниченные ресурсы для разработки и поддержки в IBM. Исключительно сильное сообщество пользователей, впервые созданное в дни самоподдержки CP / CMS, но оставшееся активным после запуска виртуальной машины, внесло существенный вклад в операционную систему и смягчило трудности, связанные с запуском «другой операционной системы» IBM.

Архитектура

CMS является неотъемлемой частью архитектуры VM / CMS, созданной с помощью CP / CMS . Каждый пользователь CMS имеет контроль над частной виртуальной машиной - имитацией базового физического компьютера, на котором CMS работает как автономная операционная система. Этот подход оставался неизменным на протяжении многих лет и основан на:

  • Полная виртуализация , используемая для создания нескольких независимых виртуальных машин, каждая из которых полностью имитирует базовое оборудование.
  • Паравиртуализация , используемая для предоставления интерфейса гипервизора, который CMS использует для доступа к службам виртуальных машин; это реализуется невиртуализированной инструкцией DIAG (диагностика)

Более подробную информацию о том, как CMS взаимодействует со средой виртуальной машины, можно найти в статьях VM и CP / CMS .

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

Функции

CMS предоставляет пользователям среду для запуска приложений или пакетных заданий , управления файлами данных , создания и отладки приложений, выполнения кроссплатформенной разработки и взаимодействия с другими системами или пользователями.

CMS все еще находится в разработке и широко используется сегодня.

Базовая среда

Пользователи входят в виртуальную машину, предоставляя идентификатор пользователя и пароль, а затем загружают свою собственную виртуальную машину. Это можно сделать, выполнив команду «IPL CMS» («IPL» = начальная загрузка программы , традиционный жаргон IBM для загрузки машины); хотя обычно это делается автоматически для пользователя. Персональная настройка выполняется стандартным файлом сценария оболочки с именем «PROFILE EXEC», который устанавливает определенные пользователем параметры среды по умолчанию, например, к каким дискам и библиотекам осуществляется доступ.

Терминальная поддержка

CMS возникла в эпоху бумажных терминалов в стиле телетайпа и более поздних немых терминалов «стеклянного телетайпа» . К концу 1970-х, однако, большинство пользователей виртуальных машин подключались через полноэкранные терминалы - особенно IBM 3270 , вездесущий терминал обработки транзакций на мэйнфреймах IBM. 3270 сыграл стратегическую роль в линейке продуктов IBM, что сделало его выбор естественным выбором для крупных центров обработки данных того времени. Многие другие производители в конечном итоге предложили терминалы bisync, имитирующие протокол 3270.

3270-е имели локальное буферное хранилище, некоторые возможности обработки и обычно обрабатывали весь экран данных за раз. Они обрабатывали задачи редактирования локально, а затем передавали набор полей (или всю страницу) сразу при нажатии клавиши ENTER или функциональной клавиши программы (PFK).

Семейство 3270 включает «интеллектуальные» блоки управления, концентраторы и другие элементы сетевой обработки, которые обмениваются данными с мэйнфреймом по выделенным схемам на относительно высоких скоростях через протокол синхронной связи bisync . (Эти ориентированные на мэйнфреймы коммуникационные технологии предоставили некоторые из возможностей, которые считаются само собой разумеющимися в современных коммуникационных сетях, таких как адресация устройств, маршрутизация, исправление ошибок и поддержка различных конфигураций, таких как многоточечные и многоточечные топологии.)

Подход 3270 отличался от недорогих терминалов того периода, которые были двухточечными и асинхронными . Коммерческие пользователи с разделением времени , важный сегмент ранних сайтов CP / CMS и VM, полагались на такие устройства, потому что они могли подключаться через модемы со скоростью 300 или 1200 бит / с по обычным телефонным каналам голосового уровня. Установка выделенной цепи для 3270 часто была непрактичной, экономичной или своевременной.

Подход 3270, ориентированный на блоки, больше соответствовал подходу IBM к вычислениям, ориентированным на пакетную обработку и перфокарты, и был особенно важен для мэйнфреймов IBM того времени. В отличие от современных миникомпьютеров, большинство мэйнфреймов IBM не было оборудовано для посимвольных прерываний. Поддержка немого терминала полагалась на блоки управления терминалом, такие как IBM 270x (см. IBM 3705 ) или Memorex 1270. Эти асинхронные контроллеры терминала собирали строку символов до фиксированной максимальной длины, пока не была нажата клавиша RETURN. Ввод слишком большого количества символов приведет к ошибке - ситуации, знакомой пользователям сегодняшнего дня. (В большинстве центров обработки данных не было этого оборудования, за исключением случаев, когда это требовалось для коммутируемого доступа. Предпочтительным был подход 3270).

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

Возник пропасть между миром 3270, ориентированным на странично-ориентированную обработку транзакций мэйнфреймов (особенно через CICS ), и миром асинхронных терминалов, ориентированным на символьные мини-компьютеры и коммутируемое разделение времени. Производители асинхронных терминалов постепенно улучшали свои продукты, добавляя ряд функций интеллектуальных терминалов , доступ к которым обычно осуществляется через управляющие последовательности . Однако эти устройства редко конкурировали за 3270 пользователей; IBM сохранила свое доминирование при принятии решений о покупке оборудования для центров обработки данных мэйнфреймов.

Оглядываясь назад, можно заметить серьезные философские расхождения между блочно-ориентированными и символьными вычислениями. Как асинхронные терминальные контроллеры, так и 3270-е обеспечивали мэйнфрейм блочно-ориентированное взаимодействие - по сути, они сделали вход терминала похожим на устройство чтения карт. Этот подход, предпочитаемый IBM, привел к разработке совершенно иных парадигм пользовательского интерфейса и стратегий программирования. Системы, ориентированные на персонажей, развивались по-разному. Разница становится очевидной при сравнении подхода атомарных транзакций доминирующего CICS с интерактивным, ориентированным на поток стилем UNIX . VM / CMS эволюционировали где-то между этими крайностями. CMS имеет управляемую командами интерактивную среду с отслеживанием состояния , а не использует подход CICS для интерфейса, ориентированного на транзакции без сохранения состояния . Тем не менее, CMS реагирует на постраничное или построчное взаимодействие, а не на символьные прерывания.

Представление

CMS заработала очень хорошую репутацию благодаря своей эффективности и наличию хороших человеческих факторов для простоты использования по сравнению со стандартами того времени (и, конечно, до широкого использования сред графического пользовательского интерфейса , которые обычно используются сегодня). Было обычным делом иметь сотни (позже - тысячи) одновременных интерактивных пользователей CMS на одном мэйнфрейме виртуальной машины со временем отклика менее секунды для общих, «тривиальных» функций. VM / CMS неизменно превосходила MVS и другие операционные системы IBM с точки зрения поддержки одновременных интерактивных пользователей.

Программирование и основные приложения

Многие пользователи CMS программировали на таких языках, как COBOL , FORTRAN , PL / I , C / 370 , APL и язык сценариев REXX . VM / CMS часто использовалась в качестве платформы разработки для производственных систем, работающих под управлением других операционных систем IBM, таких как MVS .

Другие пользователи CMS работали с коммерческими программными пакетами, такими как FOCUS , NOMAD , SPSS и SAS .

В свое время CMS также была основной средой для электронной почты и повышения производительности офиса; важным продуктом был IBM PROFS (позже переименованный в OfficeVision ).

Два часто используемых инструмента CMS - это редактор XEDIT и язык программирования REXX . Оба этих продукта были перенесены на другие платформы и теперь широко используются за пределами среды мэйнфреймов.

Рекомендации

См. VM (операционная система) для источников, связанных с виртуальными машинами, и ссылок на источники.

Заметки

Смотрите также

Основные источники CP / CMS

Дополнительные источники CP / CMS

  • Р. Дж. Адэр, РУ Бейлс, Л. В. Комо и Р. Дж. Кризи, Система виртуальных машин для 360/40, Корпорация IBM, Отчет Кембриджского научного центра № 320-2007 (май 1966 г.)
    - основополагающий документ, описывающий реализацию концепции виртуальной машины, с описанием кастомизированного CSC S / 360-40 и дизайна CP-40
  • International Business Machines Corporation, CP-67 / CMS , программа 360D-05.2.005, IBM Program Information Department (июнь 1969 г.)
    - справочное руководство IBM
  • Р. А. Мейер и Л. Х. Сиврайт, "Система разделения времени виртуальной машины", IBM Systems Journal, Vol. 9, No. 3, pp. 199–218 (сентябрь 1970 г.)
    - описывает систему CP-67 / CMS, выделяя функции и приложения.
  • Р. П. Пармели, Т. И. Петерсон, К. К. Тиллман и Д. Хэтфилд, «Виртуальное хранилище и концепции виртуальных машин», IBM Systems Journal, Vol. 11, No. 2 (июнь 1972 г.)

Фоновые источники CP / CMS

  • FJ Corbató и др., Совместимая система разделения времени, Руководство программиста, MIT Press, 1963
  • FJ Corbató, M. Merwin-Daggett и RC Daley, "Экспериментальная система разделения времени", Proc. Весенняя объединенная компьютерная конференция (AFIPS) 21, стр. 335–44 (1962) - описание CTSS
  • FJ Corbató и В.А. Высоцкий, "Введение и обзор системы MULTICS", Proc. Fall Joint Computer Conference (AFIPS) 27, pp. 185–96 (1965).
  • П.Дж. Деннинг, «Виртуальная память», Computing Surveys Vol. 2. С. 153–89 (1970).
  • Дж. Б. Деннис, "Сегментация и проектирование многопрограммных компьютерных систем", JACM Vol. 12, pp. 589–602 (1965)
    - требования к виртуальной памяти для Project MAC, предназначенного для GE 645
  • К.А. Хоар и Р. Х. Перротт, редакторы, « Методы операционных систем» , Academic Press, Inc., Нью-Йорк (1972).
  • Т. Килберн, DBG Edwards, MJ Lanigan и FH Sumner, «Одноуровневая система хранения», IRE Trans. Электрон. Компьютеры EC-11, стр. 223–35 (1962)
    - Manchester / Ferranti Atlas
  • Р.А. Нельсон, «Картографические устройства и система обработки данных M44», Отчет об исследовании RC 1303 , Исследовательский центр IBM Thomas J. Watson (1964)
    - об IBM M44 / 44X
  • Р. П. Пармели, Т. И. Петерсон, К. К. Тиллман и Д. Хэтфилд, «Виртуальное хранилище и концепции виртуальных машин», IBM Systems Journal , Vol. 11. С. 99–130 (1972).

Дополнительные он-лайн ресурсы CP / CMS