You are on page 1of 15

CS211 Operating System

SP21
Week 5 (8-10 Feb)
Dr. Amritanjali
Multicore System
• Multicore systems improves the performance
• Classes of applications
– Multithreaded applications
– Multiprocess applications
– Multiple instance applications
Multihreading Vs Multiprocessing
• Takes far less time to create a new thread in an existing process
than to create a brand new process
• Terminating a thread is faster than a process
• Switching between threads of same process is faster than
between processes
• Communication between processes require kernel intervention
whereas threads can communicate through common shared
memory or files without invoking the kernel
Speed up with Parallel Execution
• Amdahl’s Law
Speedup = Time to execute on a single processor/ Time
to execute program on N parallel processors
S = 1/[(1-f)+f/N]
(1-f) is the fraction of code which is inherently serial
Scheduling
• Uniprocessor Scheduling
• Multiprocessor Scheduling
Types of Scheduling
• Long-term Scheduling
The decision to add to the pool of processes to be executed

• Medium-term Scheduling
The decision to swap-in processes partially or fully in main memory

• Short-term Scheduling
The decision as to which available process will be executed by the
processor
• I/O Scheduling
The decision as to which process’s pending I/O request shall be
handled by an available I/O device
Scheduling and State Transitions
Long Term Scheduler
• Takes decision
– When to admit a new job for execution
(Satisfactory service to the processes and good
utilization of processor)
– Which job to admit next (priority, execution time,
I/O requirements)
• Controls degree of multiprogramming
Queueing Diagram
Medium-term Scheduler
• Part of swapping function
• Decision is based on memory requirement of
swapped out processes and degree of
multiprogramming
Short-term Scheduler
• Also known as dispatcher
• Executes most frequently
• Takes decision which process to execute next
• Invoked when currently running process gets
blocked or is preempted
Scheduling Criteria
User oriented Performance Criteria

• Turnaround Time
Time interval between submission and completion of process

• Response Time
Time interval between submission of process and the time when
first response is generated

• Deadlines
Percentage of deadlines met by the system
System Oriented Performance
Criteria
• Throughput
Number of processes completed per unit time

• Processor Utilization
Percentage of time for which the processor is busy

• Priority
• Fairness
• Balancing Resources
Priority Queueing
Alternative Scheduling Policies
• First Come First Served (FCFS)
• Round Robin (RR)
• Shortest Process Next (SPN)
• Shortest Remaining Time (SRT)
• Highest Response Ratio Next (HRRN)
• Feedback

You might also like