1 / 39

Chapter 9: Batch processing and the Job Entry Subsystem (JES)

Chapter 9: Batch processing and the Job Entry Subsystem (JES). Batch processing and JES. jkettner@us.ibm.com. Objectives. Be able to: Give an overview of batch processing and how work is initiated and managed in the system.

moses
Download Presentation

Chapter 9: Batch processing and the Job Entry Subsystem (JES)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 9: Batch processing and the Job Entry Subsystem (JES) Batch processing and JES jkettner@us.ibm.com

  2. Objectives • Be able to: • Give an overview of batch processing and how work is initiated and managed in the system. • Explain how the job entry subsystem (JES) governs the flow of work through a z/OS system. • Workload Manager

  3. batch processing execution initiator job job entry subsystem (JES) output procedure purge queue spool symbolic reference workload manager (WLM) Key terms in this chapter

  4. What is batch processing? • Much of the work running on z/OS consists of programs called batch jobs. • Batch processing is used for programs that can be executed: • With minimal human interaction • At a scheduled time or on an as-needed basis. • After a batch job is submitted to the system for execution, there is normally no further human interaction with the job until it is complete.

  5. MVS Batch Job Stream CLASS=? //OPENBATC JOB Start of job IMPORTANT Parameter //S1 EXEC PGM=MVSPROG1 MVS batch program //S2 EXEC PGM=BPXBATCH, OpenMVS batch program // PARM='pgm cprog a1 a2' //S3 EXEC PGM=MVSPROG2 MVS batch program /* // End of job

  6. STEP1 STEP2 STEPn STEP1 STEP2 STEPn STEP1 STEP2 STEPn Batch job Batch job Batch job STEP1 STEP2 STEPn STEP1 STEP2 STEPn STEP1 STEP2 STEPn Batch job Batch job Batch job INPUT Output Processing Example of Batch Processing Express Checkout

  7. What is JES? • In the z/OS operating system, JES manages the input and output job queues and data. • JES handles the following aspects of batch processing for z/OS: • Receives jobs into the operating system • Schedules them for processing by z/OS • Controls their output processing

  8. What is JES? (continued) • z/OS offers two types: JES2 and JES3 • Some important differences, but both JES2 and JES3: • Accept and queue jobs submitted for execution • Queue jobs for an initiator -- a JES program that requests the next job in the queue • Accept output from a job while it is running and queue the output • Can print the output, or save it on spool for an output manager to retrieve.

  9. Job Management

  10. Why do we need JES

  11. JES FUNCTIONS

  12. Reports s1s2s3s4 s1 s2 s3 S4 s5 s6 s7 Tape s1 s2 s3 s4 s5 DISK s1s2s3s4s5 Jobstreams s# = step number BATCH Automated Scheduler Combination of Actions Optical Devices System Actions User Actions

  13. Batch flow (simplified) i.e – 10 initiators = 10 batch jobs can run concurrently.

  14. JES2 Queuing Mechanisms

  15. JES2 has many parts …..

  16. Sample JES2 Start Procedure PROC00 – default procedure library to be used for converting the JCL PROCxx - other user catalogue procedures lib associated with JOBCLASS initialization HASPPARM – Dataset containing intialization statements that will be used for JES2 initialization and conrolling all JES functions

  17. What is spooling? (Simultaneous Peripheral Operations OnLine) • Spooling is a method for queuing and holding data for input or output. • JES uses one or more disk data sets for spooling. • Input jobs and printed output from many jobs are stored in the single (conceptual) spool data set.

  18. JES2 Spool Dataset SDSF.ULOG -$DSPOOL $HASP893 VOLUME(DMPSP1) STATUS=ACTIVE,PERCENT=29 $HASP893 VOLUME(DMPSP2) STATUS=ACTIVE,PERCENT=61 $HASP646 39.7666 PERCENT SPOOL UTILIZATION ******************************* BOTTOM OF DATA ****** Direct Access Devices containing the spool datasets

  19. What an initiator does • To run multiple jobs asynchronously, z/OS uses initiators to: • Ensure that jobs do not conflict in data set usage • Ensure that single-user devices (tape drives) are allocated correctly • Find executable programs requested by jobs • Clean up after the job ends and request the next job Preventing two users from accessing the same data at the same time is critical to z/OS and the ability to do this is one of the defining characteristics of the operating system.

  20. Display Filter View Print Options Help _______________________________ __________________________________________ SDSF INITIATOR DISPLAY DEMOMVS LINE 1-17 (24) COMMAND INPUT ===> SCROLL ===> PAGE NP ID Status Classes JobName StepName ProcStep JobID C ASID ASIDX 1 ACTIVE A CAESTART *OMVSEX JOB09317 A 233 00E 2 ACTIVE BA APPLY ASNA81 JOB00029 A 42 002 3 INACTIVE CBA 43 002 4 INACTIVE DCBA 44 002 5 INACTIVE DCBA 45 002 6 INACTIVE DCBA 46 002 7 INACTIVE DCBA 47 002 8 INACTIVE DCBA 48 003 9 INACTIVE DCBA 49 003 10 INACTIVE DCBA 50 003 11 ACTIVE I IMSAMSG1 DFSMPR REGION JOB02707 I 51 003 12 ACTIVE I IMSBMSG1 REGION JOB02743 I 52 003 13 ACTIVE I IMSBIFP1 DFSIVA4 IMS81 JOB02745 I 53 003 14 ACTIVE I IMSTMSG1 DFSMPR REGION JOB02799 I 54 003 15 INACTIVE T 55 003 16 INACTIVE A 56 003 17 INACTIVE A 57 003 F1=HELP F2=SPLIT F3=END F4=RETURN F5=IFIND F6=BOOK F7=UP F8=DOWN F9=SWAP F10=LEFT F11=RIGHT F12=RETRIEVE SDSF.INIT /D $DI /D $SPOOL

  21. SDSF.ULOG /$D I • Display Filter View Print Options Help • ------------------------------------------------------------------------------ • SDSF ULOG CONSOLE DNET855 LINE 0 COLUMNS 42- 121 • COMMAND INPUT ===> SCROLL ===> PAGE • ********************************* TOP OF DATA ********************************* • ISF031I CONSOLE DNET855 ACTIVATED • -$DI • $HASP892 INIT(1) • $HASP892 INIT(1) STATUS=ACTIVE,CLASS=A,NAME=1, • $HASP892 ASID=00E9,JOBID=JOB09317 • $HASP892 INIT(2) • $HASP892 INIT(2) STATUS=ACTIVE,CLASS=BA,NAME=2, • $HASP892 ASID=002A,JOBID=JOB00029 • $HASP892 INIT(3) • $HASP892 INIT(3) STATUS=INACTIVE,CLASS=CBA,NAME=3, • $HASP892 ASID=002B • $HASP892 INIT(4) • $HASP892 INIT(4) STATUS=INACTIVE,CLASS=DCBA,NAME=4, • $HASP892 ASID=002C • $HASP892 INIT(5) • $HASP892 INIT(5) STATUS=INACTIVE,CLASS=DCBA,NAME=5, • $HASP892 ASID=002D /$D I

  22. Symbolic references to files • z/OS normally uses symbolic referencesto files (data sets) rather than actual file names. • The use of symbolic references provides a naming redirection between a data set-related name used in a program and the actual data set used during execution of that program.

  23. How a symbolic file system is used

  24. JES, job management, and JCL • Job control language (JCL) is the language used by a batch job to request resources and services from the operating system. • Through JCL, you specify: • Who you are (important for security reasons). • Which resources (programs, files, memory) and services are needed from the system to process your program. • The use of JCL is covered in detail in the next module.

  25. Spooling

  26. Two-step job

  27. Job flow through the system • During execution, a job goes through the following phases: • Input • Conversion • Processing • Output • Print (to hardcopy or a console display) • Purge

  28. Phases of job flow: input Internal readers (RDR)

  29. Phases of job flow: conversion Merge w/ Proc Libs

  30. Phases of job flow: execution WLM Initiators Request Initiators - wlm

  31. Phases of job flow: output and hardcopy Sysout dsn processing - classes

  32. Phases of job flow: purge Clears spool

  33. Job flow through the system Overall Flow

  34. Batch and Job Submission

  35. JES END /* //

  36. What is workload manager? • Workload manager (WLM): • The component of z/OS that manages the processing of workload in the system according to the company’s business goals, such as response time. • Also manages the use of system resources, such as processors and storage, to accomplish these goals.

  37. Workload Management Policy for different classes of users Service Level Agreement

  38. Gold customer High Priority Business Partner High Priority Customer care High Priority (Business Hours) OD Insurance SLA Highest (1) = Gold Customer High (2) Customer Care Medium (3) Business Partner Low (4) Casual Customer Lowest (5) Data Analysis Casual customer Low priority Data Analysis (Best can do) Segregate different classes of uses

  39. Summary • Batch processing is a fundamental function of z/OS. • z/OS shares with JES the management of jobs and resources. • JES receives jobs into the system, schedules them for processing, and controls their output. • JES manages jobs in queues. • An initiator sets up the necessary environment for running a batch job. Multiple initiators permit the parallel execution of batch jobs. • During the life of a job, both JES and the z/OS base control program control different phases of the overall processing.

More Related