What is Work Management?

Similar documents
Unit 4 i5/os Work Management

ERserver. iseries. Work management

Operating System: Scheduling

Deciding which process to run. (Deciding which thread to run) Deciding how long the chosen process can run

Table of Contents. Chapter 1: Introduction. Chapter 2: Getting Started. Chapter 3: Standard Functionality. Chapter 4: Module Descriptions

DISASTER STRIKES. Are you ready?

Objectives. Chapter 5: Process Scheduling. Chapter 5: Process Scheduling. 5.1 Basic Concepts. To introduce CPU scheduling

Operating Systems Lecture #6: Process Management

Operating System Tutorial

CPU Scheduling. Basic Concepts. Basic Concepts (2) Basic Concepts Scheduling Criteria Scheduling Algorithms Batch systems Interactive systems

Analyzing IBM i Performance Metrics

Communications Management

Operating Systems 4 th Class

Systems Management Advanced job scheduler

ICS Principles of Operating Systems

System Operator s Guide. MaddenCo Inc. Revised August Copyright 2003 by MaddenCo, Inc All rights reserved.

Operating Systems Concepts: Chapter 7: Scheduling Strategies

ELEC 377. Operating Systems. Week 1 Class 3

Road Map. Scheduling. Types of Scheduling. Scheduling. CPU Scheduling. Job Scheduling. Dickinson College Computer Science 354 Spring 2010.

CPU Scheduling. CPU Scheduling

Scheduling. Yücel Saygın. These slides are based on your text book and on the slides prepared by Andrew S. Tanenbaum

UPS/400 Installation and Administration Guide

Operating Systems. III. Scheduling.

Securing Your User Profiles Against Abuse

EView/400i Management Pack for Systems Center Operations Manager (SCOM)

CHAPTER 15: Operating Systems: An Overview

W4118 Operating Systems. Instructor: Junfeng Yang

Performance Navigator Installation

AS/400e. Networking AS/400 Communications Management

Operating System Software

i5/os and related software Distributing software

OPERATING SYSTEMS SCHEDULING

Chapter 6, The Operating System Machine Level

Operating system Dr. Shroouq J.

Chapter 2: OS Overview

Technical Properties. Mobile Operating Systems. Overview Concepts of Mobile. Functions Processes. Lecture 11. Memory Management.

Processes and Non-Preemptive Scheduling. Otto J. Anshus

Operating Systems. 05. Threads. Paul Krzyzanowski. Rutgers University. Spring 2015

Objectives. Chapter 5: CPU Scheduling. CPU Scheduler. Non-preemptive and preemptive. Dispatcher. Alternating Sequence of CPU And I/O Bursts

Kernel. What is an Operating System? Systems Software and Application Software. The core of an OS is called kernel, which. Module 9: Operating Systems

Multiprogramming. IT 3123 Hardware and Software Concepts. Program Dispatching. Multiprogramming. Program Dispatching. Program Dispatching

Announcements. Basic Concepts. Histogram of Typical CPU- Burst Times. Dispatcher. CPU Scheduler. Burst Cycle. Reading

Process Scheduling CS 241. February 24, Copyright University of Illinois CS 241 Staff

A Review on Load Balancing In Cloud Computing 1

Chapter 5: CPU Scheduling. Operating System Concepts 8 th Edition

Chapter 1 Computer System Overview

This tutorial will take you through step by step approach while learning Operating System concepts.

Thomas Fahrig Senior Developer Hypervisor Team. Hypervisor Architecture Terminology Goals Basics Details

Question: 1 Which associated object must be restored on the system prior to restoring a logical file?

High Availability for IBM Power i TM

theguard! ApplicationManager System Windows Data Collector

/ Operating Systems I. Process Scheduling. Warren R. Carithers Rob Duncan

Operating System Structures

REPRINT. Release Reference Manual. IBM iseries (AS/400) Developed and Distributed by

Remote Software Facility

Redpaper. Securing Communications with OpenSSH on IBM i5/os. Front cover. ibm.com/redbooks. Learn how to install, configure, and use SSH with i5/os

DSK MANAGER. For IBM iseries and AS/400. Version Last Updated September Kisco Information Systems 7 Church Street Saranac Lake, NY 12983

