Articulo de referencia

Subsistemas de entrada de trabajos de MVS

Un subsistema de entrada de trabajos (JES) es un componente de los sistemas operativos de mainframe MVS de IBM ( MVS/370 a z/OS ) que se encarga de gestionar cargas de trabajo t...

Un subsistema de entrada de trabajos (JES) es un componente de los sistemas operativos de mainframe MVS de IBM ( MVS/370 a z/OS ) que se encarga de gestionar cargas de trabajo tipo trabajo, por ejemplo, lotes , sesiones TSO . Hay dos sistemas de entrada de trabajos principales, llamados JES2 y JES3 . Están diseñados para proporcionar una ejecución eficiente de, por ejemplo, trabajos por lotes, sesiones interactivas. A partir de z/OS 3.1, lanzado en septiembre de 2023, IBM z/OS ya no incluye JES3, y viene solo con JES2; los sitios JES3 deben migrar a JES2 o licenciar JES3plus de Phoenix Software International, que ha asumido el soporte y desarrollo futuro de JES3 de IBM. [ 1 ] Además, hay un subsistema maestro responsable de las tareas que no se ejecutan bajo el control de un JES principal, por ejemplo, el propio JES principal.

El procesamiento de trabajos se divide en varias fases para lograr paralelismo mediante la segmentación . Estas fases incluyen el procesamiento de entrada, donde se leen e interpretan los trabajos; la fase de ejecución, donde se ejecutan los trabajos; y el procesamiento de salida, donde se imprime o almacena el resultado del trabajo en el DASD . Los trabajos que se encuentran en la misma fase de ejecución suelen estar en una cola específica; por ejemplo, los trabajos que se están ejecutando actualmente se encuentran en la cola de ejecución.

Para mejorar la eficiencia de E/S, JES realiza un spooling que permite que múltiples trabajos accedan simultáneamente a un volumen de almacenamiento común. JES utiliza una estructura denominada punto de control para realizar copias de seguridad de la información sobre los trabajos en ejecución y sus resultados. El punto de control permite restaurar los trabajos y sus resultados en caso de fallos inesperados de hardware o software.

Aunque JES2 y JES3 ofrecen la misma funcionalidad básica, existen ciertas características que pueden estar presentes en una versión pero no en la otra. Debido a estas diferencias, en algunas instalaciones de clientes se puede preferir una versión sobre la otra. JCL se utiliza para definir trabajos tanto para JES2 como para JES3, pero generalmente se requieren pequeños cambios en el JCL para que un trabajo escrito para una versión se ejecute en la otra. Un problema común era que JES3 verificaba que todos los conjuntos de datos listados en el JCL existieran antes de la ejecución o que hubiera un paso previo donde el conjunto de datos estuviera definido como NEW,CATLG. JES2 no exigía esto, permitiendo que el trabajo se ejecutara incluso si fallaba cuando el paso que lo utilizaba no lo encontraba.

Historia

Precursores

El procesamiento de trabajos por lotes de OS/360 tenía una flexibilidad operativa y un rendimiento limitados, lo que se solucionó con dos paquetes desarrollados en campo llamados Houston Automatic Spooling Priority ( HASP ) y Attached Support Processor ( ASP ).

ALDABA

HASP fue desarrollado por contratistas de la División de Sistemas Federales de IBM en el Centro Espacial Johnson en Houston . [ 2 ] [ 3 ] Originalmente, gestionaba la programación de trabajos y la impresión y perforación de salida para una sola computadora OS/360. Se agregó la capacidad de cola de acceso múltiple para permitir que las computadoras pares compartieran una cola de trabajos común y colas de impresión/perforación de salida.

Con la introducción de System/370 en 1972, IBM reescribió HASP para convertirlo en una parte estándar del sistema y lo renombró Job Entry Subsystem 2. JES2 se introdujo en OS/VS2 en la versión 2, también conocida como MVS , en 1973. [ 4 ] Pasaron muchos años antes de que se eliminaran las etiquetas HASP del código fuente, y los mensajes emitidos por JES2 todavía tienen el prefijo $HASP. Varios comandos de JES2 continúan admitiendo la especificación de JES2o HASPpara mantener la compatibilidad con versiones anteriores . [ 5 ]

ÁSPID

ASP inicialmente significaba Attached Support Processor (Procesador de Soporte Adjunto) , [ a ] [ 6 ] y se desarrolló para proporcionar un uso eficiente de múltiples sistemas con una carga de trabajo compartida. Permitía que un sistema central distribuyera trabajos a múltiples sistemas conectados; ASP podía ejecutar una mezcla de emulación de OS/360 , SVS y 7090 en un procesador principal 360/65, pero solo [ b ] OS/360 y SVS en otros modelos S/360 y S/370. ASP se anunció en marzo de 1967, [ 7 ] : p. 710 y ese año se informó que estaba "funcionando de manera muy estable". [ 8 ]

