OS/360 , conocido oficialmente como IBM System/360 Operating System , [ 1 ] [ 2 ] es un sistema operativo de procesamiento por lotes descontinuado desarrollado por IBM para su entonces nuevo ordenador central System/360 , anunciado en 1964; estuvo influenciado por los paquetes anteriores IBSYS/IBJOB y Input/Output Control System (IOCS) para el IBM 7090/7094 y aún más por el sistema operativo PR155 para los procesadores IBM 1410 / 7010. Fue uno de los primeros [ NB 1 ] sistemas operativos en requerir que el hardware del ordenador incluyera al menos un dispositivo de almacenamiento de acceso directo .
Aunque el propio OS/360 se dejó de fabricar, los sistemas operativos sucesores, incluido el almacenamiento virtual MVS y el z/OS de 64 bits , todavía se utilizan en 2023.y mantener la compatibilidad a nivel de aplicación con OS/360.
Descripción general
IBM anunció tres niveles diferentes de OS/360, generados a partir de las mismas cintas y compartiendo la mayor parte de su código. Con el tiempo, IBM cambió el nombre de estas opciones e hizo algunos cambios de diseño importantes:
- Planificador secuencial único (SSS)
- Opción 1
- Programa de Control Primario (PCP)
- Planificadores secuenciales múltiples (MSS)
- Opción 2
- Multiprogramación con un número fijo de tareas (MFT)
- MFT II
- Planificadores de múltiples prioridades (MPS)
Los usuarios solían inventar apodos, como "Big OS" o "OS/MFT", pero ninguno de estos nombres tenía reconocimiento oficial por parte de IBM.
IBM proporcionó OS/360 como un conjunto de bibliotecas en cinta que la instalación debía restaurar en DASD para realizar una generación del sistema . IBM también ofreció un conjunto de cintas de código fuente opcionales que la instalación podía usar para modificar y ensamblar módulos que IBM normalmente proporcionaba como código objeto. Además, IBM ofreció microfichas que contenían listados de ensamblaje del material básico del programa y del servicio posterior. [ NB 3 ] IBM continuó distribuyendo código fuente hasta que impuso una política de solo código objeto [ 3 ] (OCO) para el software con licencia.
El otro sistema operativo principal para el hardware System/360 era DOS/360 .
OS/360 es de dominio público [ 4 ] y se puede descargar gratuitamente. Además de ejecutarse en hardware System/360 real, se puede ejecutar en el emulador gratuito Hercules , que funciona en la mayoría de los sistemas UNIX y similares, incluidos Linux , Solaris y macOS , así como en Windows . Existen CD de instalación de OS/360 que proporcionan sistemas OS/360 21.8 pregenerados y listos para ejecutarse en Hercules.
Origen
IBM originalmente pretendía que System/360 tuviera un único sistema operativo orientado a lotes [ NB 4 ] , OS/360, [ 2 ] capaz de ejecutarse en máquinas de tan solo 32 KiB. También tenía previsto suministrar un sistema operativo de tiempo compartido independiente, TSS/360 , para el System/360 Modelo 67. IBM no logró cumplir con el objetivo de uso de memoria de OS/360, y este requería 44 KiB incluso para una producción limitada. Existen al menos dos explicaciones de por qué IBM finalmente decidió producir otros sistemas operativos orientados a lotes más sencillos:
- porque descubrió que las "aproximadamente 1,5 millones de instrucciones que permiten que el sistema funcione prácticamente sin intervención manual" [ 5 ] que componen OS/360 no cabrían en la memoria limitada disponible en los modelos más pequeños de System/360; [ 6 ] o
- porque se dieron cuenta de que el desarrollo de OS/360 llevaría mucho más tiempo del esperado.
IBM introdujo una serie de soluciones provisionales para evitar el colapso de las ventas de hardware del System/360 : primero Basic Programming Support (BPS) y BOS/360 (Basic Operating System, para las máquinas más pequeñas con memorias de 8K bytes), luego TOS/360 (Tape Operating System, para máquinas con al menos 16K bytes de memoria y solo unidades de cinta), y finalmente DOS/360 (Disk Operating System), que se convirtió en un sistema operativo de uso generalizado y es el antecesor del VSE n, ampliamente utilizado en la actualidad . [ 6 ] [ 7 ]
IBM lanzó tres variantes de OS/360: PCP (Programa de Control Primario), una solución provisional que solo podía ejecutar un trabajo a la vez, en 1966; MFT ( Multiprogramación con Número Fijo de Tareas) para las máquinas de gama media, y MVT (Multiprogramación con Número Variable de Tareas) para las de gama alta. [ 8 ] MFT y MVT se utilizaron al menos hasta 1981, [ 9 ] una década después del lanzamiento de sus sucesores. [ 10 ] La división entre MFT y MVT surgió debido a limitaciones de almacenamiento y restricciones de planificación. Inicialmente, IBM sostuvo que MFT y MVT eran simplemente "dos configuraciones del programa de control de OS/360 ", aunque posteriormente IBM las describió como "versiones separadas de OS/360". [ 2 ] [ 11 ]
IBM escribió originalmente OS/360 en lenguaje ensamblador . Posteriormente, IBM escribió parte del código de OS/360 en un nuevo lenguaje, Basic Systems Language (BSL), [ 12 ] derivado de PL/I. Gran parte del código TSO en la versión 20 se escribió en BSL.
El TSS/360 llegó tan tarde y fue tan poco fiable que IBM lo canceló, aunque posteriormente lanzó tres versiones del TSS/370 PRPQ. Para entonces, el CP-67 funcionaba lo suficientemente bien como para que IBM lo ofreciera sin garantía como servicio de tiempo compartido para algunos clientes importantes. [ 13 ]
Variantes de OS/360
Estas tres opciones ofrecían funcionalidades tan similares que la migración de aplicaciones entre ellas generalmente requería un esfuerzo mínimo; las mismas versiones de la mayoría de los productos de software de IBM ( NB 5 ) , aplicaciones y utilidades se ejecutaban en ambas. El texto a continuación trata principalmente a PCP , MFT y MVT como simples nombres nuevos para los originales SSS , MSS y MPS , aunque hubo algunos cambios de diseño. Además, el texto no distingue entre M65MP y MVT.
Oficialmente, PCP, MFT y MVT no son sistemas operativos separados de OS/360, [ 2 ] son solo opciones de configuración en tiempo de instalación ; en palabras actuales, tres variantes diferentes del núcleo y el planificador del sistema operativo. Sin embargo, debido a su comportamiento y requisitos de memoria bastante diferentes, los usuarios suelen considerarlos de facto sistemas operativos separados y se refieren a ellos como "OS/360 antiguo", "OS/MFT" y "OS/MVT", respectivamente. MFT se diferencia de MVT principalmente en la forma en que administra la memoria: al instalar MFT, los clientes especifican en la generación del sistema (SysGen) un número fijo [ NB 6 ] de particiones , áreas de memoria con límites fijos, en las que se pueden ejecutar programas de aplicación simultáneamente. [ 11 ]
PCP
El Programa de Control Primario (PCP) estaba diseñado para máquinas con poca memoria. Es similar a MFT [ NB 7 ] con una partición . La experiencia indicaba que no era recomendable instalar OS/360 en sistemas con menos de 128 KiB de memoria, aunque era posible un uso limitado en producción en máquinas mucho más pequeñas, como las de 48 KiB de memoria. IBM eliminó la opción PCP en las versiones finales de OS/360, dejando solo MFT II y MVT, que requerían más memoria.
También se le denominaba SYS=MIN en expansiones de macros que dependían del sistema.
MFT
La multiprogramación con un número fijo de tareas (MFT) se concibió como una solución provisional hasta que la multiprogramación con un número variable de tareas (MVT), la configuración objetivo de OS/360, estuviera disponible en 1967. Las primeras versiones de MVT presentaban numerosos problemas, por lo que la más sencilla MFT se siguió utilizando durante muchos años. Tras la introducción de las nuevas máquinas System/370 con memoria virtual en 1972, IBM desarrolló MFT 2 para OS/VS1 , el último sistema de esta línea.
La primera versión de MFT [ 14 ] compartía gran parte del código y la arquitectura con PCP, y estaba limitada a cuatro particiones . Era muy engorroso gestionar múltiples particiones. Muchas instalaciones utilizaban Houston Automatic Spooling Priority (HASP) para mitigar esta complejidad.
MFT Versión II (MFT-II) [ 15 ] compartía gran parte del código del Programa de Control y del Planificador con MVT, y era mucho más flexible en su ejecución. El número máximo de particiones aumentó a 52.
Las modificaciones posteriores de MFT-II añadieron la subtarea , de modo que el número fijo de tareas dejó de ser fijo, aunque el número de particiones siguió siendo una limitación.
La experiencia indicó que no era aconsejable instalar MFT en sistemas con menos de 256 KiB de memoria, [ 16 ] lo cual en la década de 1960 era una cantidad bastante grande.
También se le denominaba SYS=INT en expansiones de macros que dependían del sistema.
MVT
La multiprogramación con un número variable de tareas (MVT) [ 17 ] era la más sofisticada de las tres configuraciones disponibles del programa de control de OS/360 , y una de las dos configuraciones disponibles en las versiones finales. [ 18 ] MVT estaba destinada a las máquinas más grandes de la familia System/360. Introducida en 1964, no estuvo disponible hasta 1967. Las primeras versiones presentaban muchos problemas y la más sencilla MFT se siguió utilizando durante muchos años. La experiencia indicaba que no era recomendable instalar MVT en sistemas con menos de 512 KiB de memoria.
MVT trataba toda la memoria no utilizada por el sistema operativo como un único pool del que se podían asignar regiones contiguas según fuera necesario, por un número ilimitado [ NB 8 ] de programas de aplicación y de sistema simultáneos. Este esquema era más flexible que el de MFT y, en principio, utilizaba la memoria de forma más eficiente, pero era propenso a la fragmentación : después de un tiempo, se podía encontrar que, aunque había suficiente memoria libre en total para ejecutar un programa, estaba dividida en bloques separados, ninguno de los cuales era lo suficientemente grande. [ 11 ] System/360 carecía de hardware de reubicación de memoria, por lo que no se podía utilizar la compactación de memoria para reducir la fragmentación. Una función llamada Rollout/Rollin podía intercambiar un trabajo en ejecución con el almacenamiento secundario para que su memoria estuviera disponible para otro trabajo. Sin embargo, el trabajo desplegado tendría que ser desplegado de nuevo a las ubicaciones de memoria originales cuando estas volvieran a estar disponibles. [ 19 ]
En 1971, la opción de tiempo compartido (TSO) para su uso con MVT se agregó como parte de la versión 20.1. TSO se popularizó en el desarrollo de programas porque proporcionaba un editor, la capacidad de enviar trabajos por lotes, recibir notificaciones de su finalización y ver los resultados sin esperar informes impresos, además de depuradores para algunos de los lenguajes de programación utilizados en System/360. TSO en OS/360 [ NB 9 ] se comunicaba con terminales mediante el método de acceso de telecomunicaciones (TCAM). El nombre de TCAM sugiere que IBM esperaba que se convirtiera en el método de acceso estándar para las comunicaciones de datos, pero de hecho, TCAM en OS/VS2 se usó casi exclusivamente para TSO y fue reemplazado en gran medida por el método de acceso de telecomunicaciones virtual (VTAM) a mediados y finales de la década de 1970.
También se le denominaba SYS=VMS en las invocaciones de algunas macros que dependían del sistema.
M65MP
El modelo 65 Multiprocessing (M65MP) es una variante de MVT. Se ejecuta en un 360/65 en modo multisistema [ 20 ]. M65MP intercepta el uso de la instrucción Set System Mask (SSM) para serializar el código deshabilitado entre las dos CPU. En general, un sistema M65MP tiene el mismo comportamiento e interfaces que cualquier otro sistema MVT.
El parámetro de palabra clave SYS=VMS incluía M65MP, así como MVT uniprocesador.
Características compartidas
PCP, MFT y MVT ofrecen facilidades similares desde el punto de vista de los programas de aplicación:
- La interfaz de programación de aplicaciones (API) y la interfaz binaria de aplicaciones (ABI) son las mismas, por lo que los programas de aplicación se pueden transferir entre MFT y MVT sin necesidad de modificarlos, volver a ensamblarlos o recompilarlos .
- El mismo JCL (Job Control Language, para iniciar trabajos por lotes), que era más flexible y fácil de usar, aunque más complejo, que el de DOS/360 .
- Las mismas facilidades ( métodos de acceso ) para leer y escribir archivos y para comunicaciones de datos:
- Los conjuntos de datos secuenciales normalmente se leen o escriben registro por registro, de principio a fin, utilizando BSAM o QSAM . Esta era la única técnica que se podía usar para unidades de cinta , lectores/perforadores de tarjetas e impresoras.
- En los archivos indexados ( ISAM ), una sección específica de cada registro se define como una clave que se puede utilizar para buscar registros específicos.
- En los archivos de acceso directo ( BDAM ), el programa de aplicación debe especificar el número de bloque relativo, la pista y el registro relativos (TTR) o la ubicación física real (MBBCCHHR) [ NB 10 ] en un dispositivo de almacenamiento de acceso directo (DASD) de los datos a los que quería acceder, o el punto de partida para una búsqueda por clave. La programación de BDAM no era fácil y la mayoría de las organizaciones nunca la usaron por sí mismas; pero era la forma más rápida de acceder a los datos en discos y muchas empresas de software la usaban en sus productos, especialmente sistemas de gestión de bases de datos como ADABAS , IDMS y DL/I de IBM . También está disponible en OS/360 Fortran. Los conjuntos de datos BDAM no están bloqueados, con un registro lógico por registro físico.
- Se utiliza principalmente una estructura de archivos adicional, el método de acceso y partición ( BPAM ), para gestionar las bibliotecas de programas. Si bien los archivos particionados deben comprimirse para recuperar espacio libre, esto tiene un impacto menor que un requisito similar para la biblioteca de imágenes principales de DOS/360 , ya que MFT y MVT permiten múltiples conjuntos de datos particionados y cada proyecto generalmente tiene al menos uno.
- Los grupos de datos de generación (GDG) se diseñaron originalmente para admitir procedimientos de copia de seguridad de abuelo-padre-hijo : si se modificaba un archivo, la versión modificada se convertía en el nuevo hijo, el hijo anterior en el padre, el padre anterior en el abuelo y el abuelo anterior se eliminaba. Sin embargo, se podían configurar GDG con más de 3 generaciones, y algunas aplicaciones los utilizaban para recopilar datos de un gran número variable de fuentes y alimentar la información a un solo programa; cada programa de recopilación creaba una nueva generación del archivo y el programa final leía todo el grupo como un único archivo secuencial (sin especificar una generación en el JCL).
- BTAM , un sistema de comunicaciones de datos, era primitivo y difícil de usar según los estándares actuales. Sin embargo, podía comunicarse con casi cualquier tipo de terminal, lo que representaba una gran ventaja en una época en la que apenas existía estandarización de los protocolos de comunicación.
- El sistema de nombres de archivos permite gestionarlos como jerarquías con nombres de hasta 8 caracteres en cada nivel, por ejemplo, PROYECTO.USUARIO.NOMBRE DE ARCHIVO. Esto está vinculado a la implementación del catálogo del sistema (SYSCTLG) y los volúmenes de control (CVOL), que utilizaban registros con claves de 8 bytes.
Compiladores, herramientas de servicio y utilidades
OS/360 proporciona los mismos lenguajes, ayudas de servicio y utilidades para PCP, MFT y MVT. Los sistemas OS/VS eliminan la ordenación/fusión y todos los procesadores de lenguaje, pero proporcionan un nuevo ensamblador, IFOX00 (Assembler XF). IBM lanzó productos de programas para reemplazar la mayoría [ NB 11 ] de los procesadores de lenguaje gratuitos y algunos de los otros programas de soporte. OS/360 admite lo siguiente:
- Ensamblador
- ALGOL 60
- COBOL
- FORTRAN IV
- PL/I
- Juego de rol
Características compartidas excluyendo PCP
Algunas funciones solo estaban disponibles para MFT y MVT:
- Una función de SPOOLing para MFT II y MVT (de la que carecía inicialmente DOS/360, pero que posteriormente fue proporcionada por la aplicación POWER).
- Las aplicaciones en MFT (versión 19 y posteriores) y MVT podían crear subtareas, lo que permitía la multitarea ( multihilo ) dentro de un mismo trabajo.
- Procesamiento de trabajos gráficos
- Procesamiento de trabajos gráficos satelitales
- Entrada a trabajos remotos
- Método de acceso a telecomunicaciones en cola (QTAM)
- Método de acceso a las telecomunicaciones (TCAM)
Sistemas operativos System/370 y de memoria virtual
Cuando se anunció System/370 en 1970, ofrecía esencialmente las mismas funcionalidades que System/360, pero con una velocidad de procesador aproximadamente cuatro veces superior a la de las CPU System/360 de precio similar. [ 21 ] Luego, en 1972, IBM anunció System/370 Advanced Functions , cuyo principal atractivo era que las futuras ventas de System/370 incluirían capacidad de memoria virtual , la cual también podría instalarse en las CPU System/370 existentes. Por lo tanto, IBM también se comprometió a ofrecer sistemas operativos mejorados que pudieran soportar el uso de memoria virtual. [ 22 ] [ 23 ]
Sistema operativo/360
IBM proporcionó una opción OS/360 SYSGEN para la compatibilidad con S/370, que no admitía DAT pero sí:
- Registros de control de soporte
- Soporte para E/S mejorada [ NB 12 ]
- Proporcionar un manipulador de verificación de máquina S/370
- Proporcionar soporte limitado para las nuevas funciones de temporizador.
Sistema operativo/VS1
OS/VS1 es el sucesor de MFT y ofrece funcionalidades similares con varias adiciones, por ejemplo, RES y memoria virtual. VSAM (véase más abajo) estuvo disponible inicialmente como una versión de componente independiente (ICR) y posteriormente se integró en la base de OS/VS1. [ 11 ]
IBM diseñó OS/VS1 para gestionar una carga de trabajo de tamaño medio (para la década de 1970) que consistía únicamente en aplicaciones de procesamiento por lotes , ejecutándose dentro de un número fijo de particiones del sistema operativo mediante el sistema de gestión de trabajos por lotes Job Entry Subsystem 1 (JES1) , que sustituyó a las funciones de cola de impresión de OS/360. Sin embargo, OS/VS1 podía, y a menudo lo hacía, admitir aplicaciones y usuarios interactivos ejecutando el monitor de procesamiento de transacciones CICS de IBM como un trabajo dentro de una de sus particiones. [ 24 ]
IBM lanzó mejoras menores para OS/VS1 hasta 1983, y en 1984 anunció que no habría más. AIX/370 , AIX/ESA , DPPX , IX/370 , OS/VS1 y TSS/370 son los únicos sistemas operativos System/370 que no tienen descendientes modernos.
Extensiones de programación básica (BPE)
Las extensiones de programación básica (BPE) de OS/VS1, producto 5662-257, brindan soporte para hardware nuevo de la década de 1980, como el almacenamiento de acceso directo 3380, y para el protocolo de enlace de máquinas virtuales entre VTAM y la aplicación de red de comunicaciones VM/VTAM (VCNA).
Sistema operativo/VS2 SVS y MVS
OS/VS2 versión 1 era simplemente MVT más memoria virtual y VSAM (ver más abajo). [ 11 ] Esta versión fue posteriormente renombrada como OS/VS2 SVS , por Single Virtual Storage, cuando se introdujo OS/VS2 versión 2, también conocida como MVS, por Multiple Virtual Storage. SVS se concibió como un paso intermedio entre MVT y MVS, y hoy en día solo tiene interés histórico.
En 1974, IBM lanzó lo que describió como OS/VS2 Release 2, pero que en realidad era un nuevo sistema operativo compatible con OS/VS2 Release 1. El Supervisor del nuevo sistema se había reescrito en gran medida en un nuevo dialecto de BSL, PL/S ; [ 25 ] [ 26 ] BSL y PL/S eran dialectos de PL/I con extensiones diseñadas para transcribir código de lenguaje ensamblador , incluidas las instrucciones privilegiadas necesarias para controlar la computadora en su conjunto. Los componentes del sistema operativo sensibles al tiempo, como el OS Dispatcher y el IOS , notablemente, entre muchos otros, permanecieron codificados en lenguaje ensamblador , que se había mejorado para OS/VS en el ensamblador IFOX00 [ NB 13 ] (del ensamblador IEUASM más antiguo de OS/360).
La característica más notable de la nueva versión fue que admitía múltiples espacios de direcciones virtuales: diferentes aplicaciones creían que estaban usando el mismo rango de direcciones virtuales, pero las instalaciones de memoria virtual del nuevo sistema las asignaban a diferentes rangos de direcciones de memoria reales. El espacio de direcciones de cada aplicación consta de 3 áreas: sistema operativo (una instancia compartida por todos los trabajos); un área de aplicación que era única para cada aplicación; área virtual compartida utilizada para varios propósitos, incluida la comunicación entre trabajos. IBM prometió que las áreas de aplicación siempre serían de al menos 8 MB. Este enfoque eliminó el riesgo de fragmentación de memoria que estaba presente en MVT y SVS, y mejoró la seguridad interna del sistema. [ 11 ] El nuevo sistema rápidamente se conoció como " MVS " (Multiple Virtual Storages), el OS/VS2 original se conoció como "SVS" (Single Virtual Storage) e IBM misma aceptó esta terminología y etiquetó a los sucesores de MVS como "MVS/ xxx ". [ 27 ]
MVS introdujo un nuevo enfoque para la gestión de la carga de trabajo, permitiendo a los usuarios definir objetivos de rendimiento para los trabajos por lotes de alta prioridad. Esto permitió a los usuarios asignar más trabajo a sus sistemas que antes sin afectar el rendimiento de los trabajos de máxima prioridad. [ 28 ]
MVS fue el primer sistema operativo convencional de IBM en el System/370 [ NB 14 ] que admitía lo que IBM denominó multiprocesamiento estrechamente acoplado , en el que 2 (más tarde, hasta 12, para mainframes de IBM, y hasta 16, para mainframes de Amdahl ) CPU compartían acceso concurrente a la misma memoria (y una sola copia del sistema operativo y los dispositivos periféricos), lo que proporcionaba mayor potencia de procesamiento y un grado de degradación gradual si fallaba una CPU (lo que, afortunadamente, se convirtió en un evento cada vez más raro, a medida que el tiempo de actividad del sistema aumentaba de horas a días y, luego, a años ).
Inicialmente, MVS venía con un gestor de colas de trabajo llamado JES2 (Job Entry Subsystem 2), derivado de HASP ( Houston Automatic Spooling Priority ), que también admitía la entrada remota de trabajos desde estaciones de trabajo ubicadas en otros lugares. JES2 solo puede gestionar trabajos para una CPU (que podría ser un sistema multiprocesador estrechamente acoplado). En 1976, IBM ofreció otra opción, JES3 (Job Entry Subsystem 3), derivado de ASP ( Attached Support Processor ), que permite que una CPU gestione una única cola de trabajo que alimenta de trabajo a varias CPU físicamente distintas, y por lo tanto permite que la consola de un operador gestione el trabajo de todas esas CPU. [ 29 ] Nota: JES1 era el gestor de colas de trabajo para OS/VS1 (véase más arriba).
VSAM
IBM esperaba que el método de acceso de almacenamiento virtual (VSAM) reemplazara sus métodos anteriores de acceso secuencial, indexado y directo, ya que proporcionaba versiones mejoradas de estos: [ 30 ] [ 31 ]
- Los conjuntos de datos secuenciados por entrada (ESDS) ofrecen funcionalidades similares a las de los conjuntos de datos secuenciales y BDAM (directos), ya que se pueden leer de principio a fin o directamente especificando un desplazamiento desde el inicio.
- Los conjuntos de datos secuenciados por clave (KSDS) representan una mejora significativa con respecto a ISAM de IBM: permiten claves secundarias con valores no únicos y claves formadas mediante la concatenación de campos no contiguos en cualquier orden; reducen considerablemente los problemas de rendimiento causados por los registros de desbordamiento utilizados para gestionar las inserciones y actualizaciones en ISAM; y disminuyen notablemente el riesgo de que un fallo de software o hardware durante una actualización del índice pueda corromperlo. VSAM proporciona una interfaz ISAM/VSAM que permite a las aplicaciones basadas en ISAM utilizar VSAM KSDS sin necesidad de reprogramación. [ 32 ]
- Los conjuntos de datos de registros relativos (RRDS) reemplazan a los conjuntos de datos de acceso directo ( BDAM ), permitiendo que las aplicaciones accedan a un registro especificando un número de registro relativo. A diferencia de ESDS y KSDS, RRDS no admite registros de longitud variable.
Estos formatos VSAM se convirtieron en la base de los sistemas de gestión de bases de datos de IBM , IMS/VS y DB2 (normalmente ESDS para el almacenamiento de datos propiamente dicho y KSDS para los índices).
VSAM también proporciona una nueva implementación de la función de catálogo que permite a las aplicaciones acceder a los archivos por nombre, sin necesidad de saber en qué unidad(es) de disco se encuentran. Los conjuntos de datos VSAM deben definirse en un catálogo VSAM antes de su uso, y los conjuntos de datos que no son VSAM también pueden listarse en un catálogo VSAM. El catálogo maestro de MVS debe ser un catálogo VSAM. [ 31 ] Los catálogos se proporcionaban originalmente en OS/360 en forma de CVOL; MVS añadió una estructura de catálogo separada para VSAM; posteriormente, IBM añadió un tercer tipo de catálogo conocido como catálogo ICF. [ 33 ] (IBM eliminó la compatibilidad con los catálogos CVOL y VSAM a partir del año 2000, ya que no eran compatibles con el efecto 2000; por lo tanto, en z/OS, solo se admiten los catálogos ICF). [ 34 ]
SNA
En 1974, IBM anunció Systems Network Architecture (SNA) , cuyo objetivo era reducir el coste de operar grandes redes de terminales, principalmente mediante un uso mucho más eficiente de las líneas de comunicación. Esta solución solo está disponible para los sistemas operativos de memoria virtual de IBM, ya que su componente de software para mainframes, VTAM , solo es compatible con estos sistemas operativos.
Versiones y mejoras posteriores de MVS
En 1977, IBM anunció MVS/System Extensions, un producto de software (es decir, que tenía un costo adicional) que mejoraba el rendimiento de MVS y añadía funcionalidad. [ 35 ]
Los descendientes del MVS original todavía se utilizan en los últimos descendientes de System/360, System/390 y zSeries ; se le cambió el nombre a OS/390 para System/390, y la versión de 64 bits para zSeries se denominó z/OS .
Estructura, interfaz y lógica
Por razones de extensión, esta sección se centra en la opción MVT de OS/360; PCP y MFT son muy similares, con cambios en la nomenclatura y algunas diferencias menores. OS/VS1 y SVS tienen una estructura muy parecida a la de MFT II y MVT, mientras que MVS , aunque conserva gran parte de la lógica de MVT, presenta mejoras importantes que se abordan mejor en un artículo aparte. Este artículo se ajusta al uso que hace IBM del término « almacenamiento» en lugar de «memoria» .
asignación de CPU
OS/360 asigna procesadores a las tareas, que son análogas a los procesos ligeros o hilos de otros sistemas. Cada tarea tiene un Bloque de Control de Tareas (BCT) y una pila de Bloques de Solicitud [ NB 15 ] (RB). Una tarea puede ser despachable o no despachable [ NB 16 ] y un RB puede estar en espera [ NB 17 ] o no estar en espera. El Despachador selecciona la tarea despachable de mayor prioridad cuyo RB actual no esté en espera.
MVS asigna procesadores a espacios de direcciones , que son análogos a procesos, y a bloques de solicitud de servicio (SRB) y tareas dentro de esos espacios de direcciones. Cada espacio de direcciones tiene un bloque de control de espacio de direcciones (ASCB), una cola de SRB y una cola de TCB.
Diseño de almacenamiento
En OS/360, todo el almacenamiento es visible para todo el código, aunque la protección de búsqueda puede impedir el acceso de código no privilegiado a algunos bloques de control o entre trabajos. El almacenamiento principal para MVT se divide en un área del sistema ( fija ) en la parte inferior del almacenamiento real, un área común en la parte superior y un área privada en el medio. Estas contienen las siguientes áreas.
- Área fija
- Esta área comienza en la ubicación absoluta 0 y contiene
- El núcleo.
- Esta es una sección de almacenamiento en la ubicación 0, cargada desde
SYS1.NUCLEUS(IEANUCxx), donde xx es normalmente 01. Para el modelo 65 MP (M65MP), hay una copia separada del prefijo (ubicaciones 0-4095) para cada procesador [ 36 ] : 72 y el término dirección absoluta se refiere a la dirección realmente enviada a la memoria después de cualquier prefijo, mientras que el término dirección real se refiere a la dirección antes de que se aplique cualquier prefijo. El núcleo contiene manejadores de interrupciones, bloques de control, rutinas SVC de tipo 1 y tipo 2 , área transitoria SVC, rutinas que pueden ser llamadas directamente por código no privilegiado y rutinas que solo pueden ser llamadas por código privilegiado. - Área de cola del sistema (SQA).
- Esta es un área desde la cual el sistema adquiere almacenamiento compartido entre trabajos.
- Zona privada.
- Esta es un área desde la cual MVT adquiere almacenamiento para las regiones. Los tipos de regiones incluyen:
- Trabajo
- Asignado por el Iniciador para trabajos por lotes enviados por, por ejemplo, lector de tarjetas, CRJE, RJE, TSO.
- Primer plano
- Contiene una sesión TSO intercambiada . Creada por la tarea de Control de Tiempo Compartido (TSC).
- Montar
- Asignado por el Control de Tareas Iniciadas (STC) para el comando MOUNT del operador .
- Tarea iniciada
- Asignado por el Control de Tareas Iniciadas (STC) para el comando START del operador .
- Área común
'Esta es una sección de almacenamiento en la dirección física más alta. Contiene
- Zona residencial BLDL
- Esta es un área que almacena en caché las entradas de directorio seleccionadas.
- Región del planificador maestro
- El planificador maestro y la tarea de comunicación se ejecutan en esta región, que es asignada por NIP .
- Área de paquetes de enlaces [ NB 18 ] (LPA)
- Esta es un área en la que MVT carga rutinas de métodos de acceso reentrante y otros programas en el momento del IPL que posteriormente pueden ser compartidos por todos los trabajos.
Diseño de almacenamiento SVS
SVS es similar, excepto que el área del sistema está en la parte superior e inferior del almacenamiento virtual en lugar del almacenamiento real, el núcleo está en almacenamiento Virtual=Real (V=R), el área privada contiene un Área de Cola del Sistema Local (LSQA) para cada región y el LPA se divide en:
- Área de paquete de enlaces paginables (PLPA)
- Esta es un área que contiene todos los módulos en SYS1.LPALIB; el conjunto de datos de página que lo respalda se conserva entre IPL, excepto cuando se especifica la opción de crear LPA (CLPA).
- Área de paquete de enlaces modificada (MLPA)
- Esta es un área que contiene módulos listados en un miembro IEALPAxx de SYS1.PARMLIB y que reemplazan módulos en el PLPA durante la duración de un IPL.
- Área de paquete de enlaces fijos (FLPA).
- Esta es un área que contiene módulos fijos de página listados en un miembro IEAFIXxx de SYS1.PARMLIB y que reemplazan a los módulos en el PLPA durante la duración de un IPL.
Diseño de almacenamiento MVS/370
En MVS, todos los espacios de direcciones comparten el área del sistema [ NB 19 ] pero no el área privada. MVS añade:
- Área de almacenamiento común (CSA)
- Esta es un área desde la cual MVS puede asignar dinámicamente almacenamiento compartido por todos los espacios de direcciones.
- Área de trabajo del sistema (SWA)
- Esta es un área que contiene bloques de control que en OS/360 y SVS estaban contenidos en SYS1.SYSJOBQE.
Diseño de almacenamiento MVS/XA, MVS/ESA y OS/390
En MVS/XA y posteriores, hay áreas del sistema, privadas y comunes debajo de la Línea de 16 Mi B (2 24 bytes) y áreas extendidas entre16 millas B y2 Gi B (2 31 bytes).
Diseño de almacenamiento de z/OS
En z/OS , la disposición del almacenamiento [ 37 ] es similar a la de MVS/XA, MVS/ESA y OS/390; el almacenamiento por encima de la La barra 2 Gi B es administrada por servicios diferentes al almacenamiento que se encuentra debajo de la barra.
Cola de trabajos del sistema, SYSIN y SYSOUT
OS/360 almacena la cola de trabajos del sistema como registros de 176 bytes en SYS1.SYSJOBQE. [ 38 ] [ 39 ] Aparte de los bloques de control utilizados para JCL y mensajes, el procesamiento SPOOL de OS/360 utiliza conjuntos de datos DASD temporales normales a los que apuntan los bloques de conjunto de datos (DSB) en la cola de trabajos.
Un trabajo puede tener conjuntos de datos de entrada del sistema ( SYSIN ) asociados creados por el lector/intérprete a partir de datos en flujo en tarjetas, DASD o cinta, yArchivos de salida del sistema ( SYSOUT ) creados por el trabajo; el término SYSOUT también incluye los mensajes asociados con el trabajo. Un trabajo puede tener SYSOUT en varias clases de salida, y el escritor de salida del sistema procesa cada clase de salida por separado. [ 38 ] [ 39 ]
El soporte en OS/VS2 R1 (SVS) es esencialmente el mismo. Los programas Attached Support Processor (ASP) y Houston Automatic Spooling Priority (HASP) [ 40 ] usurpan las funciones de spooling de OS/360 y SVS, manteniendo los conjuntos de datos SYSIN y SYSOUT con sus propios mecanismos SPOOL.
En OS/VS1, los conjuntos de datos SYSIN y SYSOUT son gestionados por el subsistema de entrada de trabajos 1 (JES1), que conserva muchos de los mismos comandos de operador, pero reemplaza el mecanismo SPOOL.
En MVS , OS/VS2 R2 y versiones posteriores, los conjuntos de datos SYSIN y SYSOUT son gestionados por un subsistema de entrada de trabajos (JES2 o JES3), que conserva muchos de los comandos de operador HASP o ASP y proporciona sus propios mecanismos SPOOL.
proceso IPL
Cuando los operadores seleccionan inicialmente LOAD, el sistema envía un READ IPLcomando al dispositivo seleccionado, leyendo 24 bytes del cilindro 0, pista 0, registro 1, en la ubicación de almacenamiento 0. [ 36 ] : 22 bytes 8-23 leídos y transferidos al registro de arranque [ 41 ] cilindro 0, pista 0, registro 2, que a su vez lee y transfiere al cargador IPL. El cargador IPL realiza el mantenimiento inicial, localiza el núcleo solicitado y lo carga con reubicación; el csect del controlador de interrupción siempre está en la ubicación 0 y el csect de inicialización del núcleo siempre es el último, para que pueda ser descartado eventualmente. El programa de inicialización del núcleo (NIP) inicializa varios componentes del sistema.
Inicialmente, NIP debe proporcionar los servicios que necesita. Sin embargo, a medida que inicializa diversas funciones del sistema operativo, comienza a utilizar servicios estándar; por ejemplo, utiliza la OBTAINmacro para leer un bloque de control de conjunto de datos (DSCB) de una tabla de contenido de volumen (VTOC).
NIP lee los miembros del SYS1.PARMLIBconjunto de datos para obtener diversos datos operativos. Estos miembros pueden especificarse por defecto, por el operador o mediante parámetros en otros miembros.
Finalmente, NIP crea una región de planificación maestra a partir del área privada y la transfiere a IEEVIPL para inicializar el planificador maestro y la tarea de comunicación, lo que completa la inicialización del sistema.
Unidades de trabajo similares a un puesto de trabajo
Además de los trabajos por lotes, OS/360 admite varias categorías de trabajo que gestiona de forma similar. En todos los casos, el sistema debe procesar JCL, asignar una región, asignar dispositivos e iniciar el programa del paso del trabajo. Para un trabajo por lotes, el lector/intérprete procesa JCL desde un dispositivo externo; para STARTcomandos MOUNTy TSOLOGON , el sistema genera JCL invocando un procedimiento catalogado.
Para cada unidad de trabajo, el lector/intérprete convierte el JCL en bloques de control ( tablas ) en SYS1.SYSJOBQE (cola de trabajos del sistema) y el iniciador utiliza esos bloques de control para ejecutar el trabajo. Los detalles que se describen a continuación corresponden a MVT y SVS; PCP no admite el almacenamiento temporal y el manejo de particiones MFT difiere ligeramente del manejo de regiones MVT.
Lector/Intérprete
El lector/intérprete (R/I) realiza dos funciones, dependiendo de cómo lo llame el sistema.
Cuando el sistema operativo inicializa el planificador maestro , procesa un MOUNTcomando, procesa un STARTcomando o procesa un TSOLOGON , el sistema genera JCL invocando un procedimiento catalogado e invoca el R/I, seguido del iniciador .
Para un procedimiento de lector, el R/I crea una entrada de trabajo de entrada separada en la cola de trabajos para cada trabajo en el flujo de entrada. El R/I reconoce los conjuntos de datos DD* explícitos, DD* implícitos y DD DATA in-stream (SYSIN) explícitos, y asigna un conjunto de datos DASD separado para cada uno, utilizando un DSNAME especial que incluye el nombre del trabajo y una marca de tiempo.
Iniciador
El Iniciador realiza dos funciones, dependiendo de cómo lo llame el sistema.
Para la iniciación del planificador maestro, el procesamiento de comandos y el procesamiento de TSOLOGON , el sistema llama al iniciador para ejecutar el trabajo que acaba de crear el R/I, en una región recién adquirida.
Para los trabajos por lotes, el Iniciador selecciona el trabajo de la cola de entrada, adquiere una región para cada paso y ejecuta los pasos en secuencia, omitiendo pasos cuando se solicita en el JCL.
Escritor
El escritor de salida del sistema toma trabajos de la cola de trabajos y transcribe los datos SYSOUT, generalmente a una impresora, perforadora de tarjetas o unidad de cinta. Selecciona el trabajo en función, por ejemplo, de la clase de salida.
Interfaces
API
OS/360 cuenta con un bloque de control conocido como Tabla de Vectores de Comunicación (CVT), que contiene punteros a otros bloques de control y a diversas rutinas. Algunas macroinstrucciones de OS/360 hacen referencia a campos de la CVT y de otros bloques de control.
OS/360 dispone de macros para proporcionar asignaciones de disección de algunos bloques de control, aunque muchas macros tienen desplazamientos codificados directamente en lugar de los nombres que aparecen en las macros de asignación.
Los servicios de OS/360 suelen tener parámetros en el registro 1; algunos usan los registros 0 y 1, y otros usan los registros 0, 1 y 15.
Las macros de servicio de OS/360 suelen tener tres formas:
- Ejecutar formulario
- Realiza la función utilizando una lista de parámetros proporcionada.
- Formulario de lista
- Genera una lista de parámetros con parámetros preestablecidos que pueden ser utilizados por una macro de formulario ejecutable.
- Formato estándar
- Genera la lista de parámetros necesaria y ejecuta la función.
Muchos de los servicios importantes se implementan en rutinas SVC y conservan los registros 2-14. Otros se implementan como subrutinas directamente invocables, con direcciones de entrada en bloques de control del sistema, y requieren que el registro 13 apunte a un área de guardado estándar; estas suelen conservar los registros 2-13. En ambos casos, el registro 15 al salir normalmente contiene un código de retorno; muchos servicios devuelven datos adicionales en los registros 0 y 1.
Sincronización
OS/360 se basa en gran medida en la serialización mediante un Bloque de Control de Eventos (ECB), que representa un evento que se puede esperar. Un ECB contiene un código de finalización para un evento o la dirección de un Bloque de Solicitud (RB) que espera dicho evento. La macro WAIT pone una tarea en estado de espera hasta que ocurran los eventos especificados; la macro POST marca un ECB como completado, almacena el código de finalización en el ECB y decrementa el contador de espera en el RB en espera, si lo hay, lo que posiblemente provoque que se envíe la tarea asociada.
MVS añade otros métodos de sincronización.
Publicación por entregas
OS/360 utiliza las macros ENQ y DEQ para serializar el acceso a los recursos, identificados por un nombre de cola ( qname o major) y un nombre de recurso ( rname o minor). La macro ENQ retrasa una tarea hasta que todos los recursos solicitados estén disponibles. La macro DEQ devuelve los recursos con nombre solicitados previamente por una macro ENQ. Una macro DEQ no tiene por qué liberar todos los recursos obtenidos por las solicitudes ENQ correspondientes, pero las solicitudes DEQ posteriores deben liberarlos todos.
MVS añade otros métodos de serialización.
Consolas de operador
OS/360 requiere al menos una consola de operador; existen dos niveles de soporte.
- Primario
- Este es un nivel básico de soporte que permite solo una consola principal y una consola alternativa opcional.
- Compatibilidad con múltiples consolas (MCS)
- MCS permite una consola maestra y hasta 31 consolas secundarias. Cualquiera de las 32 consolas puede tener una consola alternativa para recibir su tráfico de mensajes en caso de fallo. MCS permite grabar el tráfico de mensajes en un archivo de registro impreso, que puede ser una consola secundaria o el registro del sistema (SYSLOG) en la unidad DASD. MCS incluye la compatibilidad con la consola de operador de pantalla independiente del dispositivo (DIDOCS), un marco unificado para la compatibilidad con consolas basadas en CRT.
Cada mensaje emitido por un operador de escritura (WTO) o un operador de escritura con respuesta (WTOR) tiene asociado uno o más códigos de enrutamiento. El operador puede limitar la consola para que muestre únicamente códigos de enrutamiento específicos. Un ejemplo típico sería ubicar una consola en una biblioteca de cintas y mostrar solo los mensajes relevantes para el administrador de la biblioteca. El código de enrutamiento especial 7 hace que el texto del mensaje se incluya en el registro de mensajes del trabajo.
Cada mensaje también tiene un descriptor que controla cómo se procesa.
Uno de los comandos clave del operador es REPLY, que proporciona una respuesta a la WTORmacro. El operador solo puede responder a un WTOR en una consola que haya recibido su texto de mensaje.
Un comando clave para las consolas de visualización, por ejemplo, 2250 , 2260 , 3270 , es CONTROL ( K ), que establece opciones de procesamiento para, por ejemplo, el desplazamiento.
JCL
Cronología
Estos datos provienen del historial de versiones de sistemas operativos IBM 360 , cronología de mercado de productos y servicios System/370 , IBM. "Fechas de anuncio, disponibilidad y retirada de marketing y servicios de z/OS, z/OS.e y OS/390" . Archivado del original el 14 de marzo de 2008.y las cartas de anuncio de IBM.
Véase también
Referencias en la cultura popular
Notas
- ↑ Tan solo unos años después de Atlas Supervisor , Burroughs MCP y GECOS
- ↑ VMS no estaba relacionado con el sistema VMS para DEC VAX .
- ↑ Las correcciones temporales del programa no estaban disponibles como código fuente.
- ↑ IBM finalmente proporcionó instalaciones interactivas para OS/360, por ejemplo, CRJE, ITF, TSO .
- ↑ Por ejemplo, HASP no se podía ejecutar en PCP.
- ↑ El operador podía cambiarlos manualmente introduciendo un comando DEFINE desde una consola de operador, pero el sistema no los ajustaba automáticamente para que coincidieran con la carga de trabajo.
- ↑ Pero no a MFT II
- ↑ Sujeto a la disponibilidad de recursos, por ejemplo, memoria para una región, clave de protección para una región de aplicación.
- ↑ Posteriormente, IBM añadió la capacidad de utilizar VTAM para TSO, pero solo en MVS.
- ↑ El conjunto de datos debe tener el atributo inamovible.
- ↑ IBM no proporcionó un reemplazo para ALGOL 60 .
- ↑ Pero no es IDEAL
- ↑ También se incluye con DOS/VS y VM/370 .
- ↑ OS/360 M65MP y TSS/360 admitían SMP.
- ↑ El bloque de solicitud de servicio de MVS no está asociado con un TCB específico, a pesar del nombre.
- ↑ Es decir, tiene uno o más indicadores de no despacho establecidos en el TCB.
- ↑ Es decir, tiene un contador de espera distinto de cero.
- ↑ También conocida como cola de paquetes de enlaces.
- ↑ Excepto que hay una copia separada del PSA para cada procesador.
Referencias
Citas
- ↑ Conceptos y funciones del sistema operativo IBM/360 (PDF) . IBM. 1965. C28-6535-0.
- 1 2 3 4 INTRODUCCIÓN .
- ↑ "DISTRIBUCIÓN DE PROGRAMAS CON LICENCIA DE IBM Y MATERIALES DE PROGRAMAS CON LICENCIA Y ACUERDO MODIFICADO PARA PROGRAMAS CON LICENCIA DE IBM" . Cartas de anuncio. IBM . 8 de febrero de 1983. LTR ENUS283-016 . Consultado el 18 de noviembre de 2022 .
- ↑ "SISTEMA OPERATIVO IBM OS/360" . Enciclopedia Británica . Consultado el 11 de marzo de 2019 .
- ↑ "System/360 Modelo 91" . Archivos de IBM . IBM. 23 de enero de 2003. Archivado del original el 10 de marzo de 2005.
- 1 2 Johnston (1 de abril de 2005). "VSE: Una mirada a los últimos 40 años" . z/Journal (abril/mayo de 2005). Thomas Communications, Inc. Archivado del original el 4 de marzo de 2009.
- ↑ Chuck Boyer. "La revolución 360" (PDF) .
- ↑ INTRODUCCIÓN , pág. 50, Configuración del programa de control .
- ↑ TY Johnston. "Transición a un entorno de máquinas virtuales total" (PDF) . Centro del acelerador lineal de Stanford .
- ↑ "La encuesta SHARE de mediados de los setenta" . Archivado del original el 12 de mayo de 2008.
- 1 2 3 4 5 6 Auslander, MA ; Jaffe, JF (1973). "Estructura funcional de los sistemas operativos de almacenamiento virtual de IBM, Parte I: Influencias de la traducción dinámica de direcciones en la tecnología del sistema operativo". IBM Systems Journal . 12 (4). IBM: 368–381 . doi : 10.1147/sj.382.0340 .
- ↑ Especificaciones del lenguaje BSL (PDF) . IBM. Z28-6642-0.
- ↑ "El IBM 360/67 y CP/CMS" .
- ↑ Sistema operativo IBM System/360 Multiprogramación con un número fijo de tareas (MFT): conceptos y consideraciones (PDF) . Primera edición. IBM. Octubre de 1966. GC27-6926-0.
- ↑ Planificación de multiprogramación con un número fijo de tareas, versión II (MFT II) (PDF) . Primera edición. IBM. Octubre de 1967. C27-6939-0.
- ↑ Ray Saunders. "MVS... ¿Y antes de OS/360 ?" . Archivado del original el 20 de diciembre de 2007.
- ↑ Guía MVT del sistema operativo IBM System/360, versión 21 (PDF) . Quinta edición. IBM. Marzo de 1972. GC28-6720-4.
- ↑ INTRODUCCIÓN , págs. 50–51, Configuración del programa de control "Existen dos configuraciones del programa de control [OS/360: ... La configuración de multiprogramación con un número variable de tareas (MVT)"
- ↑ IBM Corporation (1973). Sistema operativo Generación Versión 21 (PDF) . pág. 182.
- ↑ "Apéndice A. Sistema de multiprocesamiento". Características funcionales del IBM System/360 Modelo 65 (PDF) . Cuarta edición. IBM. Septiembre de 1968. págs. 30–34 . A22-6884-3.
- ↑ "Anuncio del sistema/370" . IBM. 30 de junio de 1970. Archivado del original el 16 de enero de 2005.
- ↑ "Cronología de DPD (1970–1974)" . IBM. 23 de enero de 2003. Archivado del original el 23 de octubre de 2009.DPD = División de Procesamiento de Datos, que era la responsable de los sistemas medianos y grandes de IBM.
- ↑ Pugh, EW; Johnson, LR; Palmer, JH (1991). IBM's 360 and Early 370 Systems . MIT Press. ISBN 0-262-16123-0.
- ↑ "Historia del servidor de transacciones CICS" . IBM . 18 de junio de 2024.
- ↑ Guía para listados generados por PL/S . Primera edición. IBM. Julio de 1972. GC28-6786-0.
- ↑ Guía de PL/S II (PDF) . Primera edición. IBM. Mayo de 1974. GC28-6794-0.
- ↑ "Comunicado de prensa técnico 3033" . Archivado del original el 20 de abril de 2005.
- ↑ Implementación de la gestión de carga de trabajo de MVS
- ↑ Automatización del subsistema de entrada de trabajos 3 (JES3)
- ↑ VSAM Desmitificado (PDF) (Tercera edición). Marzo de 2013.
- 1 2 Jay Moseley (17 de enero de 2015). "Tutorial de VSAM" .
- ↑ Jay Moseley. "Interfaz ISAM / VSAM" . Consultado el 3 de junio de 2023 .
- ↑ Sawyer, Peter (3 de marzo de 1989). SVC 26 y lo que puede hacer . SHARE.
- ↑ Pryor, Steve (febrero de 2003). "¿Dónde están los datos? Obtención de información del catálogo" (PDF) . Soporte técnico . NaSPA . Consultado el 5 de marzo de 2017 .
- ↑ "Comunicado de prensa 3033" . Archivado del original el 20 de abril de 2005.
- 1 2 Principios de funcionamiento del sistema IBM/360 (PDF) . Biblioteca de referencia de sistemas IBM (octava edición). Septiembre de 1968. A22-6821-7 . Consultado el 23 de mayo de 2022 .
- ↑ Memoria virtual de z/OS (PDF) . SHARE Phoenix 2019. SHARE Inc. 13 de marzo de 2019. Número de sesión: 24662. Consultado el 16 de agosto de 2022 .
- 1 2 OS360OpRefOS , pp. MFT-001–MFT-076, Sistemas con MFT .
- 1 2 OS360OpRefOS , pp. MVT-001–MVT-074, Sistemas con MVT .
- ↑ "Datos SYSOUT" (PDF) . Guía del usuario de OS/VS2 HASP II versión 4 - Número de programa 370H-TX-001 - Versión 1.7 de VS2 SVS (PDF) . Sistemas. IBM . pág. 21. GC27-0052-0 . Consultado el 1 de agosto de 2025 .
- ↑ IPL , pág. 3, El cargador inicial del programa.
- ↑ "Ciclo de vida del producto z/OS 2.5" . IBM.
Manuales de OS/360
- DMMAC
- Instrucciones de macros para la gestión de datos del sistema operativo - Versión 21.7 (PDF) . Biblioteca de referencia de sistemas IBM (segunda edición). IBM . Junio de 1973. GC26-3794-1 . Consultado el 7 de junio de 2022 .
- DMSVC
- Guía de servicios de macros de administración de datos del sistema operativo - Versión 21.7 (PDF) . Biblioteca de referencia de sistemas IBM (Tercera edición). IBM . Julio de 1973. GC26-3746-2 . Consultado el 7 de junio de 2022 .
- DMSYS
- Gestión de datos del sistema operativo para programadores de sistemas - Versión 21 (PDF) . Biblioteca de referencia de sistemas IBM (Duodécima edición). IBM . Abril de 1973. GC28-6550-11 . Consultado el 7 de junio de 2022 .
- INTRO
- Introducción a OS/360 (PDF) . Biblioteca de referencia de sistemas (cuarta edición). IBM . 1972. GC28-6534-3 . Consultado el 7 de julio de 2022 .
- Boletín técnico GN28-2512 . 15 de enero de 1972.
- JCLREF
- Sistema operativo IBM System/360: Referencia del lenguaje de control de trabajos - Versión 21.7 del sistema operativo (PDF) . Biblioteca de referencia de sistemas IBM (quinta edición). IBM . Agosto de 1976. GC28-6704-4 . Consultado el 7 de junio de 2022 .
- JCLUSER
- Sistema operativo IBM System/360: Guía del usuario del lenguaje de control de trabajos (PDF) . Biblioteca de referencia de sistemas IBM (Tercera edición). IBM . Junio de 1971. GC28-6703-2 . Consultado el 7 de junio de 2022 .
- LKED
- IBM OS - Linkage Editor and Loader - Program Numbers 360S-ED-510 - 360S-ED-521 - 360S-LD-547 (PDF) . IBM Systems Reference Library (Undécima edición). IBM . Abril de 1973. GC28-6538-10 . Consultado el 7 de junio de 2022 .
- MFT
- Sistema operativo IBM System/360: Guía MFT - Versión 21.7 del sistema operativo (PDF) . Biblioteca de referencia de sistemas IBM (undécima edición). IBM . Agosto de 1974. GC27-6939-10 . Consultado el 7 de junio de 2022 .
- MVT
- Sistema operativo IBM System/360: Guía MVT - Versión 21.7 del sistema operativo (PDF) . Biblioteca de referencia de sistemas IBM (Sexta edición). IBM . Agosto de 1974. GC28-6720-5 . Consultado el 7 de junio de 2022 .
- Sistema operativo IBM System/360: Manual de referencia del operador - Versión 21 del sistema operativo (PDF) . Biblioteca de referencia de sistemas. IBM . Consultado el 21 de julio de 2025 .
- SMF
- OS SMF (PDF) . Biblioteca de referencia de sistemas IBM (octava edición). IBM . Abril de 1973. GC28-6712-7 . Consultado el 7 de junio de 2022 .
- SORBER
- Versión 21 del sistema operativo: Sistema operativo IBM System/360 - Servicios de supervisión e instrucciones macro (PDF) . Biblioteca de referencia de sistemas IBM (octava edición). IBM . Septiembre de 1974. GC28-6646-7 . Consultado el 7 de junio de 2022 .
- SYSCB
- Sistema operativo IBM System/360: Bloques de control del sistema (PDF) . Biblioteca de referencia de sistemas IBM (Décima edición). IBM . Abril de 1973. GC28-6628-9 . Consultado el 7 de junio de 2022 .
- SYSGEN
- Versión 21.8 del sistema operativo (PDF) . Biblioteca de referencia de sistemas IBM (decimocuarta edición). IBM . Agosto de 1974. GC28-6554-13 . Consultado el 7 de junio de 2022 .
- SYSPG
- Sistema operativo IBM System/360: Guía del programador del sistema (PDF) . Biblioteca de referencia de sistemas IBM (novena edición). IBM . Junio de 1971. GC28-6550-9 . Consultado el 7 de junio de 2022 .
- TSO
- Sistema operativo IBM System/360: Guía de opciones de tiempo compartido - Versión 21.7 del sistema operativo (PDF) . Biblioteca de referencia de sistemas IBM (octava edición). IBM . Abril de 1973. GC28-6698-7 . Consultado el 7 de junio de 2022 .
- TSOCMD
- Sistema operativo IBM System/360: Opción de tiempo compartido - Referencia del lenguaje de comandos - Versión 21.7 del sistema operativo (PDF) . Biblioteca de referencia de sistemas IBM (quinta edición). IBM . Abril de 1973. GC28-6732-4 . Consultado el 7 de junio de 2022 .
Manuales de lógica de OS/360
- iOS 2.ª edición
- Sistema operativo IBM System/360 - Supervisor de entrada/salida - Número de programa 360S-CI-535 (PDF) . Lógica del programa (segunda edición). IBM . Abril de 1967. GY28-6616-1 . Consultado el 7 de junio de 2022 .
- iOS
- Lógica de supervisión de E/S del sistema operativo - Versión 21 - Número de programa 360S-CI-535 (PDF) . Lógica de programas (Décima edición). IBM . Febrero de 1972. GY28-6616-9 . Consultado el 7 de junio de 2022 .
- IPL
- Sistema operativo IBM System/360 - Cargador de programas inicial y programa de inicialización del núcleo - Número de programa 360S-CI-535 (PDF) . Lógica del programa (Sexta edición). IBM . Marzo de 1972. GY28-6661-5 . Consultado el 7 de junio de 2022 .
- PCPJOB
- Sistema operativo IBM System/360: Gestión de trabajos, - Manual de lógica de programas, - Número de programa 360S-CI-505 (PDF) (Sexta ed.). IBM . Junio de 1970. GY28-6613-5 . Consultado el 7 de junio de 2022 .
- TRABAJO MVT
- Sistema operativo IBM System/360: Gestión de trabajos MVT, Manual de lógica de programas, - Número de programa 360S-CI-535 Versión del sistema operativo 21 (PDF) (Décima edición). IBM . Marzo de 1972. GY28-6660-9 . Consultado el 7 de junio de 2022 .
- MVTSUP
- Sistema operativo IBM System/360 - Supervisor MVT (PDF) . Lógica de programas (octava edición). Mayo de 1973. GY28-6659-7 . Consultado el 7 de junio de 2022 .
Lecturas adicionales
Manuales
- IBM, "Guía MVT" - GC28-6720-4, R21, marzo de 1972
- IBM, "MVT Supervisor PLM" - GY28-6659-7, Manual de lógica de programas, marzo de 1972
- IBM, "Supervisor de E/S del sistema operativo PLM" - GY28-6616-1, Manual de lógica de programas, abril de 1967
- IBM, "Supervisor de E/S del sistema operativo PLM" - GY28-6616-9, Manual de lógica de programas, R21.7, abril de 1973
Libros
- Brooks, Jr., Frederick P. (1975). " El hombre-mes mítico: ensayos sobre ingeniería de software ", Addison-Wesley. ISBN 0-201-00650-2(Reimpreso con correcciones, enero de 1982)
- Binder, Robert V. (1985). " Depuración de aplicaciones: Un manual de errores de MVS para programadores de Cobol, Assembly, PL/I y Fortran ", Prentice-Hall. ISBN 0-13-039348-7.
- Pugh, Emerson W.; Johnson, Lyle R.; Palmer, John H. (1991). Los sistemas 360 y los primeros 370 de IBM , Cambridge : MIT Press. (págs. 291–345)
Artículos
- "Construyendo el sistema/El mainframe 360 casi destruyó a IBM" . IEEE Spectrum . 5 de abril de 2019. Consultado el 2 de mayo de 2022 .
Enlaces externos
- Sistema operativo/360 1965–1972
- MVS... Larga historia en archive.org
- Sistemas operativos para mainframes de IBM
- Introducciones relacionadas con la informática en 1964
- software de la década de 1960