first come first served fcfs l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
First Come, First Served (FCFS) PowerPoint Presentation
Download Presentation
First Come, First Served (FCFS)

Loading in 2 Seconds...

play fullscreen
1 / 24

First Come, First Served (FCFS) - PowerPoint PPT Presentation


  • 236 Views
  • Uploaded on

First Come, First Served (FCFS). The simplest algorithm When a process becomes ready, it enters the FIFO queue. When the currently-running process ceases to execute, the oldest process in the queue is selected for running. Non-preemptive. FIFO Ready Queue. CPU. dispatched.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'First Come, First Served (FCFS)' - munin


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
first come first served fcfs
First Come, First Served (FCFS)
  • The simplest algorithm
    • When a process becomes ready, it enters the FIFO queue.
    • When the currently-running process ceases to execute, the oldest process in the queue is selected for running.
  • Non-preemptive

FIFO Ready Queue

CPU

dispatched

slide2
Process Arrival Time Process Exec Time1 0 3 msec2 2 6 msec3 4 4 msec4 6 5 msec5 8 2 msec

0

5

10

15

20

P1

P2

P3

P4

P5

slide3
The average waiting time is not minimal and varies substantially if the process execution times vary.
      • ex 1 Process Arrival Time Process Exec Time P1 0 24 msec P2 1 3 msec P3 2 3 msec
        • Calculate the average waiting time, turnaround time and throughput.
      • ex 2 Process Arrival Time Process Exec Time P2 0 3 msec P3 1 3 msec P1 2 24 msec
        • Calculate the average waiting time, turnaround time and throughput.
exercises
Exercises
  • Process Arrival T Exec TimeP1 0 24 msecP2 1 3 msecP3 2 3 msec
  • Process Arrival T Exec TimeP2 0 3 msecP3 1 3 msecP1 2 24 msec

6

0

24

27

30

0

3

30

P1

P2

P2

P3

P3

P1

Waiting time = (0 + 23 + 25) / 3 = 16 sec

Turnaround t = (24 + 26 + 28) / 3 = 26 sec

Throughput = 3/30 = 0.1

Waiting time = (0 + 2 + 4) / 3 = 2 sec

Turnaround t = (3 + 5 + 28) / 3 = 14.3 sec

Throughput = 3/30 = 0.1

slide5
Normalized turnaround time
    • The ratio of turnaround time to process exec time.
    • A relative delay experienced by a process
      • The longer process exec time, the greater absolute amount of tolerable delay.
      • ex 1 Process Arrival Time Process Exec Time P1 0 24 msec P2 1 3 msec P3 2 3 msec
      • ex 2 Process Arrival Time Process Exec Time P2 0 3 msec P3 1 3 msec P1 2 24 msec
        • Calculate the turnaround time and the normalized turnaround time for each process.
exercises6
Exercises
  • Process Arrival T Exec TimeP1 0 24 msecP2 1 3 msecP3 2 3 msec
  • Process Arrival T Exec TimeP2 0 3 msecP3 1 3 msecP1 2 24 msec

6

0

24

27

30

0

3

30

P1

P2

P2

P3

P3

P1

Waiting time = (0 + 23 + 25) / 3 = 16 sec

Turnaround t = (24 + 26 + 28) / 3 = 26 sec

NT = 24/24 + 26/3 + 28/3 = 1 + 8.6 + 9.3

= 18.9 sec

Throughput = 3/30 = 0.1

Waiting time = (0 + 2 + 4) / 3 = 2 sec

Turnaround t = (3 + 5 + 28) / 3 = 12 sec

NT = 3/3 + 5/3 + 28/24 = 1 + 1.6 + 1.1

= 3.7 sec

Throughput = 3/30 = 0.1

slide7
The normalized turnaround times for P2 and P3 are intolerable.
    • This problem occurs whenever a short-lived process arrives right after a long-lived process.
  • When the variance of process exec time is high, FCFS penalizes short processes.
    • FCFS is not a fair scheduling algorithm; it does not treat long-lived and short-lived processes equally.
slide8
Process Arrival Time Process Exec Time1 0 3 msec2 2 6 msec3 4 4 msec4 6 5 msec5 8 2 msec

0

5

10

15

20

T NT

3-0 = 3 3/3=1…

9-2=7 7/6=1…

13-4=7 7/4=1…

18-6=12 12/5=2…

20-8=12 12/2=6

Avg T Avg NT

8.60 2.56

P1

P2

P3

P4

P5

round robin
Round Robin
  • Clock-based preemption of process (time slicing)
    • When a clock interrupt occurs, the currently-running process is placed in the end of the Ready queue, and the next ready process is executed.
    • A straightforward way to reduce the penalty that short-lived processes suffer with FCFS.
      • A fairer algorithm than FCFS

Ready Queue

FIFO and Circular Queue

CPU

dispatched

timeout

a key design issue in rr
A Key Design Issue in RR
  • How to determine the length of time quantum (time slice)?
    • If it’s too short,
      • Processing overhead becomes high to handle clock interrupts and perform context switches.
        • (the time to handle a clock interrupt and perform a context switch) / (time quantum) should be small enough.
    • If it’s too long,
      • RR degenerates to FCFS.
