Оглавление
- 1 Компания Burroughs MCP.
- 1.1 История MCP
- 1.2 Особенности MCP
- 1.3 Файловая система MCP
- 1.4 Управление процессами
- 1.5 Команды и записи
- 1.6 Ожидание и восстановление
- 1.7 Обработка ошибок
- 1.8 Атрибуты задач
- 1.9 Управление памятью
- 1.10 Безопасность и процессы
- 1.11 Библиотеки MCP
- 1.12 Динамическая реализация COBOL rununits
- 1.13 Доступ к библиотекам
- 1.14 Библиотеки подключений
- 1.15 Файлы портов
- 1.16 Операционная среда MCP
- 1.17 Регистрация событий
- 1.18 Диагностические инструменты
- 1.19 Инновации в MCP
- 1.20 Открытые инновации
- 1.21 Компиляторы
- 1.22 Ассемблер
- 1.23 Резюме
- 1.24 Полный текст статьи:
- 2 Берроуз MCP
Компания Burroughs MCP.
-
История MCP
- MCP была первой операционной системой, написанной на языке высокого уровня (HLL) в 1961 году.
- В 1970-х годах MCP была преобразована в NEWP, более структурированную и безопасную форму ESPOL.
- MCP была лидером в управлении несколькими процессорами, виртуальной памяти и написании на HLL.
-
Особенности MCP
- MCP была первой коммерческой операционной системой с виртуальной памятью.
- MCP использовала архитектуру, основанную на стеке, что отличало её от других систем.
- Дональд Кнут использовал MCP в своей книге “Фундаментальные алгоритмы”.
-
Файловая система MCP
- MCP использовала иерархическую структуру каталогов, но с 1970 года перешла на “ПЛОСКИЙ” каталог.
- Файлы хранятся на именованных томах, которые могут быть объединены и зеркалированы.
- Файлы имеют атрибуты, такие как имя, тип, размер записи и другие.
- Файловая система обеспечивает отказоустойчивость и не чувствительна к регистру.
-
Управление процессами
- Процессы MCP называются “заданиями” и “Tasks”.
- Задания могут выполняться последовательно или параллельно, используя язык управления заданиями MCP WFL.
- Процессы проходят жизненный цикл от “Поставлено в очередь” до “Завершено”.
- Процессам присваивается приоритет, который зависит от типа задачи.
- Процессы могут ожидать ресурсы, такие как чтение файла, через события.
- Завершившиеся процессы помечаются как завершенные.
-
Команды и записи
- Команда DS используется для завершения задач.
- Задачи могут завершаться из-за программных сбоев.
- Завершенные записи можно перечислить с помощью команды “C”.
- Ожидающие задачи можно перечислить с помощью команды “W”.
-
Ожидание и восстановление
- Задачи могут ожидать ввода данных оператором или чтения файлов.
- Оператор может скопировать файл или перенаправить задачу.
- MCP обеспечивает восстановимость задач оператором.
-
Обработка ошибок
- Оператор “ВКЛЮЧЕНО” позволяет обрабатывать ошибки.
- Оператор “try” позволяет восстанавливать ошибки.
- MCP обеспечивает отказоустойчивую среду.
-
Атрибуты задач
- Задачи имеют атрибуты, такие как приоритет и процессорное время.
- Родительская задача доступна программно.
-
Управление памятью
- GETSPACE и FORGETSPACE управляют выделением и освобождением памяти.
- Память может быть резидентной, накладываемой или фиксированной.
-
Безопасность и процессы
- J_EDGAR_HOOVER обеспечивает безопасность системы.
- GEORGE решает, какой процесс получит ресурсы процессора.
- Задачи проходят через различные состояния, включая ЗАРОЖДАЮЩЕЕСЯ и СМЕРТЬ.
-
Библиотеки MCP
- Библиотеки предоставляют способ обмена данными и кодом между процессами.
- Библиотеки контролируют доступ к общим ресурсам и могут быть написаны на разных языках.
- Библиотеки могут быть “общими для всех”, “общими для rununit” или “частными”.
-
Динамическая реализация COBOL rununits
- Каждый модуль запуска получает один экземпляр библиотеки
- Библиотека инициализируется при первом вызове
- Стек библиотеки заморожен до разморожения
-
Доступ к библиотекам
- Доступ возможен по названию и по функции
- Библиотеки можно обновлять “на лету”
- Библиотеки функций реализуют классы привязки
-
Библиотеки подключений
- Самостоятельные программы, выполняемые независимо
- Импортируют и экспортируют данные и функции
- Обеспечивают контроль над соединениями
-
Файлы портов
- Многоходовые и двунаправленные, медленнее библиотек
- Используются для распределенного IPC
- Сервер объявляет файл порта, клиент создает вложенный файл
-
Операционная среда MCP
- Сложная, но простая среда работы оператора
- Операторы управляют ресурсами и задачами
- Команды оператора состоят из двух-трех букв
-
Регистрация событий
- Все действия регистрируются в системном журнале
- Журналы используются для судебной экспертизы и анализа безопасности
- Журналы автоматически закрываются и открываются новые
-
Диагностические инструменты
- DUMPANALYZER определяет исходную инструкцию, выполнявшуюся в момент ошибки
- Обычный дамп программы содержит информацию о порядковом номере кода и именах переменных
-
Инновации в MCP
- Системное программное обеспечение поставлялось с исходным кодом и инструментами редактирования
- Заказчики присылали “исправления” для улучшения функций или устранения неисправностей
- Многие исправления были интегрированы в следующие версии MCP
-
Открытые инновации
- Включение сообщества экспертов в техническую работу стало практикой
- Это управленческое новшество появилось в 1970-х годах
-
Компиляторы
- MCP поддерживала различные языки программирования, включая АЛГОЛ, C, COBOL, Фортран, Паскаль, РПГ
- Ранее существовали компиляторы для ESPOL, COBOL(68), Fortran(66), APL и PL/I
-
Ассемблер
- В операционной системе Unisys MCP нет ассемблера
-
Резюме
- MCP была первой операционной системой, разработанной на языке высокого уровня
- Включала виртуальную память, симметричную многопроцессорную обработку и WFL
- Обеспечивает безопасную и высокопроизводительную среду для многозадачности и обработки транзакций