OS 2 Processes
OS 2 Processes
ECEG-5202
PROCESSES
Outline
▪Process concepts
▪Operation on Processes
▪Threads
◦ Differences
◦ Unlike processes, threads are not independent of one another
◦ Unlike processes, all threads can access every address in the task
◦ Unlike processes, threads are design to assist one other
◦ Note that processes might or might not assist one another because processes may
originate from different usersZ
◦ Parallelism
◦ A system can perform more than one task simultaneously
◦ Concurrency
◦ Supports more than one task that make progress
◦ Single processor/core, scheduler providing concurrency
◦ Efficiency
◦ CPU should be kept busy for almost 100% of the time
◦ Response time
◦ Response time for interactive users must be minimized
◦ Turnaround
◦ The time batch users must wait for an output should be minimized
◦ Throughput
◦ The number of jobs processed per unit time should be maximized
◦ Preemptive Scheduling
◦ Once a process has been given CPU, the CPU can be taken away
◦ Possibility I
◦ If each queue has absolute priority over lower priority queues, wait for all processes in highest priority
queue finishes
◦ Possibility II
◦ If there is a time slice between the queues then each queue gets a certain amount of CPU time, which
it can then schedule among the processes in its queue
◦ Has advantage of low scheduling overhead but its inflexible
◦ Example:
◦ 80% of the CPU time to foreground queue using RR
◦ 20% of the CPU time to background queue using FCFS