exercise 1
Exercise 1
  • Process Arrival Time Process Exec Time1 0 3 msec2 2 6 msec3 4 4 msec4 6 5 msec5 8 2 msec

0

5

10

15

20

P1

P2

RRtq=1

P3

P4

P5

slide12
Process Arrival Time Process Exec Time1 0 3 msec2 2 6 msec3 4 4 msec4 6 5 msec5 8 2 msec

0

5

10

15

20

P1

P2

RRtq=1

P3

P4

P5

slide13
Process Arrival Time Process Exec Time1 0 3 msec2 2 6 msec3 4 4 msec4 6 5 msec5 8 2 msec

0

5

10

15

20

T NT

4-0 = 4 4/3=1…

18-2=16 16/6=2…

17-4=13 13/4=3…

20-6=14 14/5=2…

15-8=7 7/2=3.5

Avg T Avg NT

10.8 2.71

P1

P2

RRtq=1

P3

P4

P5

slide14
Process Arrival Time Process Exec Time1 0 3 msec2 2 6 msec3 4 4 msec4 6 5 msec5 8 2 msec

0

5

10

15

20

T NT

4-0 = 4 4/3=1…

18-2=16 16/6=2…

17-4=13 13/4=3…

20-6=14 14/5=2…

15-8=7 7/2=3.5

Avg T Avg NT

10.8 2.71

P1

P2

RRtq=1

P3

P4

P5

17 context switches

0

5

10

15

20

T NT

3-0 = 3 3/3=1…

9-2=7 7/6=1…

13-4=7 7/4=1…

18-6=12 12/5=2…

20-8=12 12/2=6

Avg T Avg NT

8.60 2.56

P1

P2

FCFS

P3

P4

P5

exercise 2
Exercise 2
  • Process Arrival Time Process Exec Time1 0 3 msec2 2 6 msec3 4 4 msec4 6 5 msec5 8 2 msec

Avg process exec

time = 4 msec

0

5

10

15

20

P1

P2

RRtq=4

P3

P4

P5

slide16
Process Arrival Time Process Exec Time1 0 3 msec2 2 6 msec3 4 4 msec4 6 5 msec5 8 2 msec

0

5

10

15

20

P1

P2

RRtq=4

P3

P4

P5

slide17
Process Arrival Time Process Exec Time1 0 3 msec2 2 6 msec3 4 4 msec4 6 5 msec5 8 2 msec

0

5

10

15

20

T NT

4-0 = 4 4/3=1…

18-2=16 16/6=2…

17-4=13 13/4=3…

20-6=14 14/5=2…

15-8=7 7/2=3…

Avg T Avg NT

10.8 2.71

P1

P2

RRtq=1

P3

P4

P5

17 context switches

0

5

10

15

20

T NT

3-0 = 3 3/3=1

17-2=15 15/6=2…

11-4=7 7/4=1…

20-6=14 14/5=2…

19-8=11 11/2=5.5

Avg T Avg NT

10 2.71

P1

P2

RRtq=4

P3

P4

P5

6 context switches

exercise 3
Exercise 3
  • Process Arrival Time Process Exec Time1 0 3 msec2 2 6 msec3 4 4 msec4 6 5 msec5 8 2 msec

0

5

10

15

20

P1

P2

RRtq=6

P3

P4

P5

slide19
Process Arrival Time Process Exec Time1 0 3 msec2 2 6 msec3 4 4 msec4 6 5 msec5 8 2 msec

0

5

10

15

20

P1

P2

RRtq=6

P3

P4

P5

slide20
Process Arrival Time Process Exec Time1 0 3 msec2 2 6 msec3 4 4 msec4 6 5 msec5 8 2 msec

0

5

10

15

20

P1

P2

RRtq=6

P3

P4

P5

0

5

10

15

20

P1

P2

FCFS

P3

P4

P5

time quantum
Time Quantum
  • Should be slightly longer than typical process execution time
  • Should be shorter than the longest process exec time.
  • Generally 10 to 100 msec
another fairness issue
Another Fairness Issue
  • RR treats long-lived and short-lived processes equally.
  • However, it does not treat CPU-bound and I/O-bound processes equally.
    • CPU-bound process
      • Mainly performs computational work and occasionally uses I/O devises
    • I/O-bound process
      • spends more time using I/O devises than using the CPU.
slide23
I/O-bound processes use less CPU time than CPU-bound processes.
    • An I/O-bound process uses for a short period and then is blocked for an I/O operation. It returns to the Ready queue when the I/O operation is completed.
    • A CPU-bound process uses a complete time quantum and returns to the Ready queue.

Ready Queue

CPU

exit

dispatched

admitted

interrupted

CPU-bound processes tend touse more CPU time, whichleads to poor performancein I/O-bound processes.

I/O 1completed

I/O 1 Blocked Queue

I/O type 1 wait

I/O N completed

I/O N Blocked Queue

I/O type N wait

slide24
HW
  • Read Paper #1 (see the course web site), and summarize how the proposed scheduling algorithm addresses this fairness issue.
    • Use a queuing diagram in your explanation.