ASP evolucionó a partir del diseño del sistema de acoplamiento directo 7094/7040 , que utiliza comunicación de canal de datos a canal de datos. [ 9 ] Al conectar un IBM 7040 como periférico, el rendimiento del procesador se duplicó con creces.

En una configuración ASP típica, un pequeño ordenador central, como un 360/40 (denominado sistema de soporte ), controlaba uno o más procesadores 360/65 o superiores, denominados sistemas principales . Los ordenadores se conectaban mediante canales selectores en cada host, conectados a adaptadores de canal a canal, en una forma primitiva de redes informáticas punto a punto de corto alcance.

ASP requería la compra de un ordenador adicional para gestionar la entrada y salida de los hosts que ejecutaban la carga de trabajo, lo cual se justificaba económicamente por el alto coste de los canales multiplexores de bytes independientes necesarios para controlar las impresoras y los lectores de tarjetas perforadas . Los sistemas 360/50 y más pequeños contaban con un canal multiplexor de bytes integrado, mientras que los sistemas 360/65 y superiores, más rápidos, requerían una unidad independiente relativamente cara. El uso de ASP permitió evitar el coste del canal multiplexor de bytes, y la descarga de la programación de trabajos, la impresión y el procesamiento de tarjetas también liberó a las máquinas más grandes de esas funciones.

El aumento de la fiabilidad fue otra ventaja que compensó el coste adicional del hardware. Uno o más sistemas principales podían fallar o desconectarse para mantenimiento sin que se paralizara todo el complejo.

ASP estaba dirigido principalmente a grandes agencias gubernamentales y contratistas de defensa que podían tener hasta seis sistemas 360/65, todos programados y administrados por una máquina ASP independiente. Una variante poco común, ASP local ( LASP ), consistía en una única máquina grande con todas las funciones de ASP ejecutándose en ella.

En la década de 1970, una instalación destacada de ASP se encontraba en la Universidad de Princeton, controlando un ordenador central IBM 360/91.

En 1973, IBM reescribió ASP y lo renombró JES3, admitiendo solo MVS. [ 4 ]

Alternativas

También había un JES en OS/VS1 que a menudo se denominaba JES1 . [ 10 ] [ 11 ] Además, el subsistema maestro ( MSTR ), que está integrado en MVS, puede iniciar trabajos que se ejecutan fuera del control del JES principal, incluido el Planificador Maestro y el propio JES principal. [ 12 ] Originalmente, el JCL para el subsistema Maestro estaba en un módulo de carga proporcionado por IBM, pero en las versiones actuales de MVS a través de z/OS, se puede proporcionar como un miembro de la biblioteca de parámetros del sistema (PARMLIB).

Personalización

IBM proporcionó el código fuente tanto para ASP como para HASP a sus clientes, y muchos de ellos realizaron mejoras sustanciales en estos programas, algunas de las cuales se incorporaron al producto oficial. HASP se instaló en muchas más instalaciones que ASP, y en los sistemas z/OS actuales, existen muchas más instalaciones de JES2 que de JES3. Debido a su historia particular, IBM continúa distribuyendo el código fuente de JES2 y JES3 en lugar del código objeto , a diferencia de la mayoría de los componentes del sistema operativo.

Para mejorar la mantenibilidad y el servicio de las mejoras escritas por el usuario, JES proporciona un conjunto de puntos de salida que transfieren el control de JES a los programas de usuario en puntos clave del procesamiento. Estas extensiones pueden proporcionar funcionalidades personalizadas, como comandos especiales, encabezados de página de impresión personalizados y procesamiento de trabajos no estándar.

Desarrollo actual

En 2017, IBM publicó una declaración de dirección para JES2 para ser el JES "estratégico", lo que significa que todos los esfuerzos de desarrollo futuros se centrarán en JES2 en lugar de JES3. [ 13 ] IBM ha asegurado a los clientes que JES3 continuará recibiendo soporte hasta que se anuncie una fecha de fin de soporte. [ 14 ] [ 15 ] En febrero de 2019, IBM anunció que z/OS 2.5 (que se espera que se lance en 2021) será la última versión de z/OS que incluirá JES3. [ 16 ] En octubre de 2019, Phoenix Software International anunció que había licenciado el código fuente de JES3 de IBM y que se haría cargo de su mantenimiento y mejora. [ 17 ]

Tipos de subsistemas

Un subsistema es el subsistema maestro (MSTR), un JES primario iniciado bajo el control del MSTR o un JES secundario iniciado bajo el control del JES primario. El JES primario es responsable de ejecutar, por ejemplo, sesiones APPC, trabajos por lotes, tareas del sistema, inicios de sesión TSO, excepto

  1. El subsistema maestro
  2. El JES principal
  3. Tareas dirigidas explícitamente a MSTR
  4. Cargas de trabajo para probar un JES secundario.