Migrate AS 400 Applications to Linux

Kernel comparison of OpenSolaris, Windows Vista and. Linux 2.6

PROCESS SCHEDULING ALGORITHMS: A REVIEW

CPU Scheduling. Core Definitions

Comp 204: Computer Systems and Their Implementation. Lecture 12: Scheduling Algorithms cont d

Types Of Operating Systems

A Comparative Study of CPU Scheduling Algorithms

Version 5.0. MIMIX ha1 and MIMIX ha Lite for IBM i5/os. Using MIMIX. Published: May 2008 level Copyrights, Trademarks, and Notices

Chapter 3. Operating Systems

DASD-Plus. Guide. Quick Start

Symtrax User Manual. Bravo Express. For Use with Version 1. Bravo Express is made and distributed by Symtrax Corporation, USA.

Scheduling. Scheduling. Scheduling levels. Decision to switch the running process can take place under the following circumstances:

CPU SCHEDULING (CONT D) NESTED SCHEDULING FUNCTIONS

Chapter 3 Operating-System Structures

Robot CONSOLE 6 User Guide

Page 1 of 5. IS 335: Information Technology in Business Lecture Outline Operating Systems

iseries Logical Partitioning

User Guide Flying Cloud Drive, Suite 200 Eden Prairie, MN Phone 952/ Fax 952/

Edition. Nineteenth Edition (January 2015)

OS OBJECTIVE QUESTIONS

CPU Scheduling. CSC 256/456 - Operating Systems Fall TA: Mohammad Hedayati

How To Understand And Understand An Operating System In C Programming

CS 377: Operating Systems. Outline. A review of what you ve learned, and how it applies to a real operating system. Lecture 25 - Linux Case Study

Principles of Operating Systems CS 446/646

2. is the number of processes that are completed per time unit. A) CPU utilization B) Response time C) Turnaround time D) Throughput

Chapter 5 Process Scheduling

CPU Scheduling Outline

Processor Scheduling. Queues Recall OS maintains various queues

CS0206 OPERATING SYSTEMS Prerequisite CS0201, CS0203

HelpSystems Web Server User Guide

Chapter 2 System Structures

Lecture Outline Overview of real-time scheduling algorithms Outline relative strengths, weaknesses

TCP/IP Loggingontoa remote computer (Telnet)

TIBCO MFT Platform Server for IBM i User Guide. Software Release April 2013

Robot SAVE 12 User Guide

Multiprocessor Scheduling and Scheduling in Linux Kernel 2.6

CS414 SP 2007 Assignment 1

DB2 for i5/os: Tuning for Performance

Operating Systems Introduction

Computers: Tools for an Information Age

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai Jens Onno Krah

Operating Systems, 6 th ed. Test Bank Chapter 7

System i and System p. Customer service, support, and troubleshooting

Transcription:

What is Work Management? Copyright IBM Corporation 2008 1

More User Single User Enviroment Multi User Enviroment Application Application OS OS... Performance? Security? Availability? Copyright IBM Corporation 2008 2

More Applications App 1 App 2... App N App 1 App2... App N OS 1 OS 2 OS N OS...... Performance? Security? Availability? Maintenance? Copyright IBM Corporation 2008 3

Reality is more complex! Performance? Security? Availability? Maintenance?... Copyright IBM Corporation 2008 4

Work Management Running Multiple Applications in a single OS Instance App 1 App2... OS App N Performance (or how to share ressources) Security Lecture 4 Availability... Do not confuse work management and LPAR! Copyright IBM Corporation 2008 5

Process Scheduling Copyright IBM Corporation 2008 6

Introduction to Scheduling Bursts of CPU usage alternate with periods of I/O wait a CPU-bound process an I/O bound process Scheduling? Time slice? Memory management? Source: Andrew S. Tanenbaum: Modern Operating Systems 2th Edition Copyright IBM Corporation 2008 7

Scheduling Algorithm Goals Source: Andrew S. Tanenbaum: Modern Operating Systems 2th Edition Copyright IBM Corporation 2008 8

Diagram of Process State As a process executes, it changes state new: The process is being created running: Instructions are being executed waiting: The process is waiting for some event to occur ready: The process is waiting to be assigned to a processor terminated: The process has finished execution Source: Silberschatz, Galvin and Gagne: Operating System Concepts - 7th Edition Copyright IBM Corporation 2008 9

