Sistem Operasi Pertemuan 5

Session 1 & 2 : Scheduling

Cara kerja dari CPU Scheduler adalah memilih sebuah proses-proses dalam memory yang siap untuk dieksekusi, dan mengalokasikan CPU ke salah satu dari proses tersebut.

 

CPU Scheduling terjadi saat proses berikut terjadi:

  1. Perubahan state dari running ke waiting.
  2. Perubahan state dari running ke ready.
  3. Perubahan state dari waiting ke ready.
  4. Terminates.

 

Tipe-tipe Scheduler:

  • Long-term Scheduling : Keputusan untuk menambahkan suatu proses kedalam daftar proses yang akan dieksekusi.
  • Medium-term Scheduling : Keputusan untuk menambahkan beberapa proses yang ada dalam main memory baik secara utuh maupun parsial.
  • Short-term Scheduling : Keputusan untuk memilih proses mana yang dapat dieksekusi oleh prosesor.
  • I/O Scheduling : Keputusan untuk menjalankan proses I/O yang belum berjalan oleh I/O device yang tersedia.

 

Dispatcher memberikan control CPU kepada proses yang dipilih oleh Short-term Scheduler.

 

Dispatch latency merupakan waktu yang diperlukan oleh dispatcher untuk menghentikan sebuah proses dan menjalankan proses lainnya.

 

Kriteria-kriteria Scheduling :

  • CPU Utilization : CPU harus berjalan sesering mungkin.
  • Throughput : Banyaknya proses yang selesai dikerjakan dalam satu satuan waktu.
  • Turnaround Time : Waktu yang dibutuhkan untuk menjalankan sebuah proses tertentu.
  • Waiting Time : Waktu tunggu sebuah proses dalam ready queue.
  • Response Time : Waktu yang dibutuhkan oleh sebuah proses dari minta dilayani hingga ada respon pertama yang menanggapi layanan tersebut.

 

Kriteria-kriteria Optimization :

  • Max CPU Utilization
  • Max Throughput
  • Min Turnaround Time
  • Min Waiting Time
  • Min Response Time

 

Tujuan dari Scheduling :

  1. All Systems
  • Fairness : Setiap proses mendapat pembagian CPU yang sama.
  • Policy Enforcement : Kebijakan dijalankan
  • Balance : Menjaga agar setiap part dari system berjalan
  1. Batch Systems
  • Throughput : Memaksimalkan pekerjaan tiap jam.
  • Turnaround Time : Meminimalkan waktu antara submission dan termination.
  • CPU Utilization : Menjaga agar CPU selalu sibuk.
  1. Interactive Systems
  • Response Time : Respon terhadap suatu request secepat mungkin.
  • Proportionality : Sesuai dengan ekspektasi user.
  1. Real-Time Systems
  • Meeting deadlines : Menghindari kehilangan data
  • Predictability : Menghindari penurunan kualitas dalam system multimedia

 

BATCH-SCHEDULING ALGORITHM :

  1. First-Come First-Serve

Proses diassign ke dalam CPU secara urut. Kemudahan menggunakan algoritma ini adalah mudah dimengerti dan mudah untuk di buat programnya. Sedangkan kesulitannya adalah tugas yg kecil/sedikit akan menunggu telalu lama jika mengantri dibelakang tugas yg besar.

P5-01

 

 

 

 

 

 

  1. Shortest Job First – Non Preemptive

Ketika CPU diberikan suatu proses yg tidak bisa di interupsi sampai CPU burst-nya selesai.

P5-02

 

 

 

 

 

 

 

  1. Shortest Job First – Preemptive

Ketika CPU diberikan suatu proses yg bisa di interupsi sebelum CPU burst-nya selesai.

P5-03

 

 

 

 

 

 

 

  1. Interactive Scheduling Algorithm
  • Round-robin scheduling
  • Priority scheduling
  • Multiple queues
  • Shortest process next
  • Guaranteed scheduling
  • Lottery scheduling
  • Fair-share scheduling

 

Tugas dari Buku halaman 447 nomor 9.2 :

P5-04

 

 

 

 

Jawab:

  1. First-Come First-Serve

P5-05

 

 

 

 

 

Waiting time for A=0, B=2, C=5, D=1, E=3

Average Waiting Time = (0+2+5+1+3)/5 = 2,2

 

  1. Shortest Job First –  Non Preemptive

P5-06

 

 

 

 

 

Waiting time for A=0, B=4, C=0, D=1, E=3

Average Waiting Time = (0+4+0+1+3)/5 = 1,6

 

  1. Shortest Job First – Preemptive

P5-07

 

 

 

 

 

Waiting time for A=0, B=4, C=0, D=1, E=3

Average Waiting Time = (0+4+0+1+3)/5 = 1,6

 

www.binus.ac.id

www.skyconnectiva.com

This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

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