Interfaz de subsistema (SSI)

La interfaz del subsistema [ 18 ] (SSI) es una interfaz común para varias docenas de subsistemas. La SSI es responsable de enrutar las invocaciones IEFSSREQ al subsistema adecuado, por ejemplo, MSTR, JES2.

Diversos componentes del sistema, como la asignación, invocan SSI para permitir que los subsistemas controlen el procesamiento.

conjuntos de datos de subsistemas

Los trabajos pueden asignar conjuntos de datos implementados por un subsistema de forma explícita mediante la palabra clave SUBSYS= o implícita. Se puede acceder a los conjuntos de datos del subsistema directamente mediante una interfaz ACB/RPL o indirectamente mediante un DCB y la Interfaz de Compatibilidad (CI).

SYSIN

Un conjunto de datos de entrada del sistema (SYSIN) se define mediante una instrucción DD * o DD DATA procesada por un JES primario o secundario. El JES propietario mantiene los datos en SPOOL y proporciona acceso a través de ACB/RPL.

SISTEMA

Un conjunto de datos de salida del sistema (SYSOUT) se define mediante una instrucción DD SYSOUT= procesada por un JES primario o secundario, o mediante una asignación dinámica equivalente. El JES propietario mantiene los datos en SPOOL y proporciona acceso a través de ACB/RPL. El subsistema MSTR puede asignar conjuntos de datos SYSOUT gestionados por un subsistema diferente.

Convertidor/Intérprete (C/I)

El convertidor/intérprete [ 19 ] (C/I) es una versión altamente modificada del lector/intérprete (R/I) de OS/360 y SVS . Un subsistema puede invocar el C/I como una unidad o puede invocar el convertidor y el intérprete por separado.

Convertidor

El convertidor analiza un flujo de entrada y convierte el JCL en texto interno. Básicamente, cada elemento sintáctico tiene una clave y un valor. La comprobación de rangos de los valores generalmente se delega al intérprete. El convertidor se encarga de integrar el procedimiento catalogado en el flujo de trabajo.

Intérprete

El intérprete realiza comprobaciones de validez en las unidades de texto y las compila en bloques de control. Dependiendo del subsistema que invoque al convertidor, los bloques de control de salida pueden residir en el Área de Trabajo del Sistema (SWA) o en conjuntos de datos SPOOL.

Subsistema maestro (MSTR)

El subsistema maestro [ 20 ] (MSTR) solo procesa tareas del sistema, no trabajos por lotes. En particular, MSTR procesa el comando START del JES principal. Existe un operando en el comando START para forzar que una tarea iniciada que normalmente se ejecutaría bajo el JES principal se ejecute bajo MSTR.

Subsistema de entrada de empleo/2 (JES2)

Subsistema de entrada de empleo/3 (JES3)

Véase también

Notas

  1. Finalmente se le cambió el nombre a Sistema de Multiprocesamiento Asimétrico.
  2. Sin embargo, OS/360 en el 360/85 y SVS en el S/370 admitían emuladores integrados.

Referencias

Introducción a JES3
Introducción a JES3 - JES3 Versión 3 (PDF) . Sistemas. IBM . 30 de septiembre de 1978. GC28-0607-2 . Consultado el 7 de octubre de 2025 .
TNL . IBM . 30 de septiembre de 1978. GN25-0167.
LógicaVol3
Biblioteca de lógica del sistema OS/VS2 Volumen 3 - VS2.03.804 - VS2.03.807 - VS2.03.810 (PDF) . Sistemas (Primera edición). IBM . Julio de 1976. SY28-0763-0 . Consultado el 12 de junio de 2022 .
ABC2
Cosimo, Guillermo; Kuehner, Lutz (abril de 2018). ABC de la programación de sistemas z/OS, volumen 2 (PDF) . Libros rojos  (quinta ed.). IBM . ISBN 978-0738443010. SG24-6982-04 . Consultado el 12 de noviembre de 2025 .
Implementación y mantenimiento diario de z/OS, definición de subsistemas, IBM Job Entry Subsystem 2 (JES2) y JES3, área de paquetes de enlaces (LPA), LNKLST, bibliotecas autorizadas, System Modification Program/Extended (SMP/E) e IBM Language Environment®.
ABC13
Rogers, Paul; Vainikainen, Juha (enero de 2010). ABC de la programación de sistemas z/OS Volumen 13 (PDF) . Libros rojos (segunda  edición). IBM . SG24-7717-01 . Consultado el 12 de noviembre de 2025 .
JES3