Preemptive and Non-preemptive Scheduling CPU scheduling decicions may take place, if a process (1) switches from running to waiting state (2) switches from running to ready state (3) switches from waiting to ready state (4) terminates When scheduling take place only under (1) or (4) the scheduling scheme is non-preemptive or preemptive. Examples: non-preemptive: Windows 3.1 preemptive: Windows 95 or later, Mac OS X Source: Andrew S. Tanenbaum: Modern Operating Systems 2th Edition Copyright IBM Corporation 2008 10

Context Switch When CPU switches to another process, the system must save the state of the old process and load the saved state for the new process Context-switch time is overhead; the system does no useful work while switching Time dependent on hardware support Source: Silberschatz, Galvin and Gagne: Operating System Concepts - 7th Edition Copyright IBM Corporation 2008 11

Process Control Block (PCB) Information associated with each process: Process state Program counter CPU registers CPU scheduling information Memory-management information Accounting information I/O status information Source: Silberschatz, Galvin and Gagne: Operating System Concepts - 7th Edition Copyright IBM Corporation 2008 12

Single Process Execution CPU I/O Burst Cycle Process execution consists of a cycle of CPU execution and I/O wait CPU burst distribution Source: Silberschatz, Galvin and Gagne: Operating System Concepts - 7th Edition Copyright IBM Corporation 2008 13

CPU Switch From Process to Process Source: Silberschatz, Galvin and Gagne: Operating System Concepts - 7th Edition Efficient process scheduling? Copyright IBM Corporation 2008 14

Scheduling Criteria CPU utilization keep the CPU as busy as possible Throughput # of processes that complete their execution per time unit Turnaround time amount of time to execute a particular process Waiting time amount of time a process has been waiting in the ready queue Response time amount of time it takes from when a request was submitted until the first response is produced, not output (for time-sharing environment) Source: Silberschatz, Galvin and Gagne: Operating System Concepts - 7th Edition Copyright IBM Corporation 2008 15

Scheduling in Interactive Systems A scheduling algorithm with four priority classes Source: Andrew S. Tanenbaum: Modern Operating Systems 2th Edition Copyright IBM Corporation 2008 16

Scheduling in Batch Systems Three level scheduling Source: Andrew S. Tanenbaum: Modern Operating Systems 2th Edition Copyright IBM Corporation 2008 17

Example: IBM i aka i5/os, OS/400 Copyright IBM Corporation 2008 18

5.1 Operator s View Copyright IBM Corporation 2008 19

Job Qualified job name 000578 AS24xx DSP01 J ob num b e r Us e r nam e J o b nam e Copyright IBM Corporation 2008 20

Job Types System jobs Q... S pooling User jobs I nt e r ac t ive Aut o s t ar t Bat c h Co m m unic at io n Copyright IBM Corporation 2008 21

Job Properties Copyright IBM Corporation 2008 22

The Life Cycle of a Job Submit Job queue Subsystem Memory pool Output Copyright IBM Corporation 2008 23

Work Management Objects OS/400 SYSTEM VALUES NETWORK ATTRIBUTES SUBSYSTEM SBSD JOB THREAD WORK ENTRIES ROUTING ENTRIES JOBD CLASS POOLS PROGRAM Copyright IBM Corporation 2008 24

System Values Copyright IBM Corporation 2008 25

Network Attribute Current System Name Local Network ID APPN Node type Alert Status Alert Primary Focal Point Message Queue/Obj. Dist. Output Queue/Obj. Dist. Action for DDM Request PC Support Request Access ABC APPN *ENDNODE *OFF *NO QSYS/QSYSOPR QGPL/QPRINT *OBJAUT *OBJAUT Copyright IBM Corporation 2008 26

Job Queue Job queue JOB1 (2) JOB2 (1) JOB3 (4) JOB4 (2) JOB5 (1) JOB6 (4) Job queue priority 1 JOB2 HIGH JOB5 2 3 4. JOB1 JOB4 JOB3 JOB6 LOW Copyright IBM Corporation 2008 27

