VM (a menudo: VM / CMS ) es una familia de sistemas operativos de máquinas virtuales IBM que se utilizan en mainframes IBM System / 370 , System / 390 , zSeries , System z y sistemas compatibles, incluido el emulador Hercules para computadoras personales.
Desarrollador | IBM |
---|---|
Familia OS | Familia VM |
Estado de trabajo | Actual |
Modelo fuente | 1972–1986 Código abierto , 1977 hasta el presente Código cerrado |
Versión inicial | 1972 |
Último lanzamiento | IBM z / VM V7.1 / 16 de octubre de 2018 |
Objetivo de marketing | Mainframe de IBM ordenadores |
Disponible en | inglés |
Plataformas | System / 370 , System / 390 , zSeries , IBM zEnterprise System |
Licencia | 1972–1981 Dominio público , 1976 al presente Propietario |
Página web oficial | www |
La primera versión, lanzada en 1972, fue VM / 370 , u oficialmente Virtual Machine Facility / 370 . Esta fue una reimplementación System / 370 del sistema operativo CP / CMS anterior . Las versiones de Milestone incluían VM / SP . [1] La versión actual, z / VM , todavía se usa ampliamente como una de las principales soluciones de virtualización completa para el mercado de mainframe. [ cita requerida ]
El CMS generalmente junto con VM en el nombre se refiere al Conversational Monitor System, un sistema operativo de un solo usuario desarrollado para proporcionar tiempo compartido conversacional en VM.
Descripción general
El corazón de la arquitectura de VM es el Programa de Control o hipervisor abreviado CP , VM-CP y, a veces, de manera ambigua, VM . Se ejecuta en el hardware físico y crea el entorno de la máquina virtual . VM-CP proporciona una virtualización completa de la máquina física, incluidas todas las operaciones de E / S y otras operaciones privilegiadas. Realiza el intercambio de recursos del sistema, incluida la administración de dispositivos, el envío, la administración del almacenamiento virtual y otras tareas tradicionales del sistema operativo. A cada usuario de VM se le proporciona una máquina virtual separada que tiene su propio espacio de direcciones , dispositivos virtuales, etc., y que es capaz de ejecutar cualquier software que pueda ejecutarse en una máquina independiente. Un mainframe de VM dado normalmente ejecuta cientos o miles de instancias de máquinas virtuales. VM-CP comenzó su vida como CP-370, una reimplementación de CP-67 , en sí misma una reimplementación de CP-40 .
Dentro de cada máquina virtual se ejecuta otro sistema operativo, un sistema operativo invitado . Esto puede ser:
- CMS ( Conversational Monitor System , renombrado de Cambridge Monitor System of CP / CMS ). La mayoría de las máquinas virtuales ejecutan CMS, un sistema operativo liviano para un solo usuario. Su entorno interactivo es comparable al de una PC de un solo usuario, que incluye un sistema de archivos, servicios de programación, acceso a dispositivos y procesamiento de línea de comandos. (Si bien una versión anterior de CMS se describió sin cariño como " CP / M en un mainframe", la comparación es un anacronismo; el autor de CP / M, Gary Kildall , era un usuario experimentado de CMS).
- GCS ( Group Control System ), que proporciona una simulación limitada de la API de MVS. IBM proporcionó originalmente GCS para ejecutar VTAM sin una máquina virtual OS / VS1 de servicio y la aplicación de red de comunicaciones VTAM (VCNA). RSCS V2 también se ejecutó bajo GCS.
- Un sistema operativo convencional. Los sistemas operativos principales de IBM (es decir, las familias MVS o DOS / VSE ) se pueden cargar y ejecutar sin modificaciones. El hipervisor de VM trata los sistemas operativos invitados como programas de aplicación con privilegios excepcionales: les impide usar instrucciones privilegiadas (aquellas que permitirían que las aplicaciones se apoderen de todo el sistema o de partes importantes de él), pero simula instrucciones privilegiadas en su nombre. La mayoría de los sistemas operativos de mainframe terminan una aplicación normal que intenta usurpar los privilegios del sistema operativo.
- Otra copia de VM. Una instancia de segundo nivel de VM se puede virtualizar completamente dentro de una máquina virtual. Así es como se realizan las pruebas y el desarrollo de la máquina virtual (una máquina virtual de segundo nivel puede implementar potencialmente una virtualización diferente del hardware). Esta técnica se utilizó para desarrollar software S / 370 antes de que el hardware S / 370 estuviera disponible, y ha seguido desempeñando un papel en el desarrollo de nuevo hardware en IBM. La literatura cita ejemplos prácticos de virtualización a cinco niveles de profundidad (consulte la página 28 de VM y la comunidad de VM ). Los niveles de VM por debajo de la parte superior también se tratan como aplicaciones pero con privilegios excepcionales.
- Una copia de la versión de mainframe de AIX o Linux . En el entorno de mainframe, estos sistemas operativos a menudo se ejecutan en VM y se manejan como otros sistemas operativos invitados. (También pueden ejecutarse como sistemas operativos 'nativos' en el hardware básico).
- Un subsistema de VM especializado. Varios sistemas que no son CMS se ejecutan dentro de máquinas virtuales VM-CP y brindan servicios a los usuarios de CMS, como spooling, comunicaciones entre procesos y soporte de dispositivos especializados. Operan detrás de escena, extendiendo los servicios disponibles para CMS sin agregar nada al programa de control VM-CP. Al ejecutarse en máquinas virtuales separadas, reciben las mismas protecciones de seguridad y confiabilidad que otros usuarios de VM. Ejemplos incluyen:
- RSCS (Remote Spooling and Communication Subsystem, también conocido como VNET): facilidades de comunicación y transferencia de información entre máquinas virtuales [2]
- RACF (Resource Access Control Facility): un sistema de seguridad
- Sistema de archivos compartidos (SFS), que organiza los archivos compartidos en un árbol de directorios
- Un sistema escrito por el usuario u operativo modificado , como Nacional CSS 's CSS o la Universidad de Boston ' s VPS / VM .
Interfaz de hipervisor
IBM acuñó el término hipervisor para 360/65 [3] y luego lo usó para el controlador DIAG de CP-67.
La instrucción Diagnose ('83'x — no mnemotécnica) es una instrucción privilegiada originalmente diseñada por IBM para realizar "funciones de diagnóstico integradas u otras funciones dependientes del modelo". [4] IBM reutilizó DIAG para "comunicación entre una máquina virtual y CP". [5] [6] La instrucción contiene dos números de registro de cuatro bits, llamados Rx y Ry, que pueden "contener direcciones de almacenamiento de operandos o códigos de retorno pasados a la interfaz DIAGNOSE" y un código de dos bytes "que CP usa para determinar qué función de DIAGNÓSTICO realizar ". [5] A continuación se enumeran algunas de las funciones de diagnóstico disponibles.
Código hexadecimal | Función |
---|---|
0000 | Almacenar código de identificación extendido |
0004 | Examinar el almacenamiento real |
0008 | Función de consola virtual: ejecutar un comando CP |
0018 | E / S DASD estándar |
0020 | E / S general: ejecute cualquier cadena CCW válida en un dispositivo de cinta o disco |
003C | Actualizar el directorio VM / 370 |
0058 | 3270 Consola Virtual Interface-realizar de pantalla completa I / O en un IBM 3270 Terminal |
0060 | Determinar el tamaño de almacenamiento de la máquina virtual |
0068 | Facilidad de comunicación de máquina virtual ( VMCF ) |
Uso de CMS de DIAGNOSE
En un momento, CMS era capaz de ejecutarse en una máquina simple , como un verdadero sistema operativo (aunque tal configuración sería inusual). Ahora se ejecuta solo como sistema operativo invitado en VM. Esto se debe a que CMS se basa en una interfaz de hipervisor para VM-CP, para realizar operaciones del sistema de archivos y solicitar otros servicios de VM. Esta interfaz de paravirtualización :
- Proporciona una ruta rápida a VM-CP, para evitar la sobrecarga de la simulación completa.
- Se desarrolló por primera vez como una mejora del rendimiento para la versión 2.1 de CP / CMS , un importante hito inicial en la eficiencia de CP.
- Utiliza una instrucción de máquina dependiente del modelo no virtualizada como señal entre CMS y CP: DIAG (diagnóstico).
Minidiscos
Los CMS y otros sistemas operativos a menudo tienen requisitos de DASD mucho más pequeños que los tamaños de los volúmenes reales. Por esta razón, CP permite que una instalación defina discos virtuales de cualquier tamaño hasta la capacidad del dispositivo. Para volúmenes CKD, se debe definir un minidisco en cilindros llenos. Un minidisco tiene los mismos atributos que el disco real subyacente, excepto que normalmente es más pequeño y el comienzo de cada minidisco se asigna al cilindro o bloque 0. Se puede acceder al minidisco [a] utilizando los mismos programas de canal que el disco real.
Un minidisco que se ha inicializado con un sistema de archivos CMS se denomina minidisco CMS, aunque CMS no es el único sistema que puede utilizarlos.
Es una práctica común definir minidiscos de volumen completo para que los usen sistemas operativos invitados como z / OS en lugar de usarlos DEDICATE
para asignar el volumen a una máquina virtual específica.
Historia
La historia temprana de VM se describe en los artículos CP / CMS e Historia de CP / CMS . VM / 370 es una reimplementación de CP / CMS y estuvo disponible en 1972 como parte del anuncio de funciones avanzadas System / 370 de IBM (que agregó hardware de memoria virtual y sistemas operativos a la serie System / 370 ). Las primeras versiones de VM a través de VM / 370 Release 6 continuaron en código abierto hasta 1981, y hoy se considera que son de dominio público . Esta política terminó en 1977 con las actualizaciones de VM / SE y VM / BSE con cargo y en 1980 con VM / System Product (VM / SP). Sin embargo, IBM continuó proporcionando actualizaciones en forma de fuente para el código existente durante muchos años, aunque las actualizaciones para todos excepto la base gratuita requerían una licencia. Al igual que con CP-67, las instrucciones privilegiadas en una máquina virtual provocan una interrupción del programa y CP simuló el comportamiento de la instrucción privilegiada.
VM siguió siendo una plataforma importante dentro de IBM, utilizada para el desarrollo de sistemas operativos y el uso de tiempo compartido; pero para los clientes seguía siendo el "otro sistema operativo" de IBM. Las familias de SO y DOS siguieron siendo productos estratégicos de IBM y no se animó a los clientes a ejecutar VM. Aquellos que lo hicieron formaron estrechas relaciones de trabajo, continuando el modelo de apoyo a la comunidad de los primeros usuarios de CP / CMS. Mientras tanto, el sistema luchó con luchas políticas internas dentro de IBM sobre qué recursos deberían estar disponibles para el proyecto, en comparación con otros esfuerzos de IBM. Se observó un problema básico con el sistema en el nivel de ventas de campo de IBM: VM / CMS redujo de manera demostrable la cantidad de hardware necesario para dar soporte a un número determinado de usuarios de tiempo compartido. Después de todo, IBM se dedicaba a la venta de sistemas informáticos.
Melinda Varian ofrece esta cita fascinante, que ilustra el éxito inesperado de VM:
Las previsiones de marketing para VM / 370 predijeron que no más de un 168 ejecutaría VM durante toda la vida útil del producto. De hecho, los primeros 168 entregados a un cliente solo ejecutaban CP y CMS. Diez años más tarde, el diez por ciento de los procesadores grandes que se envían desde Poughkeepsie estarían destinados a ejecutar VM, al igual que una parte muy sustancial de las máquinas de rango medio que se construyeron en Endicott. Antes de que hubieran pasado quince años, habría más licencias de VM que licencias de MVS. [7]
Una versión de PC DOS que ejecuta CMS en el XT / 370 (y más tarde en el AT / 370) se llama VM / PC. VM / PC 1.1 se basó en VM / SP versión 3.
Cuando IBM introdujo la Arquitectura Extendida System / 370 en el 3081 , los clientes se enfrentaron a la necesidad de ejecutar un sistema MVS / 370 de producción mientras probaban MVS / XA en la misma máquina. La solución de IBM fue VM / XA Migration Aid, que utilizó la nueva instrucción Start Interpretive Execution (SIE) para ejecutar la máquina virtual. SIE manejó automáticamente algunas instrucciones privilegiadas y regresó a CP para los casos que no pudo manejar. El Administrador de recursos / sistema del procesador (PR / SM) del 3090 posterior también usó SIE. Había varios productos VM / XA antes de que finalmente fuera reemplazado por VM / ESA yz / VM.
El rol de VM cambió dentro de IBM cuando la evolución del hardware condujo a cambios significativos en la arquitectura del procesador. La compatibilidad con versiones anteriores siguió siendo una piedra angular de la familia de mainframe de IBM , que todavía utiliza el conjunto de instrucciones básicas introducido con el System / 360 original ; pero la necesidad de un uso eficiente de zSeries de 64 bits hizo que el enfoque de VM fuera mucho más atractivo. VM también se utilizó en centros de datos que se convirtieron de DOS / VSE a MVS y es útil cuando se ejecuta mainframe AIX y Linux , plataformas que iban a ser cada vez más importantes. La plataforma z / VM actual finalmente ha logrado el reconocimiento dentro de IBM que los usuarios de VM desde hace mucho tiempo sintieron que se merecía. Algunos sitios de z / VM ejecutan miles de usuarios simultáneos de máquinas virtuales en un solo sistema. z / VM se lanzó por primera vez en octubre de 2000 [8] y permanece en uso y desarrollo activos.
IBM y terceros han ofrecido muchas aplicaciones y herramientas que se ejecutan en VM. Los ejemplos incluyen RAMIS , FOCUS , SPSS , NOMAD , DB2 , REXX , RACF y OfficeVision . Las ofertas actuales de máquinas virtuales abarcan toda la gama de aplicaciones de mainframe, incluidos servidores HTTP , administradores de bases de datos, herramientas de análisis, paquetes de ingeniería y sistemas financieros.
Comandos CP
A partir de la versión 6, el programa de control VM / 370 tiene una serie de comandos para usuarios generales, relacionados con la definición y el control de la máquina virtual del usuario. Las partes del comando en minúsculas son opcionales [9]
Mando | Descripción |
---|---|
#CP | Permite al usuario emitir un comando CP desde un entorno de comando |
ADSTOP | Establece una parada de dirección para detener la máquina virtual en una instrucción específica |
ATENCIÓN | Provoca una interrupción de la atención que permite a CP tomar el control en un entorno de comando |
Empezar | Continuar o reanudar la ejecución de la máquina virtual del usuario, opcionalmente en una dirección específica |
Cambio | Modifique los atributos de un archivo o archivos en cola. Por ejemplo, se puede cambiar la clase de salida o el nombre del archivo, o se pueden establecer atributos específicos de la impresora |
Cerca | Cierra un archivo abierto de impresora, perforadora, lector o consola y lo envía al sistema de cola |
PAREJA | Conecte un adaptador de canal a canal virtual (CTCA) a otro |
CP | Ejecute un comando CP en un entorno CMS |
Definir | Modifique la configuración actual de la máquina virtual. Agregue dispositivos virtuales o cambie el tamaño de almacenamiento disponible |
Despegar | Eliminar un dispositivo o canal virtual de la configuración actual |
MARCAR | Conecte su terminal a una máquina virtual de acceso múltiple que haya iniciado sesión |
DISConn | Desconecte su terminal mientras permite que su máquina virtual continúe funcionando |
Monitor | Mostrar el almacenamiento de la máquina virtual o los registros de hardware (virtual) |
VERTEDERO | Imprima un volcado de instantánea de la máquina virtual actual en la impresora virtual en spool |
ECO | Configurar la máquina virtual para que repita las líneas escritas |
Externo | Causar una interrupción externa a la máquina virtual |
Indicar | Muestra la carga actual del sistema o el uso de recursos. |
Ipl | IPL (arranque) un sistema operativo en su máquina virtual |
ENLACE | Adjunte un dispositivo desde otra máquina virtual, si la definición de esa máquina permite compartir |
LOADVFCB | Especificar un búfer de control de formularios (FCB) para una impresora virtual |
LOGoff LOGout | Terminar la ejecución de la máquina virtual actual y desconectarse del sistema |
Iniciar sesión Iniciar sesión | Iniciar sesión en el sistema |
Mensaje MSG | Envíe un mensaje de una línea al operador del sistema u otro usuario |
No está listo | Hacer que un dispositivo virtual parezca no estar listo |
Pedido | Reordenar archivos de spool cerrados por ID o clase |
Purga | Elimine archivos de spool cerrados para un dispositivo por clase, ID de m o TODOS |
Consulta | Muestra información sobre el estado de su máquina virtual, o el "mensaje del día", o el número o los nombres de los usuarios que han iniciado sesión. |
LISTO | Causar una interrupción del final del dispositivo para un dispositivo |
Pedido | Causar una interrupción en su consola virtual |
REINICIAR | Borrar todas las interrupciones pendientes de un dispositivo |
Rebobinar | Rebobinar una unidad de cinta magnética real (no virtual) |
COLOCAR | Establezca varios atributos para su máquina virtual, incluida la mensajería o las teclas de función del terminal |
Dormir | Coloque su máquina virtual en un "estado inactivo" indefinidamente o durante un período de tiempo específico |
SMsg | Enviar un "mensaje especial" de una línea a otro usuario |
Carrete | Establecer opciones para un dispositivo virtual en spool |
Tienda | Altere el contenido de registros o almacenamiento de su máquina virtual |
Sistema | Restablezca o reinicie su máquina virtual o borre el almacenamiento |
Etiqueta | Establezca una etiqueta asociada a un dispositivo o archivo en spool. La etiqueta suele ser utilizada por el Subistema de comunicaciones de spooling remoto (RSCS) de VM para identificar el destino de un archivo. |
Terminal | Configura las características de tu terminal |
Rastro | Iniciar o detener el seguimiento de actividades específicas de la máquina virtual |
Transferir | Transferir un archivo de cola ao desde otro usuario |
VMDUMP | Descargue su máquina virtual en un formato legible por el producto del programa Interactive Problem Control System (IPCS) |
Mascota de VM
A principios de la década de 1980, el grupo VM dentro de SHARE (el grupo de usuarios de IBM) buscó una mascota o logotipo para que la comunidad lo adoptara. Esto fue en parte una respuesta a que los usuarios de MVS de IBM seleccionaron el pavo como mascota (elegido, según la leyenda, por MVS Performance Group en los primeros días de MVS, cuando su desempeño era un tema delicado). En 1983, el osito de peluche se convirtió en la mascota de facto de VM en SHARE 60, cuando se adhirieron calcomanías de osos de peluche a las etiquetas de los "ancianos más tiernos" para señalarlos a los recién llegados como "amistosos si se les acercaban". Los osos fueron un éxito y pronto aparecieron ampliamente. [10] Los osos fueron otorgados a los miembros de la "Orden de los Caballeros de VM", individuos que hicieron "contribuciones útiles" a la comunidad. [11] [12]
Notas
- ^ CMS puede usar DIAG para E / S en sistemas de archivos CMS.
Ver también
- Evolución del sistema de tiempo compartido
Referencias
- ↑ Elliott, Jim (17 de agosto de 2004). "La evolución de IBM Mainframes y VM" (PDF) . Linux para S / 390 Linux para Big Iron . SHARE Sesión 9140 . Consultado el 21 de octubre de 2007 .
- ^ Creasy, op. cit., pág. 483 - papel de RSCS.
- ^ Gary R. Allred (1971). Emulación integrada System / 370 bajo OS y DOS (PDF) . Conferencia de Computación Conjunta de Primavera .
- ^ IBM Corporation (1987). IBM System / 370 Principios de funcionamiento (PDF) . pag. 10-5 . Consultado el 17 de agosto de 2019 .
- ^ a b "Instrucción DIAGNOSTICAR en una Máquina Virtual" (PDF) . IBM Virtual Machine Facility / 370: Guía del programador del sistema (PDF) (octava ed.). IBM. Marzo de 1979. GC20-1807-7 . Consultado el 17 de agosto de 2019 .
- ^ "Capítulo 1. La instrucción DIAGNOSE en una máquina virtual" (PDF) . Servicios de programación CP de z / VM Versión 7 Release 2 (PDF) . IBM. 2020-08-12. pag. 3. SC24-6272-04.
En un procesador real, la instrucción DIAGNOSE realiza funciones de diagnóstico dependientes del procesador. En una máquina virtual, usa la interfaz DIAGNOSE para solicitar que CP realice servicios para su máquina virtual. Cuando su máquina virtual intenta ejecutar una instrucción DIAGNOSE, el control se devuelve a CP. CP utiliza la información proporcionada en la parte del código de la instrucción para determinar qué servicio debe realizar. Una vez que se proporciona este servicio, el control vuelve a la máquina virtual.
- ^ Varian, op. cit., pág. 30 - grado de uso de VM; más licencias de VM que licencias de MVS
- ^ "IBM: sobre el sistema operativo z / VM" . Tecnología de virtualización IBM z / VM . Vm.ibm.com . Consultado el 2 de julio de 2015 .
- ^ IBM Corporation (1 de agosto de 1979). IBM Virtual Machine Facility / 370: Referencia de comandos de CP para usuarios generales (PDF) . Consultado el 15 de agosto de 2019 .
- ^ "Galería de GIF web de VM" . Sitio de IBM z / VM . Archivado desde el original el 18 de octubre de 2006.
- ^ Varian, op. cit., pág. 2 - la historia del oso de peluche
- ^ "Explica" peluche oficial de VM " " . Sr. Alan J. Flavell . Alanflavell.org.uk . Consultado el 2 de julio de 2015 .
enlaces externos
Fuentes de VM
- Bob DuCharme, Manual de sistemas operativos, Parte 5: VM / CMS
: una guía de usuario bastante detallada para VM / CMS - EC Hendricks y TC Hartmann, "Evolución de un subsistema de máquina virtual", IBM Systems Journal Vol. 18, págs. 111-142 (1979)
- Diseño e implementación de RSCS - IBM Corporation, IBM Virtual Machine Facility / 370 Introduction , GC20-1800, (1972)
- el manual original
Fuentes primarias de CP / CMS
- RJ Creasy, " El origen del sistema de tiempo compartido VM / 370 ", IBM Journal of Research & Development , vol. 25, No. 5 (septiembre de 1981), págs. 483–90, PDF
- perspectiva sobre la historia de CP / CMS y VM por el líder del proyecto CP-40 , también autor de CTSS - EW Pugh, LR Johnson y John H. Palmer, los sistemas 360 y los primeros 370 de IBM, MIT Press, Cambridge MA y Londres, ISBN 0-262-16123-0
: tratamiento extenso (819 págs. ) De las ofertas de IBM durante este período; la cobertura limitada de CP / CMS en un trabajo tan definitivo es reveladora - Melinda Varian, VM y la comunidad VM, pasado, presente y futuro , SHARE 89 Sessions 9059–61, 1997;
- una fuente excepcional para el historial de CP / CMS y VM
Fuentes adicionales de CP / CMS
- RJ Adair, RU Bayles, LW Comeau y RJ Creasy, A Virtual Machine System for the 360/40, IBM Corporation, Cambridge Scientific Center Report No. 320‐2007 (mayo de 1966)
- un artículo fundamental que describe la implementación del concepto de máquina virtual, con descripciones del diseño personalizado CSC S / 360-40 y CP-40 - International Business Machines Corporation, CP-67 / CMS , Programa 360D-05.2.005, Departamento de Información de Programas de IBM (junio de 1969)
- Manual de referencia de IBM - RA Meyer y LH Seawright, "Un sistema de tiempo compartido de máquina virtual", IBM Systems Journal, vol. 9, núm. 3, págs. 199–218 (septiembre de 1970)
: describe el sistema CP-67 / CMS y describe características y aplicaciones. - RP Parmelee, TI Peterson, CC Tillman y DJ Hatfield, "Almacenamiento virtual y conceptos de máquina virtual", IBM Systems Journal, vol. 11, No. 2 (junio de 1972)
Fuentes de CP / CMS en segundo plano
- FJ Corbató, et al., The Compatible Time-Sharing System, A Programmer's Guide, MIT Press, 1963
- FJ Corbató, M. Merwin-Daggett y RC Daley, "Un sistema experimental de tiempo compartido", Proc. Spring Joint Computer Conference (AFIPS) 21, págs. 335–44 (1962) - descripción de CTSS
- FJ Corbató y VA Vyssotsky, "Introducción y descripción general del sistema MULTICS", Proc. Conferencia conjunta sobre informática de otoño (AFIPS) 27, págs. 185–96 (1965)
- PJ Denning, "Memoria virtual", Computing Surveys Vol. 2, págs. 153–89 (1970)
- JB Dennis, "Segmentación y diseño de sistemas informáticos multiprogramados", JACM Vol. 12, págs. 589–602 (1965)
- requisitos de memoria virtual para Project MAC, destinado a GE 645 - CAR Hoare y RH Perrott, Eds., Técnicas de sistemas operativos , Academic Press, Inc., Nueva York (1972)
- T. Kilburn, DBG Edwards, MJ Lanigan y FH Sumner, "Sistema de almacenamiento de un nivel", IRE Trans. Electrón. Computers EC-11, págs. 223–35 (1962)
- Manchester / Ferranti Atlas - RA Nelson, "Mapping Devices and the M44 Data Processing System" , Informe de investigación RC 1303 , IBM Thomas J. Watson Research Center (1964)
- sobre IBM M44 / 44X - RP Parmelee, TI Peterson, CC Tillman y DJ Hatfield, "Almacenamiento virtual y conceptos de máquina virtual", IBM Systems Journal , vol. 11, págs. 99-130 (1972)
Recursos adicionales de CP / CMS en línea
- febcm.club.fr - Cronología de la tecnología de la información , 1964–74
- www.multicians.org - ensayo corto de Tom Van Vleck The IBM 360/67 y CP / CMS
- www.cap-lore.com - Breve historia de Norman Hardy de las máquinas virtuales de IBM
- www.cap-lore.com - Breve descripción de Norman Hardy de la "Caja Blaauw"
Otros recursos
- Publicación de IBM Redbooks - libro de texto z / VM
- IBM: portal z / VM
- IBM: manuales de z / VM
- Documentación de VM / PC sobre bitsavers
Relaciones familiares CP / CMS | |||
→ derivación >> fuerte influencia > alguna influencia / precedencia | |||
CTSS | |||
> IBM M44 / 44X | |||
>> CP-40 / CMS → CP [-67] / CMS | → VM / 370 → Versiones VM / SE → Versiones VM / SP → Versiones VM / XA → VM / ESA → z / VM | ||
→ VP / CSS | |||
> TSS / 360 | |||
> TSO para MVT → para OS / VS2 → para MVS → ... → para z / OS | |||
>> MULTICS y la mayoría de las otras plataformas de tiempo compartido | |||