La historia de los sistemas operativos para mainframes de IBM es significativa dentro de la historia de los sistemas operativos para mainframes , debido a la posición de larga data de IBM como el mayor proveedor mundial de hardware para mainframes . Los mainframes de IBM ejecutan sistemas operativos suministrados por IBM y por terceros.
Los sistemas operativos de los primeros mainframes de IBM rara vez fueron muy innovadores, a excepción de TSS/360 y los sistemas de máquinas virtuales que comenzaron con CP-67 . Sin embargo, la reconocida reputación de la compañía por su preferencia por la tecnología probada generalmente ha generado en los usuarios potenciales la confianza necesaria para adoptar los nuevos sistemas de IBM con bastante rapidez. Los sistemas operativos actuales de IBM para mainframes, z/OS , z/VM , z/VSE y z/TPF , son sucesores retrocompatibles de los introducidos en la década de 1960.
Antes del sistema/360
IBM tardó en introducir sistemas operativos. General Motors produjo General Motors OS en 1955 y GM-NAA I/O en 1956 para su uso en sus propias computadoras IBM; y en 1962 Burroughs Corporation lanzó MCP y General Electric presentó GECOS , en ambos casos para uso de sus clientes. [ 1 ] [ 2 ]
Los primeros sistemas operativos para computadoras IBM fueron escritos a mediados de la década de 1950 por clientes de IBM con máquinas muy caras de US$2.000.000 (equivalente a unos US$24.000.000 en 2025) , que habían permanecido inactivas mientras los operadores configuraban los trabajos manualmente, por lo que querían un mecanismo para mantener una cola de trabajos. [ 3 ]
Estos sistemas operativos solo funcionan en unos pocos modelos de procesador y son adecuados únicamente para cálculos científicos y de ingeniería. Otros ordenadores IBM u otras aplicaciones funcionan sin sistemas operativos. Sin embargo, uno de los ordenadores más pequeños de IBM, el IBM 650 , introdujo una función que posteriormente se integró en OS/360 , según la cual, si el procesamiento se interrumpe por un "error de procesamiento aleatorio" (fallo de hardware), la máquina reanuda automáticamente la ejecución desde el último punto de control en lugar de requerir que los operadores reinicien el trabajo manualmente desde el principio. [ 4 ]
De General Motors GM-NAA I/O a IBSYS
La división de investigación de General Motors produjo el sistema de E/S GM-NAA para su IBM 701 en 1956 (a partir de un prototipo, el Sistema Operativo GM, desarrollado en 1955), y lo actualizó para el sucesor del 701. En 1960, la asociación de usuarios de IBM, SHARE, lo adoptó y produjo una versión actualizada, el Sistema Operativo SHARE . [ 3 ]
Finalmente, IBM se hizo cargo del proyecto y proporcionó una versión mejorada llamada IBSYS con las computadoras IBM 7090 e IBM 7094. IBSYS requería 8 unidades de cinta , o menos si había una o más unidades de disco. Sus componentes principales son un lenguaje de control de trabajos basado en tarjetas , que es la interfaz de usuario principal; compiladores para FORTRAN y COBOL ; un ensamblador ; y varias utilidades, incluido un programa de ordenación . [ 5 ] [ 6 ]
En 1958, el Sistema Ejecutivo de la Universidad de Michigan adaptó GM-NAA I/O para producir UMES , que se ajustaba mejor a la gran cantidad de pequeños trabajos creados por los estudiantes. UMES se utilizó hasta 1967, cuando fue reemplazado por el sistema de tiempo compartido MTS . [ 7 ]
BESYS
Bell Labs produjo BESYS (a veces llamado BELLMON) y lo utilizó hasta mediados de la década de 1960. Bell también lo puso a disposición de otros sin cargo ni soporte técnico formal. [ 8 ] [ 3 ]
Sistema de monitorización FORTRAN
Antes de IBSYS, IBM produjo para sus computadoras IBM 709 , 7090 y 7094 un sistema operativo basado en cinta cuyo único propósito era compilar programas FORTRAN . De hecho, FMS y el compilador FORTRAN estaban en la misma cinta. [ 9 ] [ 10 ]
Primeros sistemas de tiempo compartido y máquinas virtuales.
Fernando Corbató del MIT produjo los primeros sistemas experimentales de tiempo compartido , como CTSS , desde 1957 hasta principios de la década de 1960, utilizando mainframes IBM 709 , [ 11 ] [ 12 ] IBM 7090 , [ 11 ] [ 12 ] e IBM 7094 [ 12 ] ligeramente modificados ; estos sistemas se basaron en una propuesta de John McCarthy . [ 13 ] [ 14 ] En la década de 1960, los propios laboratorios de IBM crearon sistemas experimentales de tiempo compartido, utilizando mainframes estándar con modificaciones de hardware y microcódigo para admitir memoria virtual : IBM M44/44X a principios de la década de 1960; CP-40 de 1964 a 1967; CP-67 de 1967 a 1972. La compañía incluso lanzó CP-67 sin garantía ni soporte técnico a varios clientes importantes de 1968 a 1972. CP-40 y CP-67 usaban CPU System/360 modificadas , pero el M44/44X se basaba en el IBM 7044 , una generación anterior de CPU que era muy diferente internamente. [ 15 ] [ 16 ] [ 17 ]
Estos sistemas experimentales llegaron demasiado tarde para ser incorporados a la serie System/360 que IBM anunció en 1964, pero animaron a la empresa a agregar capacidades de memoria virtual y máquina virtual a sus mainframes System/370 y sus sistemas operativos en 1972: [ 15 ]
- Los sistemas M44/44X demostraron que un enfoque parcial para las máquinas virtuales no era suficiente y que el thrashing podía reducir drásticamente la velocidad de los sistemas de memoria virtual. El thrashing es una condición en la que el sistema funciona muy lentamente porque dedica mucho tiempo a redistribuir las páginas de memoria virtual entre la memoria física y los archivos de disco.
- IBM aprendió de CP-40 y CP-67 cómo gestionar el problema de la sobrecarga; y que sus otras tecnologías de memoria virtual y máquinas virtuales eran lo suficientemente rápidas y fiables para utilizarse en los sistemas comerciales de alto volumen que constituían su actividad principal. En particular, David Sayre, de IBM , convenció a la empresa de que la gestión automatizada de la memoria virtual podía ofrecer un rendimiento al menos tan bueno como el de los mejores esquemas de superposición diseñados por programadores . [ 18 ]
En 1968, una consultora llamada Computer Software Systems utilizó la versión publicada de CP-67 para establecer un servicio comercial de tiempo compartido. El equipo técnico de la empresa incluía a dos reclutas del MIT (véase CTSS más arriba), Dick Orenstein y Harold Feinleib. A medida que crecía, la empresa cambió su nombre a National CSS y modificó el software para aumentar el número de usuarios de pago que podía admitir hasta que el sistema fue lo suficientemente diferente como para justificar un nuevo nombre, VP/CSS . VP/CSS fue el mecanismo de entrega de los servicios de National CSS hasta principios de la década de 1980, cuando cambió al VM/370 de IBM (véase más abajo). [ 19 ] [ 20 ]
Las universidades produjeron otros tres sistemas operativos de tiempo compartido S/360 a finales de la década de 1960:
- El Sistema de Terminales de Michigan (MTS) fue desarrollado en 1967 por un consorcio de universidades liderado por la Universidad de Michigan . Todas las versiones se ejecutaban en mainframes de IBM que contaban con capacidad de memoria virtual, comenzando con el S/360-67 . El MTS se mantuvo en uso hasta 1999. [ 21 ]
- La Universidad McGill de Montreal comenzó a desarrollar MUSIC (McGill University System for Interactive Computing) en 1969. MUSIC se mejoró varias veces y finalmente llegó a admitir búsquedas de texto, publicación web y correo electrónico, además de desarrollo de software. IBM comercializó MUSIC principalmente a instituciones educativas como un sistema operativo rentable para su hardware, y finalmente se convirtió en un producto de IBM Systems (MUSIC/SP o Multi-User System for Interactive Computing / System Product) en 1985. La última versión oficial se lanzó en 1999. [ 22 ]
- ORVYL y WYLBUR fueron desarrollados por la Universidad de Stanford en 1967-68 para el IBM S/360-67. [ 23 ] [ 24 ] Proporcionaron algunas de las primeras capacidades de tiempo compartido en las computadoras IBM S/360.
Sistemas operativos System/360
Hasta principios de la década de 1960, los sistemas de gama baja y alta de IBM eran incompatibles, por lo que los programas no se podían transferir fácilmente de uno a otro, y los sistemas a menudo utilizaban periféricos completamente diferentes , como unidades de disco. [ 25 ] IBM concluyó que estos factores estaban aumentando sus costos de diseño y producción, tanto de hardware como de software, a un nivel insostenible, y estaban reduciendo las ventas al disuadir a los clientes de actualizar sus sistemas. Así que, en 1964, la compañía anunció System/360 , una nueva gama de computadoras que utilizaban los mismos periféricos y la mayoría de las cuales podían ejecutar los mismos programas. [ 26 ]
IBM originalmente pretendía que System/360 tuviera un único sistema operativo orientado a lotes , OS/360. Existen al menos dos versiones de por qué IBM decidió posteriormente producir también un sistema operativo orientado a lotes más sencillo, DOS/360 :
- porque descubrió que OS/360 no cabría en la memoria limitada disponible en los modelos más pequeños de System/360; [ 27 ]
- o porque se dio cuenta de que el desarrollo de OS/360 llevaría mucho más tiempo del esperado, e introdujo DOS/360 como una serie de soluciones provisionales para evitar que las ventas de hardware de System/360 se desplomaran ; las otras fueron BOS/360 (Basic Operating System, para las máquinas más pequeñas) y TOS/360 (Tape Operating System, para máquinas con solo unidades de cinta). [ 26 ]
Los sistemas operativos de System/360 eran más complejos que los sistemas operativos anteriores de IBM por varias razones, entre ellas: [ 28 ]
- Debían admitir la multiprogramación , es decir, cambiar a otra aplicación en ejecución cuando la aplicación actual se bloqueaba esperando a que finalizaran las operaciones de entrada/salida (como las lecturas de disco). Sin la multiprogramación, las CPU más rápidas de la gama habrían pasado la mayor parte del tiempo inactivas, esperando a que finalizaran las operaciones de entrada/salida lentas. Por lo tanto, los sistemas operativos debían ser los verdaderos administradores de los sistemas, proporcionando los servicios que las aplicaciones solicitaran válidamente y gestionando los fallos o el mal funcionamiento de una aplicación sin detener las demás que se ejecutaban simultáneamente.
- Tenían que dar soporte a una gama mucho más amplia de tamaños de máquinas. La memoria variaba desde 16 KB hasta 1 MB y las velocidades de los procesadores desde unos pocos miles de instrucciones por segundo hasta 500.000.
- Debían dar soporte a una amplia gama de requisitos de las aplicaciones. Por ejemplo, algunas aplicaciones solo necesitaban leer archivos secuenciales de principio a fin; otras requerían acceso rápido y directo a registros específicos en archivos muy grandes; y unas pocas aplicaciones dedicaban casi todo su tiempo a realizar cálculos, con muy poca lectura o escritura de archivos.
Esto convirtió el desarrollo de OS/360 y otros programas de System/360 en uno de los proyectos de software más grandes jamás intentados, e IBM pronto se topó con problemas, con enormes sobrecostos y retrasos, y una gran cantidad de errores . [ 28 ] Estos problemas se agravaron aún más porque, para desarrollar y probar los sistemas operativos System/360 en hardware real, IBM primero tuvo que desarrollar Basic Programming Support/360 (BPS/360). [ 29 ] BPS se utilizó para desarrollar las herramientas necesarias para desarrollar DOS/360 y OS/360, así como las primeras versiones de las herramientas que proporcionaría con estos sistemas operativos : compiladores para FORTRAN y COBOL , utilidades como Sort y, sobre todo, el ensamblador que necesitaba para construir todo el demás software. [ 30 ]
Los competidores de IBM aprovecharon los retrasos en OS/360 y System/360 para anunciar sistemas dirigidos a lo que consideraban las partes más vulnerables del mercado de IBM. Para evitar que las ventas de System/360 se desplomaran, IBM lanzó cuatro sistemas operativos provisionales: [ 26 ]
- Sistema Operativo Básico/360 (BOS/360), [ 29 ] que se cargaba desde una unidad de disco o de cinta y era compatible con unidades de cinta y algunos discos. Este sistema se suministró a clientes de prueba beta y podría haber sido una versión temprana de DOS/360.
- TOS/360 , que fue diseñado para proporcionar una ruta de actualización para los clientes que tenían ordenadores IBM 1401 con unidades de cinta y sin discos.
- DOS/360 , que fue creado por los desarrolladores de BOS/360 y TOS/360 (la división de ordenadores para pequeñas empresas de IBM), se convirtió en un sistema operativo de uso generalizado cuyo descendiente, z/VSE, todavía se utiliza ampliamente.
- Sistema Operativo/360 (OS/360) con solo la opción de Programa de Control Primario (PCP), que no admitía multiprogramación. [ 31 ] : 371
Cuando IBM anunció el S/360-67, también anunció un sistema operativo de tiempo compartido , TSS/360 , que utilizaría las nuevas capacidades de memoria virtual del 360/67. TSS/360 se retrasó y las primeras versiones fueron lentas y poco fiables. Para entonces, el sistema operativo alternativo CP-67 , desarrollado por el Centro Científico de Cambridge de IBM , funcionaba lo suficientemente bien como para que IBM lo ofreciera "sin garantía" como servicio de tiempo compartido para algunos grandes clientes. [ 32 ] CP-67 se convertiría más tarde en VM/370 y finalmente en z/VM . IBM finalmente ofreció tres versiones de un PRPQ de TSS/370 como ruta de migración para sus clientes de TSS/360, y luego lo abandonó.
Los traumas de producir los sistemas operativos System/360 impulsaron la disciplina emergente de la ingeniería de software , el intento de aplicar principios científicos al desarrollo de software y la gestión de proyectos de software . Frederick P. Brooks , quien fue gerente de proyecto sénior para todo el proyecto System/360 y luego se le asignó la responsabilidad específica de OS/360 (que ya estaba muy retrasado), escribió un libro aclamado, The Mythical Man-Month , basado en los problemas encontrados y las lecciones aprendidas durante el proyecto, dos de las cuales fueron: [ 33 ]
- Invertir recursos adicionales (especialmente personal) en un proyecto con dificultades se vuelve rápidamente improductivo o incluso contraproducente debido a problemas de comunicación. Este es el síndrome del "Hombre-Mes Mítico", que da título al libro.
- El sucesor de un sistema exitoso suele encontrar dificultades porque se sobrecarga con todas las funciones que los usuarios deseaban que estuvieran presentes en el sistema anterior. Brooks denominó a esto el " efecto del segundo sistema " y citó a OS/360 como un ejemplo muy completo.
DOS/360
Si bien OS/360 era el sistema operativo preferido para las máquinas System/360 de gama alta, DOS/360 era el sistema operativo habitual para las máquinas menos potentes. Proporcionaba un conjunto de programas de utilidad , un ensamblador de macros y compiladores para FORTRAN y COBOL . La compatibilidad con RPG [ 34 ] [ 35 ] llegó más tarde, y finalmente un subconjunto de PL/I . Además, admitía una útil variedad de organizaciones de archivos con métodos de acceso para facilitar su uso:
- Los conjuntos de datos secuenciales normalmente se leían registro por registro, de principio a fin.
- En los archivos indexados ( ISAM ), se definía una sección específica de cada registro como una clave que podía utilizarse para buscar registros específicos.
- En los archivos de acceso directo ( BDAM ), el programa de aplicación debía especificar la ubicación física en el disco de los datos a los que quería acceder. La programación BDAM no era sencilla y la mayoría de los clientes nunca la utilizaban, pero era la forma más rápida de acceder a los datos en los discos y muchas empresas de software la empleaban en sus productos, especialmente en sistemas de gestión de bases de datos como ADABAS , IDMS y DL/I de IBM .
Los archivos secuenciales e ISAM podían almacenar registros de longitud fija o variable, y todos los tipos podían ocupar más de un volumen de disco.
DOS/360 también ofrecía BTAM , un sistema de comunicación de datos primitivo y difícil de usar según los estándares actuales. Sin embargo, BTAM 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.
Pero DOS/360 tenía limitaciones significativas en comparación con OS/360 , que se utilizaba para controlar la mayoría de las máquinas System/360 de mayor tamaño:
- La primera versión solo podía ejecutar un programa a la vez. Una mejora posterior permitió ejecutar tres simultáneamente, en una de las tres "particiones" cuyo tamaño era configurado por cada cliente al instalar DOS/360.
- El JCL que utilizaba para enviar trabajos estaba diseñado para que las máquinas de gama baja pudieran procesarlo fácilmente, y como resultado, a los programadores no les resultaba fácil de leer ni de escribir.
- No existía un subsistema de cola de impresión para mejorar la eficiencia del uso de tarjetas perforadas e impresoras. A finales de la década de 1960, una empresa de software independiente comenzó a vender un sistema de cola de impresión llamado GRASP.
- DOS/360 no tenía un cargador reubicable , por lo que los usuarios tenían que crear un enlace para cada versión ejecutable de cada programa en cada partición en la que probablemente se ejecutaría el programa.
- Los programas ejecutables se almacenaban en la Biblioteca de Imágenes Principales, que no liberaba espacio cuando se eliminaban o reemplazaban programas por versiones más recientes. Cuando la Biblioteca de Imágenes Principales se llenaba, era necesario comprimirla mediante uno de los programas de utilidad, lo que podía paralizar el desarrollo hasta por medio día.
- Su interfaz de programación de aplicaciones era diferente a la de OS/360. Los programas de DOS/360 escritos en lenguajes de alto nivel como COBOL necesitaban pequeñas modificaciones antes de poder usarse con OS/360, mientras que los programas en lenguaje ensamblador necesitaban cambios más importantes.
IBM esperaba que los usuarios de DOS/360 pronto actualizaran a OS/360, pero a pesar de sus limitaciones, DOS/360 se convirtió en el sistema operativo más utilizado del mundo porque:
- El hardware de System/360 se vendió muy bien.
- Más del 90% de los 360 sistemas vendidos fueron modelos 20, 30 y 40 [ 36 ].
- La mayoría de estos modelos más baratos tenían mucha menos memoria de núcleo de la que requería OS/360. [ 37 ]
DOS/360 funcionaba bien en los procesadores System/360 que las organizaciones medianas podían permitirse, y era mejor que los "sistemas operativos" que estos clientes tenían anteriormente. Como resultado, su sucesor, z/VSE, todavía se usa ampliamente hoy en día, a fecha de 2005. [ 27 ]
Sistema operativo/360
OS/360 incluía varios niveles de soporte, una única API y mucho código compartido. PCP era una versión provisional que solo podía ejecutar un programa a la vez, pero MFT (" Multiprogramación con un número fijo de tareas") y MVT (" Multiprogramación con un número variable de tareas") se utilizaron al menos hasta finales de la década de 1970, unos cinco años después del lanzamiento de sus sucesores. [ 38 ] No está claro si las divisiones entre PCP, MFT y MVT surgieron porque MVT requería demasiada memoria para ser utilizable en máquinas de gama media o porque IBM necesitaba lanzar una versión multiprogramadora de OS (MFT) lo antes posible.
PCP, MFT y MVT tenían enfoques diferentes para gestionar la memoria (véase más abajo), pero proporcionaban funcionalidades muy similares:
- La misma interfaz de programación de aplicaciones (API), por lo que los programas de aplicación podían transferirse entre PCP, MFT y MVT sin necesidad siquiera de recompilarlos .
- El mismo JCL , que era más flexible y fácil de usar que el de DOS/360.
- Las mismas funcionalidades ( métodos de acceso ) que DOS/360 para leer y escribir archivos (secuenciales, indexados y directos) y para comunicaciones de datos ( BTAM ).
- Se utilizó una estructura de archivos adicional, particionada y con un método de acceso ( BPAM ), principalmente para gestionar bibliotecas de programas. Si bien los archivos particionados debían comprimirse para recuperar espacio libre, esto rara vez interrumpía el desarrollo, como ocurría con la Core Image Library de DOS/360, ya que PCP, MFT y MVT permitían un número ilimitado de archivos particionados, y cada proyecto generalmente tenía al menos uno.
- Un sistema de nombres de archivos que permite administrar los archivos como jerarquías, como por ejemplo
PROJECT.USER.FILENAME. - Una función de almacenamiento en búfer (de la que carecía DOS/360).
- Las aplicaciones podían crear subtareas, lo que permitía la multiprogramación dentro de un mismo trabajo.
La experiencia indicaba que no era aconsejable instalar OS/360 en sistemas con menos de 256 KB de memoria, [ 30 ] lo cual era una limitación común en la década de 1960.
MFT
Al instalar MFT , los clientes especificaban hasta cuatro particiones de memoria con límites fijos, en las que se podían ejecutar programas de aplicación simultáneamente. [ 39 ] MFT Versión II (MFT-II) aumentó el límite a 52.
MVT
MVT era considerablemente más grande y complejo que MFT y, por lo tanto, se utilizaba en las CPU System/360 más potentes. Trataba toda la memoria no utilizada por el sistema operativo como un único grupo del que se podían asignar "regiones" contiguas según las necesidades de un número indefinido de programas de aplicación 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 disponible para ejecutar un programa, esta se dividía en bloques separados, ninguno de los cuales era lo suficientemente grande. [ 31 ] : 372–373
En 1971 se añadió la opción de tiempo compartido (TSO) para su uso con MVT. TSO se popularizó en el desarrollo de programas gracias a sus funcionalidades: un editor, depuradores para algunos de los lenguajes de programación utilizados en System/360 y la posibilidad de enviar trabajos por lotes, recibir notificaciones de su finalización y visualizar los resultados sin necesidad de esperar informes impresos. TSO se comunicaba con los terminales mediante TCAM ( Método de Acceso a las Telecomunicaciones ), que con el tiempo sustituyó al anterior Método de Acceso a las Telecomunicaciones en Cola (QTAM). 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 se utilizó casi exclusivamente para TSO y fue reemplazado en gran medida por VTAM a partir de finales de la década de 1970.
Monitores TP
El hardware y los sistemas operativos de System/360 fueron diseñados para procesar trabajos por lotes que, en casos extremos, podían durar horas. Por lo tanto, no eran adecuados para el procesamiento de transacciones , en el que hay miles de unidades de trabajo por día y cada una tarda entre 30 segundos y unos pocos minutos. En 1968, IBM lanzó IMS para gestionar el procesamiento de transacciones, y en 1969 lanzó CICS , un sistema de procesamiento de transacciones más simple que un grupo de empleados de IBM había desarrollado para un cliente. IMS solo estaba disponible para OS/360 y sus sucesores, pero CICS también estaba disponible para DOS/360 y sus sucesores. [ 40 ] [ 41 ] Durante muchos años, este tipo de producto se conoció como un "monitor TP (teleprocesamiento)". Estrictamente hablando, los monitores TP no eran componentes del sistema operativo, sino programas de aplicación que gestionaban otros programas de aplicación. En las décadas de 1970 y 1980, varios monitores TP de terceros compitieron con CICS (en particular COM-PLETE, DATACOM/DC, ENVIRON/1, INTERCOMM, SHADOW II, TASK/MASTER y WESTI), pero IBM mejoró gradualmente CICS hasta el punto en que la mayoría de los clientes abandonaron las alternativas. [ 42 ] [ 43 ]
Sistemas especiales para aerolíneas
En la década de 1950, las aerolíneas se expandían rápidamente, pero este crecimiento se veía frenado por la dificultad de gestionar manualmente miles de reservas (mediante ficheros). En 1957, IBM firmó un contrato de desarrollo con American Airlines para la creación de un sistema de reservas informatizado, conocido como SABRE . El primer sistema experimental se puso en marcha en 1960 y el sistema se hizo cargo de todas las funciones de reserva en 1964 , en ambos casos utilizando ordenadores centrales IBM 7090. A principios de la década de 1960, IBM emprendió proyectos similares para otras aerolíneas y pronto decidió producir un sistema de reservas estándar único, PARS , para funcionar en ordenadores System/360 .
En SABRE y las primeras versiones de PARS no existía separación entre los componentes de aplicación y sistema operativo del software, pero en 1968 IBM lo dividió en PARS (aplicación) y ACP (sistema operativo). Las versiones posteriores de ACP se denominaron ACP/TPF y luego TPF (Transaction Processing Facility), ya que empresas ajenas al sector aéreo adoptaron este sistema operativo para gestionar grandes volúmenes de transacciones en línea. La versión más reciente es z/TPF .
IBM desarrolló ACP y sus sucesores porque: a mediados de la década de 1960, los sistemas operativos estándar de IBM ( DOS/360 y OS/360 ) estaban orientados al procesamiento por lotes y no podían gestionar grandes cantidades de transacciones cortas con la suficiente rapidez; incluso sus monitores de transacciones IMS y CICS , que se ejecutan bajo el control de sistemas operativos estándar de propósito general, no son lo suficientemente rápidos para gestionar reservas de cientos de vuelos de miles de agencias de viajes.
La última versión de ACP de dominio público, y por lo tanto su última versión gratuita, fue ACP 9.2, que se distribuía en un único mini-rollo con un conjunto de manuales adjuntos (unas dos docenas de manuales, que ocupaban quizás 48 pulgadas lineales de espacio en la estantería) y que podía restaurarse en unidades de disco IBM 3340 y que, de este modo, proporcionaba un sistema ACP completamente funcional.
ACP 9.2 estaba destinado principalmente a tarjetas bancarias como MasterCard y otras aplicaciones financieras, pero también podía utilizarse para sistemas de reserva de aerolíneas, ya que para entonces ACP se había convertido en un sistema operativo de propósito más general.
Para entonces, ACP ya había incorporado un módulo de hipervisor (CHYR) que admitía un sistema operativo virtual (normalmente VS1 , pero posiblemente también VS2 ) como invitado, con el que se podía realizar el desarrollo de programas o el mantenimiento de archivos simultáneamente con las funciones en línea.
En algunos casos, el trabajo de producción se ejecutó bajo VS2 en el hipervisor, incluyendo, posiblemente, la base de datos IMS.
Sistema/360 Modelo 20
El modelo 20 fue etiquetado como parte de la gama System/360 porque podía conectarse a algunos de los mismos periféricos, pero era una máquina de 16 bits y no era totalmente compatible en cuanto a programación con otros miembros de la gama System/360. Los laboratorios de IBM en Alemania desarrollaron tres sistemas operativos para diferentes configuraciones del 360/20: DPS — con discos (memoria mínima requerida: 12 KB); TPS — sin discos, pero con cintas (memoria mínima requerida: 8 KB); y CPS — basado en tarjetas perforadas (memoria mínima requerida: 4 KB). [ 44 ] Estos no tuvieron sucesores directos, ya que IBM introdujo la gama de computadoras para pequeñas empresas System/3 en 1969, y System/3 tenía un diseño interno diferente al del 360/20 y periféricos diferentes a los de los mainframes de IBM.
Sistema/360 Modelo 44
El 360/44 es otro procesador que utiliza los periféricos del System/360, pero con un conjunto de instrucciones modificado. Fue diseñado para cálculos científicos con números de coma flotante , como análisis geológicos o meteorológicos. Debido a las diferencias internas y al tipo de trabajo especializado para el que fue diseñado, el 360/44 tiene su propio sistema operativo, el PS/44. [ 45 ] Una función opcional permite que un emulador del System/360 se ejecute en memoria oculta e implemente las instrucciones faltantes para ejecutar el OS/360. El 360/44 y el PS/44 no tienen sucesores directos.
Sistemas operativos System/370 y de memoria virtual
El System/370 se anunció en 1970 con esencialmente las mismas funcionalidades que el System/360, pero con una velocidad de procesador aproximadamente cuatro veces superior a la de las CPU System/360 de precio similar. [ 46 ] Luego, en 1972, IBM anunció las "Funciones avanzadas del System/370", cuyo principal atractivo era que las futuras ventas del 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. [ 47 ] [ 48 ]
La mayoría de los nuevos sistemas operativos se distinguen de sus predecesores por la presencia de "/VS" en sus nombres. "VS" significa "Almacenamiento Virtual". IBM evitó el término "memoria virtual", supuestamente porque la palabra "memoria" podría interpretarse como que las computadoras de IBM podían olvidar cosas.
Todos los sistemas operativos modernos para mainframes de IBM, excepto z/TPF, son descendientes de los incluidos en el anuncio "System/370 Advanced Functions". z /TPF es descendiente de ACP , el sistema que IBM desarrolló inicialmente para dar soporte a aplicaciones de reservas aéreas de gran volumen.
DOS/VS
DOS/VS es el sucesor de DOS/360 y ofrece funcionalidades similares, con la adición de memoria virtual. Además de la memoria virtual, DOS/VS proporcionó otras mejoras:
- Cinco particiones de memoria en lugar de tres. Las versiones posteriores aumentan este número a siete.
- Un cargador reubicable, de modo que ya no sea necesario enlazar una copia separada de cada programa para cada partición en la que se vaya a ejecutar.
- Un componente de bobinado mejorado , POWER/VS.
A DOS/VS le siguieron actualizaciones significativas: DOS/VSE y VSE/SP (década de 1980), VSE/ESA (1991) y z/VSE (2005). [ 49 ] [ 50 ]
Sistema operativo/VS1
OS/VS1 sucedió a MFT , con funcionalidades similares y añadiendo memoria virtual. [ 31 ] IBM lanzó mejoras menores de OS/VS1 hasta 1983, y en 1984 anunció que no habría más. OS/VS1 y TSS/370 son los únicos sistemas operativos IBM [ 51 ] System/370 que no tienen descendientes modernos.
El Sistema Operativo Especial en Tiempo Real (SRTOS), Programación RPQ Z06751, es una variante de OS/VS1 extendida para admitir computación en tiempo real . Estaba dirigido a industrias como la gestión de energía de servicios eléctricos y aplicaciones de refinerías de petróleo. [ 52 ]
Sistema operativo/VS2 y MVS
OS/VS2 Release 1 ( SVS ) reemplaza a MVT con memoria virtual. Presenta muchos cambios, pero conserva la estructura general de MVT.
En 1974, IBM lanzó lo que describió como OS/VS2 Release 2, que en realidad fue una reescritura importante compatible con la versión anterior, OS/VS2 SVS. La característica más destacada del nuevo sistema fue la compatibilidad con múltiples espacios de direcciones virtuales. Si bien las distintas aplicaciones creían estar utilizando el mismo rango de direcciones virtuales, las funciones de memoria virtual del nuevo sistema las asignaban a diferentes rangos de direcciones de memoria reales. [ 31 ] Como resultado, el nuevo sistema rápidamente se conoció como " MVS " (Multiple Virtual Storages), mientras que el OS/VS2 original se conoció como "SVS" (Single Virtual Storage). IBM aceptó esta terminología y denominó a los sucesores de MVS "MVS/...". [ 53 ]
Las otras características distintivas de MVS son: su catálogo principal debe ser un catálogo VSAM ; admite el "multiprocesamiento estrechamente acoplado" (dos o más CPU comparten la misma memoria y copia del sistema operativo); incluye un Administrador de recursos del sistema (renombrado Administrador de carga de trabajo en versiones posteriores) que permite a los usuarios cargar trabajo adicional en el sistema sin reducir el rendimiento de las tareas de alta prioridad.
IBM ha lanzado varias actualizaciones de MVS: MVS/SE , MVS/SP Versión 1, MVS/XA (1981), MVS/ESA (1985), OS/390 (1996) y actualmente z/OS (2001). [ 54 ]
VM/370
VM/370 combina una plataforma de máquinas virtuales con un sistema de usuario único llamado Sistema de Monitorización Conversacional (CMS); esta combinación proporciona tiempo compartido al permitir que cada usuario ejecute una copia de CMS en una máquina virtual. Esta combinación fue descendiente directa de CP/CMS . [ 55 ] La plataforma de máquinas virtuales se utilizaba a menudo para probar software nuevo mientras el trabajo de producción normal continuaba en otra máquina virtual, y el sistema de tiempo compartido CMS se utilizaba ampliamente para el desarrollo de programas. [ 56 ]
A VM/370 le siguieron una serie de actualizaciones: VM/SEPP ("Systems Extensions Program Product "), VM/BSEPP ("Basic Systems Extensions Program Product"), VM/SP (System Product), VM/SP HPO ("High Performance Option"), VM/XA MA ("Extended Architecture Migration Aid"), VM/XA SF ("Extended Architecture System Facility"), VM/XA SP ("Extended Architecture System Product"), VM/ESA ("Enterprise Systems Architecture") y z/VM . IBM también produjo microcódigos de asistencia opcionales para VM y sus sucesores, para acelerar la emulación del hipervisor de instrucciones privilegiadas (aquellas que solo los sistemas operativos pueden usar) en nombre de los sistemas operativos "invitados". Como parte de 370/Extended Architecture, IBM añadió la instrucción Start Interpretive Execution (SIE) [ 57 ] para permitir una mayor aceleración del hipervisor CP. [ 58 ]
Véase también
Referencias
- ↑ "Cronología de la historia de la informática: 1956: Software" . Museo de Historia de la Informática . Consultado el 4 de septiembre de 2007 .
- ↑ "Historia del sistema operativo - MCP" . www.oshistory.net . Archivado del original el 21 de febrero de 2009.
- 1 2 3 "Una breve historia de Linux" . Archivado del original el 7 de noviembre de 2017. Consultado el 4 de noviembre de 2017 .
- ↑ "IBM 650" . Archivos de IBM . 23 de enero de 2003. Archivado del original el 14 de enero de 2005. Consultado el 6 de noviembre de 2017 .
- ↑ "Sistema operativo IBSYS 7090/94" . www.frobenius.com . Archivado del original el 21 de diciembre de 2007. Consultado el 6 de noviembre de 2017 .
- ↑ Gray, George (marzo de 1999). "EXEC II" . Boletín de historia de Unisys . 1 (3). Archivado del original el 9 de agosto de 2017.
- ↑ "Una entrevista sobre la trayectoria profesional de Bernie Galler". IEEE Annals of the History of Computing . 23 (1): 22– 33. Enero–Marzo 2001. doi : 10.1109/85.910847 .
- ↑ Vyssotsky, V.; Pierce, E. (enero de 1985). "Poniendo Unix en perspectiva". Unix Review . 1 (3).
- ↑ Conrad Weisert (25 de marzo de 2007). "Reminiscencias de Fortran" . Information Disciplines, Inc. Recuperado el 6 de noviembre de 2017 .
- ↑ "Anécdotas de FORTRAN" . Anales de la Historia de la Computación del IEEE . 6 (1): 59– 64. Enero–marzo de 1984. Bibcode : 1984IAHC....6a..59. . doi : 10.1109/MAHC.1984.10010 .
- 1 2 Corbató, Fernando J. ; Daggett, Marjorie Merwin; Daley, Robert C. (3 de mayo de 1962). Un sistema experimental de tiempo compartido . Conferencia conjunta de computación de primavera .
- 1 2 3 "Sistema de tiempo compartido compatible (1961-1973) Resumen conmemorativo del quincuagésimo aniversario" (PDF) . 2011.
- ↑ McCarthy, John . "Reminiscencias sobre la historia del tiempo compartido" . – describe los orígenes del tiempo compartido
- ↑ McCarthy, John (1 de enero de 1959). "Un programa de operador de tiempo compartido para nuestro proyectado IBM 709" .
- 1 2 R. J. Creasy (septiembre de 1981). "El origen del sistema de tiempo compartido VM/370". IBM Journal of Research & Development . 25 (5): 483– 490. doi : 10.1147/rd.255.0483 .
- ↑ Peter J. Denning (noviembre de 1981). "Modelado de rendimiento: la informática experimental en su máxima expresión" (PDF) . Communications of the ACM . 24 (11). Carta del presidente : un estudio de artículos de investigación. doi : 10.1145/358790.358791 . S2CID 14123676 .
- ↑ Melinda Varian, VM y la comunidad de VM, pasado, presente y futuro, SHARE 89, Sesiones 9059-9061, 1977; disponible en línea en www.princeton.edu/~melinda – CP/CMS e historia de VM
- ↑ Denning, Peter (1997). "Antes de que la memoria fuera virtual" . En el principio: recuerdos de pioneros del software .
- ↑ Luanne Johnson (23 de diciembre de 2004). "Detalles de la empresa - National CSS" . Museo de Historia de la Computación . Consultado el 30 de enero de 2007 .
- ↑ Feinleib, Harold (marzo de 2005). Una historia técnica de National CSS (PDF) . Museo de Historia de la Computación .
- ↑ Historia de MTS por Dan Boulet para Everything2.com
- ↑ "Sistema operativo MUSIC/SP - Introducción" . webpages.mcgill.ca . Consultado el 6 de noviembre de 2017 .
- ↑ Descripción funcional del sistema de tiempo compartido ORVYL/370 , Universidad de Stanford, 1978
- ↑ Manual de referencia de WYLBUR , Universidad de Stanford, 1984
- ↑ "Árbol genealógico y cronología de mainframes" . Archivos de IBM . 23 de enero de 2003. Archivado del original el 14 de enero de 2005. Consultado el 6 de noviembre de 2017 .
- 1 2 3 Chuck Boyer, La revolución 360
- 1 2 Johnston, Jerry (1 de abril de 2005). "VSE: Una mirada a los últimos 40 años" . z/Journal (abril/mayo de 2005). Thomas Communications. ISSN 1551-8191 . OCLC 56140149. Archivado del original el 4 de marzo de 2009.
- 1 2 Andrew S. Tanenbaum (2001). Sistemas operativos modernos (2.ª ed.). Prentice Hall . ISBN 978-8120320635.
- 1 2 IBM Corporation (1965). Soporte de programación básica de IBM System/360 y resumen de sistemas de programación del sistema operativo básico de IBM/360 (PDF) . Biblioteca de referencia de sistemas IBM. C24-3420-0.
- 1 2 Ray Saunders. "MVS... ¿Y antes de OS/360 ?" . Archivado del original el 20 de diciembre de 2007.
- 1 2 3 4 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 . Vol. 12, n.º 4. IBM. págs. 368–381 . doi : 10.1147/sj.124.0368 . S2CID 249618 .
- ↑ "El IBM 360/67 y CP/CMS" . www.multicians.org . Consultado el 6 de noviembre de 2017 .
- ↑ Brooks, FP (1995) [1975]. El hombre-mes mítico: ensayos sobre ingeniería de software . Addison-Wesley Professional. ISBN 978-0-201-83595-3.
- ↑ Catálogo de inscripciones de derechos de autor. Tercera serie: 1971: enero-junio . 1973.
- ↑ Bibliografía de IBM System/360 y System/370 (PDF) . IBM. Marzo de 1971. GA22-6822.
- ↑ Un boletín informativo de ADP citado en la página 56 de Weiss, Eric A., ed. (1969). Computer Usage Essentials . McGraw-Hill. LCCN 71-76142 . muestra las ventas del 360/ "20 .. 33,6%, 30 .. 36%, 40 .. 22,6%" = 92,2%
- ↑ Manuales de características funcionales del IBM S/360 de los modelos correspondientes
- ↑ "La encuesta SHARE de mediados de los setenta" . Archivado del original el 12 de mayo de 2008.
- ↑ 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.
- ↑ KR Blackman (1998). «Nota técnica: IMS celebra treinta años como producto de IBM» . IBM Journal of Research & Development . 37 (4). Archivado del original el 24 de enero de 2000.
- ↑ "IBM CICS – z Systems" . www-306.ibm.com . Consultado el 6 de noviembre de 2017 .
- ↑ "Vinculando aplicaciones a Adabas" . Archivado del original el 22 de mayo de 2008. Consultado el 8 de julio de 2008 . – enumera los principales monitores TP de los años 70 y 80.
- ↑ Hugo, I. (15 de noviembre de 1989). "Metier, el modelo, pero pocos lo siguieron: la industria del software en el Reino Unido" . Software Magazine . Recuperado el 8 de julio de 2008 .
- ↑ "Historia de IBM Deutschland Entwicklung GmbH - Década de 1960" .
{{cite web}}: CS1 maint: servicio de archivado obsoleto ( enlace ) - ↑ "Historia de la informática: números de modelo IBM 360/370/3090/390" . www.beagle-ears.com . Consultado el 6 de noviembre de 2017 .
- ↑ "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 y Palmer, JH (1991). Los sistemas 360 y los primeros 370 de IBM . MIT Press. ISBN 978-0-262-16123-7.
{{cite book}}: CS1 maint: varios nombres: lista de autores ( enlace ) - ↑ "IBM: Sistema operativo z/VSE - Historia - Década de 1980" . www-03.ibm.com . 15 de septiembre de 2008. Archivado del original el 11 de septiembre de 2006. Consultado el 6 de noviembre de 2017 .
- ↑ "IBM: Sistema operativo z/VSE - Historia - Década de 1990" . www-03.ibm.com . 15 de septiembre de 2008. Archivado del original el 19 de septiembre de 2007. Consultado el 6 de noviembre de 2017 .
- ↑ Los sistemas operativos que no son de IBM S/370, como MTS, tampoco tienen sucesores.
- ↑ IBM Corporation (enero de 1976). Manual de descripción y funcionamiento del sistema operativo en tiempo real especial IBM System/370 RPQ Z06751 (PDF) .
- ↑ "Comunicado de prensa técnico 3033" . Archivos de IBM . 25 de marzo de 1977. Archivado del original el 20 de abril de 2005. Consultado el 6 de noviembre de 2017 .
- ↑ "Sistema Operativo MVS" . Proyecto de documentación del sistema operativo . Consultado el 6 de noviembre de 2017 .
- ↑ Creasy, RJ (1981). "El origen del sistema de tiempo compartido VM/370" . IBM Journal of Research and Development . 25 (5): 483– 490. doi : 10.1147/rd.255.0483 .
- ↑ Seawright, LH; MacKinnon, RA (1979). "VM/370: Un estudio de multiplicidad y utilidad" . IBM Journal of Research and Development . 18 (1): 4– 17. doi : 10.1147/sj.181.0004 .
- ↑ 370/Arquitectura extendida/Ejecución interpretativa . IBM. SA22-7095.
- ↑ Osisek, DL; Jackson, KM; Gum, PH (marzo de 1991). "Arquitectura interpretativa-ejecutable ESA/390, fundamento para VM/ESA - aspectos técnicos". IBM Systems Journal . 30 (1): 34– 51. doi : 10.1147/sj.301.0034 . S2CID 8971003 .
Lecturas adicionales
- 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)
- Sistemas operativos para mainframes de IBM: Cronología y breve explicación del IBM System/360 y versiones posteriores , por Dave Morton.
Enlaces externos
- Historia del software
- Sistemas operativos para mainframes de IBM