Job Description Display Job Description Job description: QDFTJOBD Library: QGPL System: HYDRA User profile.................. : *RQD CL syntax check................ : *NOCHK Hold on job queue............... : *NO End severity.................. : 30 Job date.................... : *SYSVAL Job switches.................. : 00000000 Inquiry message reply............. : *RQD Job priority (on job queue).......... : 5 Job queue................... : QBATCH Library................... : QGPL Output priority (on output queue)....... : 5 Printer device................. : *USRPRF Output queue.................. : *USRPRF Library................... : Press Enter to continue. More... F3=Exit F12=Cancel Message logging: Level.................... : 4 Severity................... : 0 Text..................... : *NOLIST Copyright IBM Corporation 2008 28

User Profile Display User Profile - Basic User profile............... : AS2401 Storage information: Maximum storage allowed........ : *NOMAX Storage used.............. : 312 Storage used on independent ASP.... : *NO Highest scheduling priority....... : 3 Job description............. : QDFTJOBD Library................ : QGPL Accounting code............. : Message queue.............. : AS2401 Library................ : QUSRSYS Message queue delivery.......... : *NOTIFY Message queue severity.......... : 00 Output queue............... : AS24OUTQ Library................ : AS2401 Printer device.............. : *WRKSTN Press Enter to continue. More... F3=Exit F12=Cancel Copyright IBM Corporation 2008 29

Job Processing SBMJOB Job queue Subsystem pool Output queue WRITER Sign-on Batch Interactive PRINTER WRKJOBQ WRKACTJOB WRKOUTQ WRKWTR WRKSPLF WRKUSRJOB WRKSBMJOB Copyright IBM Corporation 2008 30

Subsystems A specialized environment for handling a certain type of work or function, such as: INTERACTIVE BATCH SPOOLING COMMUNICATIONS Copyright IBM Corporation 2008 31

Storage Pools Logical Areas of Main Storage for Jobs: POOL SIZE sets amounts of storage Noncontiguous pages Deallocated when set to *NOSTG (No storage) PAGING is restricted to pool ACTIVITY LEVEL determines how many job threads may have main storage Two types of pools: SHARED AND PRIVATE *SPOOL POOL (4) *INTERACT POOL (3) *BASE POOL (2) *MACHINE POOL (1) Copyright IBM Corporation 2008 32

Subsystem Description (1/4) Display Subsystem Description Subsystem description: QINTER System: ABC Status: ACTIVE Library: QSYS Select one of the following: 1. Operational attributes 2. Pool definitions 3. Autostart job entries 4. Work station name entries 5. Work station type entries 6. Job queue entries 7. Routing entries 8. Communications entries 9. Remote location name entries 10. Prestart job entries 30. All of the above Operational Attributes Maximum jobs in subsystem Sign-on display file Pool Definitions Pool ID Storage Size (KB) *NOMAX QSYS/QDSIGNON 1 *BASE Selection or command ==> 2 *INTERACT Copyright IBM Corporation 2008 33

Subsystem Description (2/4) Display Subsystem Description Subsystem description: QINTER System: ABC Status: ACTIVE Library: QSYS Select one of the following: 1. Operational attributes 2. Pool definitions 3. Autostart job entries 4. Work station name entries 5. Work station type entries 6. Job queue entries 7. Routing entries 8. Communications entries 9. Remote location name entries 10. Prestart job entries WORKSTATION Entries Type Jobd Name Jobd *ALL *USRPRF DSP03 *USRPRF Job Queue Entries PRESTART Job Entries Jobq Prog Jobd QBATCH PROG01 JOBDAPPC 30. All of the above AUTOSTART Job Entries Communication Entries Selection or command ==> Job START Jobd STARTJD Dev *ALL Jobd *USRPRF Copyright IBM Corporation 2008 34

Subsystem Description (3/4) Display Subsystem Description Subsystem description: QINTER System: ABC Status: ACTIVE Library: QSYS Select one of the following: 1. Operational attributes 2. Pool definitions 3. Autostart job entries 4. Work station name entries 5. Work station type entries 6. Job queue entries 7. Routing entries 8. Communications entries 9. Remote location name entries 10. Prestart job entries 30. All of the above Routing Entries SEQNBR CMPVAL CLASS PGM POOL ID 10 QCMDB QBATCH QCMD 1 50 QCMDI QINTER QCMD 2 9999 *ANY QBATCH QCMD 1 Class Information QBATCH QINTER Run Priority 50 20 Selection or command ==> Time Slice 5000 ms 2000 ms Purge *NO *YES Wait Time 120 sec 30 sec Copyright IBM Corporation 2008 35

