Scheduling Algorithms

Introduction (เคชเคฐเคฟเคšเคฏ)

CPU Scheduling เคฎเฅ‡เค‚ เคธเคฟเคฐเฅเคซ process select เค•เคฐเคจเคพ เคนเฅ€ เค•เคพเคซเฅ€ เคจเคนเฅ€เค‚ เคนเฅ‹เคคเคพเฅค
เคฏเคน เคญเฅ€ เคœเคฐเฅ‚เคฐเฅ€ เคนเฅˆ เค•เคฟ selection เค•เคฟเคธ rule เค•เฅ‡ เค†เคงเคพเคฐ เคชเคฐ เคนเฅ‹เฅค

เค‡เคธเฅ€ rule เค•เฅ‹ Scheduling Algorithm เค•เคนเคพ เคœเคพเคคเคพ เคนเฅˆเฅค

Scheduling Algorithm เค•เฅเคฏเคพ เคนเฅ‹เคคเคพ เคนเฅˆ

Scheduling Algorithm เคตเคน method เคนเฅˆ เคœเคฟเคธเค•เฅ‡ เค†เคงเคพเคฐ เคชเคฐ Operating System decide เค•เคฐเคคเคพ เคนเฅˆ เค•เคฟ เค•เฅŒเคจ เคธเคพ process CPU เคชเคนเคฒเฅ‡ เคชเฅเคฐเคพเคชเฅเคค เค•เคฐเฅ‡เค—เคพเฅค

Main Scheduling Algorithms

เค…เคฌ เคนเคฎ เคเค•-เคเค• เค•เคฐเค•เฅ‡ เคธเคญเฅ€ important algorithms เคธเคฎเคเคคเฅ‡ เคนเฅˆเค‚:

1. FCFS (First Come First Serve)

Concept

เคœเฅ‹ process เคชเคนเคฒเฅ‡ เค†เคคเคพ เคนเฅˆ, เคตเคนเฅ€ เคชเคนเคฒเฅ‡ execute เคนเฅ‹เคคเคพ เคนเฅˆเฅค

Working

  • Processes arrival order เคฎเฅ‡เค‚ execute เคนเฅ‹เคคเฅ‡ เคนเฅˆเค‚
  • Queue เค•เคพ concept use เคนเฅ‹เคคเคพ เคนเฅˆ

Example

Processes:
P1, P2, P3

Arrival order:
P1 โ†’ P2 โ†’ P3

Execution order เคญเฅ€ เคตเคนเฅ€ เคนเฅ‹เค—เคพ:
P1 โ†’ P2 โ†’ P3

Advantage

  • Simple เค”เคฐ easy

Disadvantage

  • Waiting time เคœเฅเคฏเคพเคฆเคพ เคนเฅ‹ เคธเค•เคคเคพ เคนเฅˆ

2. SJF (Shortest Job First)

Concept

เคœเคฟเคธ process เค•เคพ burst time เคธเคฌเคธเฅ‡ เค•เคฎ เคนเฅ‹เคคเคพ เคนเฅˆ, เค‰เคธเฅ‡ เคชเคนเคฒเฅ‡ execute เค•เคฟเคฏเคพ เคœเคพเคคเคพ เคนเฅˆเฅค

Example

Processes:
P1 (5 sec), P2 (2 sec), P3 (3 sec)

Execution order:
P2 โ†’ P3 โ†’ P1

Advantage

  • Minimum waiting time

Disadvantage

  • Long processes เค•เฅ‹ wait เค•เคฐเคจเคพ เคชเคกเคผ เคธเค•เคคเคพ เคนเฅˆ (starvation)

3. Priority Scheduling

Concept

เคนเคฐ process เค•เฅ‹ เคเค• priority เคฆเฅ€ เคœเคพเคคเฅ€ เคนเฅˆ
เคœเคฟเคธเค•เฅ€ priority เคœเฅเคฏเคพเคฆเคพ เคนเฅ‹เคคเฅ€ เคนเฅˆ, เคตเคน เคชเคนเคฒเฅ‡ execute เคนเฅ‹เคคเคพ เคนเฅˆ

Example

Processes:
P1 (priority 3), P2 (priority 1), P3 (priority 2)

Execution order:
P2 โ†’ P3 โ†’ P1

Advantage

  • Important tasks เคœเคฒเฅเคฆเฅ€ complete เคนเฅ‹เคคเฅ‡ เคนเฅˆเค‚

Disadvantage

  • Low priority process starvation

4. Round Robin (RR)

Concept

เคนเคฐ process เค•เฅ‹ equal time (time quantum) เคฆเคฟเคฏเคพ เคœเคพเคคเคพ เคนเฅˆ

Working

  • Process เค•เฅ‹ fixed time เคฎเคฟเคฒเคคเคพ เคนเฅˆ
  • Time เค–เคคเฅเคฎ โ†’ next process

Example

Processes:
P1, P2, P3
Time quantum = 2 sec

Execution:
P1 โ†’ P2 โ†’ P3 โ†’ เคซเคฟเคฐ เคตเคพเคชเคธ P1

Advantage

  • Fair scheduling
  • No starvation

Disadvantage

  • เคœเฅเคฏเคพเคฆเคพ context switching

Simple Comparison

AlgorithmConceptAdvantageProblem
FCFSFirst come firstSimpleHigh waiting
SJFShortest job firstFastStarvation
PriorityHigh priority firstImportant work fastStarvation
Round RobinTime sharingFairOverhead

Important Exam Point

  • Gantt Chart เคฌเคจเคพเคจเคพ เค†เคจเคพ เคšเคพเคนเคฟเค
  • Waiting Time เค”เคฐ Turnaround Time เคจเคฟเค•เคพเคฒเคจเคพ เค†เคคเคพ เคนเฅ‹เคจเคพ เคšเคพเคนเคฟเค
  • Numerical questions เค…เค•เฅเคธเคฐ SJF เค”เคฐ Round Robin เคธเฅ‡ เค†เคคเฅ‡ เคนเฅˆเค‚

Conclusion

Scheduling Algorithms CPU utilization เค•เฅ‹ improve เค•เคฐเคคเฅ‡ เคนเฅˆเค‚ เค”เคฐ processes เค•เฅ‹ efficient เคคเคฐเฅ€เค•เฅ‡ เคธเฅ‡ execute เค•เคฐเคคเฅ‡ เคนเฅˆเค‚เฅค

เคนเคฐ algorithm เค•เคพ เค…เคชเคจเคพ use-case เคนเฅ‹เคคเคพ เคนเฅˆ, เค‡เคธเคฒเคฟเค situation เค•เฅ‡ เค…เคจเฅเคธเคพเคฐ เคธเคนเฅ€ algorithm choose เค•เคฟเคฏเคพ เคœเคพเคคเคพ เคนเฅˆเฅค

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top