1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
Operating Systems: Processor Management
-
Upload
damian-gordon -
Category
Education
-
view
104 -
download
0
Transcript of Operating Systems: Processor Management
![Page 1: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/1.jpg)
Processor Management
Damian Gordon
![Page 2: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/2.jpg)
If you were assembling some IKEA furniture, and following the step-by-step guide of 20 steps.
Imagine you did step 1, then step 2, then step 3, suddenly the doorbell rang, and you are interrupted.
Processor Management
![Page 3: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/3.jpg)
You would stop what you are doing and deal with whoever is at the door.
Then you would return to the assembly, check what step you were on, and then continue on from there (step 4).
Processor Management
![Page 4: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/4.jpg)
This is how the computer runs multiple processes simultaneously … you do a few steps on one process, get interrupted, work on other processes, then return to the first process, remembering where you left off from, and continue on.
This swapping of processes is called a pre-emptive scheduling policy.
Processor Management
![Page 5: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/5.jpg)
A “Process” is the basic unit of execution in the operating system
A “Process” is the name we give to a program when it is running in memory◦ So a “Program” is the complied executable◦ And a “Process” is the running executable with
the execution state.
Processor Management
![Page 6: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/6.jpg)
The same program being run by two different users in the operating system are two different processes
Processor Management
User 1 Process1
RunningExecutable
1Execution
State 1
User 2 Process2
ExecutionState 2
RunningExecutable
1
![Page 7: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/7.jpg)
The Processor Manager is made up of two sub-managers:
Processor Management
Process Scheduler
Job Scheduler
![Page 8: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/8.jpg)
Processor Management
Process Scheduler
Job Scheduler
Process2
Process3
Process4
Process5
Process1
![Page 9: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/9.jpg)
We describe a collection of processes as a “job”.
When the operating systems is presented with a job (or group of processes) to run, the Job Scheduler has the task of deciding which order to run the are processes in.
The Job Scheduler wants to ensure that the all components of the operating system are busy, and there is no component that is idle.
Job Scheduler
![Page 10: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/10.jpg)
Let’s think about this program:PROGRAM PrintValue:BEGIN Input A; Input B; C = A + B; D = A – B; Print “The sum of inputs is: “, C; Print “The Difference of inputs is: “, D;END.
Job Scheduler
![Page 11: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/11.jpg)
I/O
Let’s think about this program:PROGRAM PrintValue:BEGIN Input A; Input B; C = A + B; D = A – B; Print “The sum of inputs is: “, C; Print “The Difference of inputs is: “, D;END.
Job Scheduler
![Page 12: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/12.jpg)
I/O
Let’s think about this program:PROGRAM PrintValue:BEGIN Input A; Input B; C = A + B; D = A – B; Print “The sum of inputs is: “, C; Print “The Difference of inputs is: “, D;END.
Job SchedulerReading
from keyboard
![Page 13: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/13.jpg)
I/O
I/O
Let’s think about this program:PROGRAM PrintValue:BEGIN Input A; Input B; C = A + B; D = A – B; Print “The sum of inputs is: “, C; Print “The Difference of inputs is: “, D;END.
Job Scheduler
![Page 14: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/14.jpg)
I/O
I/O
Let’s think about this program:PROGRAM PrintValue:BEGIN Input A; Input B; C = A + B; D = A – B; Print “The sum of inputs is: “, C; Print “The Difference of inputs is: “, D;END.
Job Scheduler
WritingTo
screen
![Page 15: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/15.jpg)
CPUI/O
I/O
Let’s think about this program:PROGRAM PrintValue:BEGIN Input A; Input B; C = A + B; D = A – B; Print “The sum of inputs is: “, C; Print “The Difference of inputs is: “, D;END.
Job Scheduler
![Page 16: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/16.jpg)
CPUI/O
I/O
Let’s think about this program:PROGRAM PrintValue:BEGIN Input A; Input B; C = A + B; D = A – B; Print “The sum of inputs is: “, C; Print “The Difference of inputs is: “, D;END.
Job Scheduler
Doing computation
![Page 17: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/17.jpg)
CPU
I/O
I/O
Some programs do a lot of I/O, e.g. Graphics programs:
Job Scheduler
![Page 18: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/18.jpg)
Others do a lot of computation, but little I/O, e.g. maths programs:
Job Scheduler
CPU
I/O
I/O
![Page 19: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/19.jpg)
Job Scheduler If the job scheduler gets jobs like this:
![Page 20: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/20.jpg)
Job Scheduler If the job scheduler gets jobs like this:
I/O Heavy CPU Heavy
![Page 21: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/21.jpg)
Job Scheduler So the job scheduler will take these jobs:
I/O Heavy CPU Heavy
![Page 22: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/22.jpg)
Job Scheduler And swap them around, and pass them onto
the Process Scheduler
I/O Heavy
CPU Heavy
I/O Heavy
CPU HeavyCPU Heavy
![Page 23: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/23.jpg)
Job Scheduler So in this case the Job Scheduler wants to
balance the processes coming in, so that the components of the operating system are all kept busy.
If we don’t change the order of processes, the CPU will be very busy, but the I/O component will be idle, and then vice versa.
This is not an optimal use of resources, so we swap them around.
![Page 24: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/24.jpg)
Job Scheduler We'll call jobs that are CPU-bound Batch
Jobs, and we’ll call jobs that have a lot of I/O operations Interactive Jobs.
![Page 25: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/25.jpg)
Job Scheduler This is the first level of swapping of
processes that will occur, and more will be done by the Process Scheduler. The Job Scheduler is looking at jobs (or groups of processes), and looking at the whole process from a high-level.
For obvious reasons, the Job Scheduler is also called the High-Level Scheduler.
![Page 26: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/26.jpg)
Job Scheduler Every process has a field that records their
current status, called the Process Status.
When the process is first passed to the Job Scheduler from the operating system, its status is always set as HOLD.
When the Job Scheduler passes the process onto the Process Scheduler, its status is always changed to READY.
![Page 27: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/27.jpg)
Processor ManagementProces
s2
Process3
Process4
Process5
Process1
Process Scheduler
Job SchedulerHOLD
READY
![Page 28: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/28.jpg)
Other statuses that a process can have are:
Processor Management
Process Scheduler
Job SchedulerHOLD
WAITING
READYRUNNIN
G
FINISHED
![Page 29: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/29.jpg)
Process Scheduler
HOLD FINISHED
READY RUNNING
WAITING
![Page 30: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/30.jpg)
Process Scheduler
SchedulerDispatch
Interrupt
Admitted Exit
I/O orEvent wait
I/O orEvent
completion
HOLD
READY
WAITING
RUNNING
FINISHED
![Page 31: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/31.jpg)
Think about traffic lights:
Process Scheduler
![Page 32: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/32.jpg)
This is the sequence:
Process Scheduler
![Page 33: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/33.jpg)
Process Scheduler As mentioned previously the process is first
passed to the Job Scheduler from the operating system, its status is always set as HOLD. When the Job Scheduler passes the process onto the Process Scheduler, its status is always changed to READY.
![Page 34: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/34.jpg)
Process Scheduler When the CPU is available, the Process
Scheduler will look at all of the upcoming processes and will select one of them (based on a predefined algorithm) and assuming there is memory free, the process will start running and its status is changed to RUNNING by the Process Scheduler.
![Page 35: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/35.jpg)
Process Scheduler After a predefined time, the process will be
interrupted, and another process will take over the CPU, and the interrupted process will have its status changed to READY by the Process Scheduler. We will remember that this swapping of processes is called a pre-emptive scheduling policy.
When is CPU is available for this process again the process status be changed to RUNNING by the Process Scheduler.
![Page 36: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/36.jpg)
Process Scheduler
![Page 37: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/37.jpg)
Process Scheduler If the process has to wait for some I/O from
the user or some other event, it is put in a status of WAITING by the Process Scheduler.
When the I/O device lets the Process Scheduler know that the I/O is completed, the process status will be changed to READY by the Process Scheduler.
![Page 38: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/38.jpg)
Process Scheduler Finally the process status will be changed to
FINISHED either when the process has successful completed, or if an error occurs and the process has to terminate prematurely. The status change is usually handled by the Process Scheduler informing the Job Scheduler of the process completion, and the Job Scheduler of changing the status.
![Page 39: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/39.jpg)
PROCESS SCHEDULER
JOB SCHEDULER
Processor Management
HOLD
READY
WAITING
RUNNING
FINISHED
![Page 40: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/40.jpg)
The Process status is only one of a collection of descriptors that are associated with a process.
Each process has a data structure called a Process Control Block (PCB) associated with it, rather like a passport.
Process Control Block (PCB)
![Page 41: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/41.jpg)
Process Control Block (PCB)
Operating System
Process Control Block (PCB)
![Page 42: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/42.jpg)
Process Control Block (PCB)
Process Status
Process State• Program Counter• Register Contents• Main Memory• Resources• Process Priority
Process ID
Accounting
![Page 43: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/43.jpg)
PROCESS IDENTIFIER◦ Each process is uniquely identified by both the
user’s identification, and a pointer connecting it to its descriptor.
Process Control Block (PCB)
![Page 44: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/44.jpg)
PROCESS STATUS◦ The current status of the process, it is either:
Process Control Block (PCB)
HOLD
READY
WAITING
RUNNING FINISHED
![Page 45: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/45.jpg)
PROCESS STATE◦ Program counter◦ Record the current value of the program counter
Process Control Block (PCB)
0708
![Page 46: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/46.jpg)
PROCESS STATE◦ Register Contents◦ Record the values of the data registers
Process Control Block (PCB)
![Page 47: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/47.jpg)
Process Control Block (PCB)
9 10 11
12 13 14
15 16
18 19
1 2
3 4 5
6 7 8
0
17
20
PROCESS STATE◦ Main Memory◦ Record all
important information from memory, including most importantly the process location.
![Page 48: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/48.jpg)
PROCESS STATE◦ Resources◦ Record the resources that have been allocated to
this job, including files, disk drives, and printers.
Process Control Block (PCB)
ID TYPE DETAILS1 FILE TXT file starting at memory address 0x4562 FILE DAT file starting at memory address 0x0873 DISK Disk Drive 44 FILE TXT file starting at memory address 0x6735 PRINTER Printer at IP address 172.242.34.65
![Page 49: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/49.jpg)
PROCESS STATE◦ Process Priority◦ The process is assigned a priority, and if the
operating system using priorities to schedule processes.
Process Control Block (PCB)
![Page 50: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/50.jpg)
PROCESS STATE◦ Process Priority◦ The process is assigned a priority, and if the
operating system using priorities to schedule processes.
Process Control Block (PCB)
12 54 66 23 13 32
![Page 51: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/51.jpg)
PROCESS STATE◦ Process Priority◦ The process is assigned a priority, and if the
operating system using priorities to schedule processes.
Process Control Block (PCB)
12 54 66 23 13 321 1 5 2 1 1
![Page 52: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/52.jpg)
ACCOUNTING◦ This section records some of the performance
statistics associated with this process, including: CPU time used so far Time process has been in the system Time taken in memory (Main and secondary) Space taken in memory (Main and secondary) System programs used, compliers, editors, etc. Number and type of I/O operations Time spent waiting for I/O operations completion Number of Input records read and Output records
written
Process Control Block (PCB)
![Page 53: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/53.jpg)
Process Control Block (PCB)
Process Status
Process State• Program Counter• Register Contents• Main Memory• Resources• Process Priority
Process ID
Accounting
![Page 54: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/54.jpg)
Process Control Block (PCB)
“WAITING”
Process State• 245• R1:23, R2:63, R3:71• Process Address:
345• File1, File5, Disk4• 5
Process Status
Process State• Program Counter• Register Contents• Main Memory• Resources• Process Priority
Process ID
Accounting
475
CPU: 3, Total Time:34…..
![Page 55: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/55.jpg)
In Summary
![Page 56: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/56.jpg)
Processor Management
User 1 Process1
RunningExecutable
1
User 2 Process2Running
Executable 1
![Page 57: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/57.jpg)
The Processor Manager is made up of two sub-managers:
Processor Management
Process Scheduler
Job Scheduler
![Page 58: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/58.jpg)
A group of processes is called a “job”
The Job Scheduler takes the group of processes (“jobs”)
The Job Scheduler takes this group of process (“jobs”) and re-orders them on the basis of balancing Batch and Interactive processes
Job Scheduler
![Page 59: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/59.jpg)
Job Scheduler
I/O Heavy CPU Heavy
![Page 60: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/60.jpg)
Job Scheduler
I/O Heavy
CPU Heavy
I/O Heavy
CPU HeavyCPU Heavy
![Page 61: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/61.jpg)
Other statuses that a process can have are:
Processor Management
Process Scheduler
Job SchedulerHOLD
WAITING
READYRUNNIN
G
FINISHED
![Page 62: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/62.jpg)
PROCESS SCHEDULER
JOB SCHEDULER
Processor Management
HOLD
READY
WAITING
RUNNING
FINISHED
SchedulerDispatch
Interrupt
Admitted Exit
I/O orEvent wait
I/O orEvent
completion
![Page 63: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/63.jpg)
Processor Management
(Summary)Damian Gordon
![Page 64: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/64.jpg)
Processor Management
User 1 Process1
RunningExecutable
1
User 2 Process2
RunningExecutable
1
![Page 65: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/65.jpg)
The Processor Manager is made up of two sub-managers:
Processor Management
Process Scheduler
Job Scheduler
![Page 66: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/66.jpg)
A group of processes is called a “job”
The Job Scheduler takes the group of processes (“jobs”)
The Job Scheduler takes this group of process (“jobs”) and re-orders them on the basis of balancing Batch and Interactive processes
Job Scheduler
![Page 67: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/67.jpg)
Job Scheduler
I/O Heavy CPU Heavy
![Page 68: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/68.jpg)
Job Scheduler
I/O Heavy
CPU Heavy
I/O Heavy
CPU HeavyCPU Heavy
![Page 69: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/69.jpg)
The operating system runs each process one at a time using the process scheduler
The process scheduler allows each process to run on the CPU for a given period of time (“RUNNING”), and then swaps that process out, and swaps another one into the CPU, and the initial process is set to “READY”
If the process is waiting for I/O for too long, the process is set to “WAITING”
Process Scheduler
![Page 70: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/70.jpg)
Other statuses that a process can have are:
Processor Management
Process Scheduler
Job SchedulerHOLD
WAITING
READYRUNNIN
G
FINISHED
![Page 71: Operating Systems: Processor Management](https://reader035.fdocuments.us/reader035/viewer/2022070512/589a69a61a28ab0b788b4755/html5/thumbnails/71.jpg)
PROCESS SCHEDULER
JOB SCHEDULER
Processor Management
HOLD
READY
WAITING
RUNNING
FINISHED
SchedulerDispatch
Interrupt
Admitted Exit
I/O orEvent wait
I/O orEvent
completion