Subsystem Description (4/4) Display Subsystem Description Subsystem description: QINTER System: ABC Status: ACTIVE Library: QSYS Select one of the following: 1. Operational attributes 2. Pool definitions 3. Autostart job entries 4. Work station name entries 5. Work station type entries 6. Job queue entries 7. Routing entries 8. Communications entries 9. Remote location name entries 10. Prestart job entries Job queue entries in subsystem description JOBQ JOBQA JOBQB JOBQC SEQNBR 1O 20 30 MAXACT *NOMAX 1 1 MAXPTY1 *NOMAX *NOMAX *NOMAX. : : : MAXPTY9 : : JOB 2 JOB 4 JOB 5 JOB 1 JOB 3 30. All of the above Jobs 1 to 5 have equal priority. Which jobs run concurrently if the subsystem description has: MAXJOBS = 2? MAXJOBS = 4 MAXJOBS = *NOMAX Selection or command MAXJOBS = 3 ==> Copyright IBM Corporation 2008 36

Batch Job Routing SBMJOB CMD(CALL PRPROC) RTGDTA(QCMDB) JOB(PAY) JOBQ(QBATCH) SUBSYSTEM MONITOR PROGRAM QBATCH Subsystem Description Max Jobs - *NOMAX Job Queue Entry PAY JOBQ QBATCH Job Queue Max Act Max Pty(n) QBATCH 1 *NOMAX Routing Entry SEQNBR CMPVAL PGM CLASS POOL 9999 *ANY QCMD QBATCH 1 CLASS QGPL/QBATCH Run Priority CALL PRPROC QSYS/QCMD PRPROC *BASE JOB MSGQ PAY Copyright IBM Corporation 2008 37

Interactive Job Routing User Password User Profile = XYZ Attributes QINTER Subsystem Description Storage Pools MAXJOBS(*NOMAX) ID Storage 1 *BASE Sign-on Display File 2 *INTERACT (QSYS/QDSIGNON) Work Station Entry Work Station Job Description LWS1 *USRPRF Routing Entry SEQNBR CMPVAL PGM Class Pool 50 QCMDI QCMD QINTER 2 QSYS/QCMD Job Description USERLIB/USERJOBD User Name Job Queue Job Priority Output Priority Routing Data (QCMDI) Request Data Initial Library List More.... CLASS QGPL/QINTER PASSWORD = XXXXXX INLPGM = USERLIB/USERPGM JOBD = USERLIB/USERJOBD USERPGM *INTERACT Run Priority Copyright IBM Corporation 2008 38

Operator s View CLASS Main Storage 7 PROFILE Priority PROG1 Initial Program 6 Job Description 4 5 QCMD 1 SBSD Routing 3 SBS Monitor OS/400 2 JOBD Job Description Routing Copyright IBM Corporation 2008 39

5.2 System s View Job Structure and Task Dispatching Copyright IBM Corporation 2008 40

Three-level Hierachy of Work Process MI System object called process-control space (PCS) Tie together the resources for program invocation Consists of A executable program (can be shared) Program s data State informations Could also be defined as a program in execution Job OS/400 object that contains a process structure to manage system resources Thread A portion of a process A process may have more than one thread Each thread consists of Set of registers representing the state of the processor A control stack Automatic program storage (local variables) System resources allocated to the process are shared with other threads within the process Copyright IBM Corporation 2008 41

Permanent Job Structure Objects WCBT WCBTE JOBMSGQ SCB JOBQ LDA WCBTE JOBMSGQ SCB SBSD LDA PCS JOBMSGQ Job Message Queue SCB Spool Control Block LDA Local Data Area JOBMSGQ Job Message Queue SCB Spool Control Block LDA Local Data Area PCS Process Control Space JOB on JOBQ JOB active in Subsystem WCBT Work Control Block Table WCBTE Work Control block Table Entry Copyright IBM Corporation 2008 42