Citas

  1. Temel, Meral (11 de septiembre de 2023). "Actualización de z/OS 3.1" (PDF) . IBM . Consultado el 27 de enero de 2025 .
  2. El sistema HASP, 26 de febrero de 1971 HASP II (360D-05.1-014) V3M1 . Versión 3 Nivel de modificación 1. IBM . 26 de febrero de 1971. 360D-05.1-014.
  3. Guía del usuario de OS/VS2 HASP II Versión 4 Número de programa 370H-TX-001 VS2 SVS Versión 1.7 (PDF) (Primera ed.). IBM . Septiembre de 1976. GC27-0052-0. 
  4. 1 2 IBM Corporation (1973). Introducción a OS/VS2 Release 2 (PDF) .
  5. Jeff Frey (16 de abril de 2018). "JES Deathmatch" . Terminal Talk (Podcast). Archivado del original el 21 de abril de 2018. Consultado el 20 de abril de 2018 .
  6. Sistema de multiprocesamiento asimétrico IBM System/360 y System/370: Manual de información general, número de programa 360A-CX-15X . IBM . GH20-1173.
  7. Pugh; et al. (1991). IBM's 360 and Early 370 Systems . MIT Press. ISBN  9780262517201Archivado del original el 12 de febrero de 2013.
  8. "Instalación representativa de ASP" . Computerworld . 13 de septiembre de 1967. Consultado el 7 de febrero de 2013 .
  9. Auslander, MA; Larkin, DC; Scherr, AL (septiembre de 1981). "La evolución del sistema operativo MVS" (PDF) . IBM Journal of Research and Development . 25 (5): 471– 482. doi : 10.1147/rd.255.0471 . S2CID 16424391. Archivado del original (PDF) el 9 de octubre de 2019. Recuperado el 8 de octubre de 2019 . 
  10. Baily, JH; Howard, JA; Szcygieldski, TJ (1974). "El subsistema de entrada de trabajos de OS/VS1" . IBM Systems Journal . 13 (3): 253. doi : 10.1147/sj.133.0253 . Archivado del original el 3 de marzo de 2016. Consultado el 11 de febrero de 2013 .
  11. IBM Corporation (1972). Suplemento de características de OS/Virtual Storage 1 (PDF) .
  12. LogicVol3 , pág. 3-169, Subsistema maestro : "El subsistema maestro es un conjunto de rutinas que realizan las funciones necesarias para iniciar ciertas tareas del sistema. La planificación de trabajos normalmente inicia una tarea o un trabajo de usuario utilizando los servicios de un subsistema de entrada de trabajos para obtener e interpretar el JCL del trabajo. Sin embargo, ciertas tareas del sistema se inician cuando no hay un subsistema de entrada de trabajos disponible. Estas tareas incluyen el planificador maestro, que es la primera tarea que se inicia en el sistema, y ​​los subsistemas de entrada de trabajos. De hecho, cualquier subsistema definido como tal en el momento de SYSGEN se inicia a través del subsistema maestro en lugar de a través de un subsistema de entrada de trabajos." 
  13. "IBM z/OS Versión 2 Release 3 - Motor para la transformación digital" . IBM . 17 de julio de 2017. Consultado el 4 de mayo de 2018. IBM afirma que JES2 es el subsistema estratégico de entrada de trabajos para z/OS.
  14. "Re: IBM estabilizará JES3 (antes: IBM finalmente dejará de usar JES3)" . bit.listserv.ibm-main (Lista de correo). Agosto de 2017. Consultado el 20 de abril de 2018 .
  15. Watson, Cheryl (27 de julio de 2017). "Anuncios de IBM sobre z14 y z/OS 2.3" . Watson y Walker . Recuperado el 17 de abril de 2018 .
  16. "Vista previa: IBM z/OS Versión 2 Release 4" . www-01.ibm.com . 26 de febrero de 2019. Archivado del original el 23 de enero de 2021. Consultado el 3 de mayo de 2019 .
  17. Internacional, Phoenix Software (2 de octubre de 2019). "Phoenix Software International anuncia un acuerdo de licencia para IBM® JES3" . Sala de prensa de GlobeNewswire (Comunicado de prensa) . Consultado el 1 de noviembre de 2019 .
  18. LogicVol3 , pp. 3-159–3-167, Interfaz del subsistema .
  19. LogicVol3 , pp. 3-219–3-259, Convertidor/Intérprete .
  20. LogicVol3 , pp. 3-169–3-191, Subsistema maestro .
  • "¿Qué es JES?", Conceptos de z/OS (PDF) , Centro de información sobre habilidades básicas de z/OS, IBM, págs. 80–81 
  • "JES2 comparado con JES3", Conceptos de z/OS ( PDF) , Centro de información sobre habilidades básicas de z/OS, IBM, págs. 91-92