CANDE (Command AND Edit) es un intérprete de comandos y editor de texto en el sistema operativo MCP (Master Control Program) que se ejecuta en la serie de mainframes Unisys Clearpath . Originalmente implementado en los grandes sistemas Burroughs , [ 1 ] tiene una variedad de características para interactuar con el entorno de ejecución del sistema operativo, enfocado en ejecutar, editar y compilar programas, y crear, copiar, mover, renombrar y eliminar archivos en general.
Su nombre completo es CANDE MCS. MCS, o Subsistema de Control de Mensajes, es la forma general de un programa de sistema en la arquitectura Burroughs (a diferencia del MCP, el Programa de Control Maestro o sistema operativo principal). Como MCS, CANDE es más que un simple editor, ya que proporciona control general para una red de usuarios.
Las capacidades de edición de CANDE resultan anacrónicas para la edición informal (a diferencia de la edición con guion), ya que son anteriores a los editores gráficos y de pantalla completa.
CANDE también se utilizó en la gama de miniordenadores Burroughs CMS, con una sintaxis muy similar.
En los sistemas MCP contemporáneos, CANDE se utiliza principalmente a través de ODT (Operator Display Terminal) y MARC (Menu Assisted Resource Control) en emuladores de los terminales originales orientados a caracteres, al igual que con otras interfaces de mainframe heredadas como ISPF .
Características
CANDE proporciona un intérprete de línea de comandos y un editor de línea , aunque a diferencia de la interpretación moderna de un intérprete de línea de comandos de un sistema operativo, los comandos de CANDE se compilan en el CANDE MCS, ya que las capacidades similares a las de un shell las proporciona WFL . Otras características y funciones destacadas incluyen:
- Crear, editar y mantener (copiar, mover, eliminar, imprimir, renombrar) archivos de datos y programas.
- Compilar y ejecutar programas
- Acceda y visualice información sobre la red de comunicación de datos, incluidas las líneas de comunicación de terminales y los dispositivos remotos.
- Modificar dinámicamente la red de comunicación
- Acceder y visualizar información sobre trabajos y tareas.
- Funciones de utilidad (calculadora, prueba de utilidad del sistema, etc.)
Además de estas características, CANDE cuenta con un servicio de ayuda en línea.
Implementación
Para mayor velocidad, CANDE implementó el cambio de contexto de usuario intercambiando un bloque en la parte superior de la pila. Este novedoso método rompió varias suposiciones inherentes al diseño de los grandes sistemas de Burroughs , en particular el manejo de descriptores de memoria virtual, e implicó que CANDE tuviera que escribirse en DCALGOL con privilegios de nivel de sistema.
Desde el punto de vista arquitectónico, CANDE se divide en dos secciones principales: un proceso principal de instancia única que originalmente admite hasta 255 usuarios simultáneos, y uno o más grupos de trabajadores. El proceso principal se llama BUMP. Recibe todos los mensajes de entrada, incluidos los de los usuarios. Las solicitudes simples que se pueden ejecutar sin demora y que no implican ninguna operación de entrada/salida, como el acceso al disco, se procesan inmediatamente. Otras solicitudes se agregan a una cola de trabajo y son procesadas por uno de los procesos de trabajador. El proceso de trabajador se llama GRIND; puede haber una o más instancias en cualquier momento. Cada proceso GRIND tiene por defecto cinco pseudohilos que realizan el trabajo.
El modelo interno de subprocesos para el cambio de contexto selecciona uno de los pseudoprocesos de trabajo por cada proceso GRIND y lo convierte en el contexto de ejecución. Esto se logra copiándolo a la parte superior de la pila. Cuando el proceso de trabajo necesita ejecutar E/S u otra actividad asíncrona, inicia la acción, indica qué está esperando y llama a la función de cambio de contexto, que selecciona un contexto diferente para la ejecución.
CANDE funciona sin bloqueos internos, mediante una cuidadosa separación de datos. A cada posible conexión de usuario (o estación) se le asigna un índice en una matriz principal llamada matriz de estaciones, o STA ("stay"). El índice de la estación actual se denomina STAX (pronunciado "stay-x"). Hay varias palabras de datos de estado por estación, pero se almacenan con todas las primeras palabras juntas, seguidas de todas las segundas, etc. Esto permite a CANDE acceder a la matriz mediante la suma, no la multiplicación (lo que agilizaba el funcionamiento en las CPU cableadas de la época).
CANDE fue escrito originalmente en 1973 por Darrel F. High. En 1984, Randall Gellens se hizo cargo del proyecto, momento en el que se reescribieron las rutinas de mantenimiento de la biblioteca (copia, movimiento, cambio de nombre y eliminación de archivos) para ampliar significativamente sus capacidades, se añadieron numerosas utilidades mediante la sintaxis "?" (lo que permitía su uso incluso durante la ejecución de un programa) y se implementaron varias mejoras arquitectónicas. Posteriormente, se trasladó a la planta de Santa Bárbara y, finalmente, a la India.
La sintaxis "?", que originalmente permitía el control durante la ejecución del programa (cuando la entrada normalmente se dirigiría al programa), llegó a incluir una serie de utilidades.
Véase también
Referencias
- ↑ Guía del usuario del terminal del sistema de tiempo compartido Burroughs B5500 (PDF) . Burroughs Corporation . Junio de 1969.
Enlaces externos
- Tarjeta de referencia rápida CANDE para Burroughs B5500 , modelo B5500 TSS 1042710, circa 1970.
- Tarjeta de referencia CANDE B6700, B7700 5001050, julio de 1975 en bitsavers.org
- Tarjeta de referencia CANDE B7000, B6700 5011349 Octubre de 1979 en bitsavers.org
- Computadoras centrales Burroughs
- shells de comandos
- Editores de texto
- Software para ordenadores centrales