Temporary Job Structure Objects WCBT Process Access Group Control Field File SCB JOBMSGQ LDA Process Control Space Thread Control Space (for initial thread) Static Storage A O D P B O D P QTEMP TDE Thread Control Space (for secondary thread) TDE ODP Open Data Path TDE Task Dispatching Element Thread Control Space (for secondary thread) TDE Copyright IBM Corporation 2008 43

Open Data Path (ODP) X Control Field File UFCB A O D P Job X Create Duplicate #1 Open A O D P UFCB User Field Control Block Copyright IBM Corporation 2008 44

Open Data Path Sharing SHARE(*NO) X Control Field File Static Storage A O D P A O D P Job X Pgm #1 Open file A Call Pgm #2 Call Pgm #2 Open file A Return Job Y SHARE(*YES) Y Static Storage A O D P Control Field File Copyright IBM Corporation 2008 45

Thread-control Space (TCS) are temporary SLIC objects will be recycled at process level or at systems level when process ends Storage vector table Segment header Stack control block Nonresident lightweight Process control block MI automatic storage (system state) Event monitors MI automatic storage (user state) Stack frames Source: Frank G. Soltis, Fortress Rochester, Fig. 13.5 Copyright IBM Corporation 2008 46

Task Dispatching Queues TDQ description Pointer Highest TDE description Pointer Priority TDE description Pointer Priority Priority TDE description Pointer Priority TDE description Pointer Priority Lowest Copyright IBM Corporation 2008 47

Send/Receive Queues Data structure used as mailbox for tasks SEND MESSAGE enqueued a SRM Execute a RECEIVE MESSAGE operations to obtain a message (dequeing) If no message is available the task has to wait SRQ SRM CHAIN TDE CHAIN SRM KEY1 SRM CHAIN MSG PRIORITY TDE CHAIN STATUS TDE SRM KEY2 SRM CHAIN MSG SRQ Send/Receive Queue SRM Send/Receive Message RECM Recieve Message SENDM Send Message Copyright IBM Corporation 2008 48

RECM TDQ TDE CHAIN Instruction Stream TDE PRIORITY TDE CHAIN STATUS RECM OP 1 OP2 TDE PRIORITY TDE CHAIN STATUS KEY SRQ SRM CHAIN TDE CHAIN SRM KEY1 SRM CHAIN MSG PRIORITY TDE CHAIN STATUS TDE SRM KEY2 SRM CHAIN MSG PRIORITY TDE CHAIN STATUS TDE Key Comparison Copyright IBM Corporation 2008 49

If RECM Is Unsatisfied TDQ TDE CHAIN Instruction Stream INSTR TDE PRIORITY TDE CHAIN STATUS SRQ SRM CHAIN TDE CHAIN SRM KEY1 SRM CHAIN MSG PRIORITY TDE CHAIN STATUS TDE SRM KEY2 SRM CHAIN MSG PRIORITY TDE CHAIN STATUS TDE PRIORITY TDE CHAIN STATUS TDE Copyright IBM Corporation 2008 50

SENDM (1/2) TDQ TDE CHAIN Instruction Stream TDE PRIORITY TDE CHAIN STATUS SENDM I OP 1 TDE PRIORITY TDE CHAIN STATUS SRM KEY2 SRM CHAIN MSG SRQ SRM CHAIN TDE CHAIN SRM KEY1 SRM CHAIN MSG PRIORITY TDE CHAIN STATUS TDE PRIORITY TDE CHAIN STATUS TDE Copyright IBM Corporation 2008 51

SENDM (2/2) TDQ TDE CHAIN Instruction Stream TDE PRIORITY TDE CHAIN STATUS INSTR TDE PRIORITY TDE CHAIN STATUS TDE PRIORITY TDE CHAIN STATUS Priority TDE PRIORITY TDE CHAIN STATUS SRQ SRM CHAIN TDE CHAIN SRM KEY1 SRM CHAIN MSG SRM KEY2 SRM CHAIN MSG Copyright IBM Corporation 2008 52

