КАНДЕ
Оригинальный автор(ы) | Даррел Ф. Хай, Рэндалл Гелленс |
---|---|
Разработчик(и) | Берроуз / Unisys |
Первоначальный выпуск | 1973 год |
Стабильная версия | МКП 19.0 / декабрь 2019 г. |
Операционная система | Берроуз MCP |
Платформа | Unisys Clearpath Серия мэйнфреймов |
Доступно в | Английский |
Тип | Командная оболочка , текстовый редактор |
CANDE (Command AND Edit) — это командной строки оболочка и текстовый редактор в MCP (Master Control Program), операционной системе которая работает на Unisys серии мэйнфреймах Clearpath . Первоначально реализованный в больших системах Burroughs , он имеет ряд функций для взаимодействия со средой выполнения операционной системы, ориентированных на выполнение, редактирование и компиляцию программ, а также создание, копирование, перемещение, переименование и удаление файлов в целом.
Его полное название — CANDE MCS. MCS, или подсистема управления сообщениями, — это общая форма системной программы в архитектуре Burroughs (кроме MCP, главной программы управления или базовой ОС). CANDE — это больше, чем просто редактор, поскольку он обеспечивает полный контроль над сетью пользователей.
Возможности редактирования CANDE являются анахронизмом для повседневного (в отличие от скриптового) редактирования, поскольку они предшествуют полноэкранным и графическим редакторам.
CANDE также использовался в линейке CMS (мини-компьютеров) Burroughs с очень похожим синтаксисом.
В современном MCP CANDE в основном используется через ODT (терминал дисплея оператора) и MARC (управление ресурсами с помощью меню) на эмуляторах исходных символьных терминалов, а также с другими устаревшими интерфейсами мэйнфреймов, такими как ISPF .
Особенности [ править ]
CANDE предоставляет интерпретатор командной строки и редактор строк , хотя в отличие от современной интерпретации интерпретатора командной строки операционной системы, команды CANDE компилируются в CANDE MCS, поскольку возможности, подобные оболочке, предоставляются WFL . Другие примечательные особенности и функции включают в себя:
- Создание, редактирование и обслуживание (копирование, перемещение, удаление, печать, переименование) файлов данных и программ.
- Компилировать и выполнять программы
- Доступ и отображение информации о сети передачи данных, включая терминальные линии связи и удаленные устройства.
- Динамическое изменение сети связи
- Доступ и отображение информации о заданиях и задачах
- Вспомогательные функции (калькулятор, проверка системных утилит и т. д.)
В дополнение к этим функциям CANDE имеет онлайн-справку.
Реализация [ править ]
Для дополнительной скорости CANDE реализовал переключение пользовательского контекста путем замены блока наверху стека. Этот новый метод сломал несколько предположений, заложенных в конструкцию больших систем Берроуза , в частности, обработку дескрипторов виртуальной памяти, и означал, что сам CANDE должен был быть написан на DCALGOL с привилегиями системного уровня.
Архитектурно CANDE разделен на две основные части: основной одноэкземплярный основной процесс, изначально поддерживающий до 255 одновременных пользователей, и один или несколько рабочих стеков. Основной процесс называется BUMP. Он получает все входные сообщения, включая данные от пользователей. Простые запросы, которые могут быть выполнены без задержки и не требуют каких-либо операций ввода-вывода, таких как доступ к диску, обрабатываются немедленно. Остальные запросы добавляются в рабочую очередь и обрабатываются одним из рабочих процессов. Рабочий процесс называется GRIND; в любой момент времени может быть один или несколько экземпляров. Каждый процесс GRIND по умолчанию имеет пять псевдопотоков, которые фактически выполняют работу.
Модель внутренних потоков для переключения контекста выбирает один из рабочих псевдопотоков для каждого процесса GRIND и делает его исполняемым контекстом. Это достигается путем копирования его на вершину стека. Когда рабочему процессу необходимо выполнить ввод-вывод или другое асинхронное действие, он инициирует действие, отмечает, чего он ожидает, и вызывает функцию переключения контекста, которая выбирает другой контекст для выполнения.
CANDE работает без внутренних блокировок за счет тщательного разделения данных. Каждому возможному пользовательскому соединению (или станции) присваивается индекс в основном массиве, называемом массивом станций, или STA («остание»). Текущий индекс станции называется STAX (произносится как «stay-x»). На каждую станцию имеется несколько слов данных о состоянии, но они сохраняются вместе со всеми первыми словами, за которыми следуют все вторые слова и т. д. Это позволяет CANDE индексировать массив, используя только сложение, а не умножение (что сделано для более быстрая работа на проводных процессорах той эпохи).
CANDE был первоначально написан в 1973 году Даррелом Ф. Хай. В 1984 году его взял на себя Рэндалл Гелленс, после чего процедуры обслуживания библиотеки (копирование, перемещение, переименование и удаление файлов) были переписаны, чтобы обеспечить значительно расширенные возможности, было добавлено множество утилит с использованием знака "?" синтаксис (позволяющий использовать их даже во время работы программы), а также было сделано несколько архитектурных улучшений. Позже его перевезли на завод в Санта-Барбаре, а затем в Индию.
Знак "?" Синтаксис, изначально позволяющий управлять во время выполнения программы (когда ввод обычно направляется в программу), вырос и теперь включает ряд утилит.
См. также [ править ]
Внешние ссылки [ править ]
- Справочная карта Burroughs B5500 Quick CANDE для B5500 TSS 1042710, около 1970 г.
- B6700, B7700 CANDE Справочная карта 5001050, июль 1975 г. , bitsavers.org
- B7000, B6700 CANDE Справочная карта 5011349, октябрь 1979 г., на bitsavers.org