Task States TDQ TDE TDE CHAIN PRIORITY TDE CHAIN STATUS Active TDE PRIORITY TDE CHAIN STATUS TDE TDE PRIORITY TDE CHAIN STATUS PRIORITY TDE CHAIN STATUS Ready Wait SRQ SRM CHAIN TDE CHAIN SRM KEY1 SRM CHAIN MSG PRIORITY TDE CHAIN STATUS SRM KEY2 SRM CHAIN MSG PRIORITY TDE CHAIN STATUS Copyright IBM Corporation 2008 53

States of Tasks 1. Initiate task (start work) 2. Run task (dispatch task) 3. Suspend task (work done) Ready (ineligible) 6. 2. 1. Wait Suspended 5. 4. 3. 1. Preempt task (by another task) 2. Wait(for I/O or another task) 3. Signal (task is done waiting) Running (active) Copyright IBM Corporation 2008 54

Thread States and Transitions Long Wait State NO YES Act Level Open W-I W-A I-A Ineligible State Active State Activity Levels 1 2 3 NO A-A Other Jobs Ineligible A-I Prime Task Dispatching Queue A-W TSE Send/ Receive Queue Copyright IBM Corporation 2008 55

Observing Thread State Transitions Work with System Status ABC 06/21/XX 10:11:12 % CPU used...... : 61.7 Auxiliary storage: % DB capability... : Elapsed time..... : 00:06:30 System ASP......... : 3258 M Jobs in system.... : 494 % system ASP........ : 18.6657 % perm addresses... : Total........... : 3258 M % temp addresses... : Permanent.... : 3.063 Current unprotect used... : 437 M Temporary.... : 3.962 Maximum unprotect......: 437 M Type changes (if allowed), press Enter. System Pool Reserved Max Active -->Wait --> Active --> Pool Size (M) Size (M) Active Wait Inel Inel 1 3.61 2.26 +++ 7.5.0.0 2 3.97 0 10.4.0.0 3.23 0 3.0.0.0 4 8.19 0 25 88.4.0.0 Bottom Command ===> 4=Prompt F5=Refresh F9=Retrieve F10=Restart F11=Display pool data F12=Cancel F14= Work with subsystems F24=More Keys Copyright IBM Corporation 2008 56

Active-to-Wait Long Wait State JOBA Act Level Open? Yes Active-to-Wait A-W Prime TDQ Activity Levels 1 2 3 JOBA JOBB JOBC Active State JOBA JOBB A-W JOBC PAG Copyright IBM Corporation 2008 57

Wait-to-Ineligible Long Wait State JOBA NO Act Level Open? W-I JOBA YES Ineligible State Activity Levels 1 2 3 JOBD JOBB JOBC Active State Copyright IBM Corporation 2008 58

Wait in Activity Level Long Wait State JOBA Activity Levels 1 JOBB 2 3 JOBC Active State Prime TDQ JOBB JOBC Send/ Receive Queue Copyright IBM Corporation 2008 59

Active-to-Ineligible Ineligible State JOBC Prime TDQ JOBA JOBB JOBC 1 2 3 JOBB A-A TSE Other Jobs Ineligible? A-I Copyright IBM Corporation 2008 60

Dynamic Priority Scheduling New algorithms on RISC systems No job can monopolize the CPU Jobs not using CPU have their DELAY COST increased Low-priority jobs have a chance to progress iseries server optimization for batch Interactive job priority lowered when batch demand is high Can be turned on/off QDYNPTYSCD and QDYNPTYADJ Copyright IBM Corporation 2008 61

Delay Cost Curves Delay Cost Priorities 10-16 Priority 0-9 Priorities 17-22 Priorities 23-35 Priorities 36-46 Priorities 47-51 Priorities 52-89 Priorities 90-99 Time (Millions of cycles) Copyright IBM Corporation 2008 62

Multi-Processor Considerations (1/2) Dispatching the first n top TDEs on the TDQ? STOP Cache Affinity and Performance?! Copyright IBM Corporation 2008 63

Multi-Processor Considerations (2/2) Task Dispatching is based on priority, cache affinity and eligibility Three bits in a TDE Eligibility bit one bit for every processor indicates that a task is eligible to run on on corresponding processor Active field one bit for every processor indicates on which processor the task is currently running Affinity field one bit for every processor Indicates on which processor the task was currently running Copyright IBM Corporation 2008 64