PENJADWALAN PROSES


Latar Belakang

 Peningkatan kualitas pembelajaran merupakan tanggung jawab semua orang (mahasiswa), peningkatan kualitas ini penting karena dengan adanya kualitas akan meningkatkan daya saing. Sebagai bangsa yang besar, diperlukan usaha-usaha yang besar pula guna mereformasi semua lini pembangunan bangsa, terutama pendidikan. Pendidikan merupakan jalur penting setiap anak di Indonesia yang tentu saja mereka akan menjadi penerus bangsa ini.

      Beranjak dari hal di atas, kami mendapatkan tugas dalam membuat makalah tentang pembahasan materi “Penjadwalan Proses” secara berkelompok, dan tentu saja akan kami kerjakan dengan penuh tanggung jawab.

       Terdapat banyak algoritma penjadwalan, baik non-preemptive maupun preemptive.Sebaliknya pada penjadwalan preemptive proses dapat disela dan diambil alih dengan proses lainnya, walaupun prosesnya belum selesai dikerjakan, dan menunggu jatah waktu untuk melanjutkan proses semula

       Pada masing-masing algoritma terdapat proses-proses yang berbeda-beda. Masing-masing proses membutuhkan suatu pemahaman yang baik, dan proses-proses tersebut sulit untuk dipahami dengan hanya dibaca atau dibayangkan tanpa melihat langsung gambaran dari penjadwalan proses yang dilakukan oleh system operasi tersebut.


Istilah-istilah dalam Penjadwalan Proses
     Scheduler adalah bagian sistem operasi yang mengatur penjadwalan eksekusi proses. Algoritma penjadwalan atau scheduling algorithm adalah algoritma yang digunakan. Antrian, karena banyak proses yang muncul secara serentak maka dibuat antrian di depan prosesor.

Antrian, karena banyak proses yang muncul secara serentak maka dibuat antrian di depan prosesor, yang berada dalam keadaan siap dan hanya ada 1 proses yang berada dalam status kerja Prioritas, mengutamakan pada antrian proses karena tidak semua proses sama pentingnya, sehingga dibuat suatu prioritas. 
                                                                                                        
Dalam prioritas, pekerjaan pada prosesor diselesaikan dahulu baru proses berprioritas akan di proses Preempsi, sama dengan prioritas, tetapi pada preempsi jika ada proses yang mendapatkan preempsi maka preemsi akan menghentikan pekerjaan prosesor dan mengeluarkan pekerjaan di dalam prosesor itu, sehingga proses berpreempsi dapat dilayani prosesor. 

Algoritma Penjadwalan Proses
—  First Come First Served (FCFS) / FIFO (First In First Out)
—  SJF (Shortest Job First)
—  Priority Scheduling
—  Round Robin
First Come First Served (FCFS)
—  Merupakan algoritma penjadwalan CPU yang paling sederhana
—  Proses yang tiba lebih dahulu akan dilayani lebih dahulu
—  Kalau ada proses tiba pada waktu yang sama, maka pelayanan mereka dilaksanakan berdasarkan urutan dalam antrian
—  Proses di antrian belakang harus menunggu sampai semua proses di depannya selesai.

Contoh – FCFS
—  Diketahui 3 buah proses sbb:








—  Gantt chart

   



          
—  Waiting Time

 






—  AWT

 








FCFS (2)
—  Contoh soal 1:
—  Jika diketahui terdapat 5 macam antrian proses, yaitu A-B-C-D-E dengan waktu kedatangan semuanya 0. Lama proses berturut-turut antara lain: 5-2-6-8-3.
—  Pertanyaan:
—  Kapan dimulainya eksekusi dari tiap-tiap antrian proses tsb?
—  Kapan selesai eksekusinya?
—  Hitung Turn Arround Time (TA)-nya?
—  Berata rata-rata TA?
—  Rumus
—  TA = Waktu Tunggu + Lama Eksekusi
—  Rata-rata TA = ∑TA / ∑Job
—  Waktu Tunggu = Mulai Eksekusi – Waktu Tiba

FCFS (3)
—  Jawaban:

















FCFS (4)














FCFS (5)
—  Contoh Soal 2:
—  Jika diketahui terdapat 5 macam antrian proses, yaitu A-B-C-D-E dengan waktu kedatangan semuanya 0-1-2-2-5. Lama proses berturut-turut antara lain: 5-2-6-8-3.
—  Pertanyaan:
—  Kapan dimulainya eksekusi dari tiap-tiap antrian proses tsb?
—  Kapan selesai eksekusinya?
—  Hitung Turn Arround Time (TA)-nya?
—  Berata rerata TA?
—  Rumus
—  TA = Waktu Tunggu + Lama Eksekusi
—  Rerata TA = ∑TA / ∑Job
—  Waktu Tunggu = Mulai Eksekusi – Waktu Tiba








FCFS (6)













FCFS (7)
—  Berdasarkan kriteria penilaian penjadwalan:
—  Fairness
—  Penjadwalan FCFS adil dalam arti semantiks (dalam arti antrian)
—  Efesiensi
—  Penjadwalan FCFS sangat efisien dalam penggunaan pemroses
—  Waktu Tanggap
—  Penjadwalan sangat tidak memuaskan, karena proses dapat menunggu lama
—  Turn Arround Time
—  Penjadwalan FCFS tidak bagus
—  Throughput
—  Penjadwalan FCFS tidak bagus.
Shortest Job First
—  Dasar prioritas adalah pendeknya proses.
—  Makin pendek/singkat proses makin tinggi prioritasnya
—  Langkah I: tentukan urutan prioritas berdasarkan pendeknya proses yang dilayani
—  Langkah II: penentuan proses mana yang dilayani oleh pemroses
—  Setiap proses yang ada dalam ready queue akan dieksekusi berdasarkan burst time terkecil
—  Hal ini mengakibatkan waiting time yang pendek untuk setiap proses, maka rerata waiting time (AWT) juga menjadi pendek
—  Algoritma ini dikatakan optimal
SJF (2)
—  Contoh Soal 1:

SJF (3)













SJF (4)


          












            SJF (5)

           

            











            SJF (6)
            

           
           











           Priority Scheduling
—  Merupakan algoritma yang mendahulukan proses yang memiliki prioritas tertinggi
—  Prioritas proses ditentukan berdasar:
—  Time limit
—  Memory requirement
—  File access
—  Perbandingan antara burst proses dengan CPU
—  Tingkat kepentinagn proses
PS (2)
—  Priority scheduling dapat dijalankan secara preemptive dan non-preemptive
—  Preemptive à jika ada proses yang baru datang memiliki prioritas lebih tinggi dari proses yang sedang berjalan, maka proses yang sedang berjalan tsb dihentikan, lalu CPU dialihkan untuk proses yang baru datang tersebut
—  Non preemptive à proses yang baru datang tidak dapat menganggu proses yang sedang berjalan, tapi hanya diletakkan di depan queue
PS (3)
—  Kelemahan PS adalah terjadinya infinite blocking (starvation), yaitu suatu proses dengan prioritas yang rendah memiliki kemungkinan tidak pernah dieksekusi jika terdapat proses lain yang memiliki prioritas lebih tinggi
—  Solusi dari starvation adalah aging, yaitu meningkatkan prioritas dari setiap proses yang menunggu dalam queue secara bertahap
PS (4)
—  Contoh : setiap 10 menit, prioritas dari masing-masing proses yang menunggu dalam queue dinaikkan 1 tingkat.
—  Maka proses yang memiliki prioritas 127, setidaknya dalam 21 jam 20 menit, proses tsb akan memiliki prioritas 0, yaitu prioritas yang tertinggi
Contoh 2 – PS
—  Diketahui 5 proses dengan urutan proses sbb:





 





ROUND ROBIN
—  Algoritma ini menggilir proses yang ada di antrian. Proses akan mendapat jatah sebesar time quantum. Jika time quantum-nya habis atau proses sudah selesai, CPU akan dialokasikan ke proses berikutnya
—  Proses ini cukup adil, karena tidak ada proses yang diprioritaskan
—  Semua proses mendapat jatah waktu yang sama dari CPU yaitu 1/n, dan tidak akan  menunggu lebih lama dari (n-1)q; dimana q adalah lama 1 quantum
—  Algoritma RR sepenuhnya bergantung besarnya time quantum (TQ).
—  Jika TQ terlalu besar, algoritma ini akan sama saja dengan algoritma FCFS
—  Jika TQ terlalu kecil, akan semakin banyak peralihan proses sehingga banyak waktu yang terbuang
Permasalahan algoritma RR
—  Permasalahan utamanya adalah menentukan besarnya TQ. Jika TQ yang ditentukan terlalu kecil, maka sebagian besar proses tidak akan selesai dalam 1 quantum.
—  Akibatnya akan terjadi banyak switch, padahal CPU memerlukan waktu untuk beralih dari satu proses ke proses yang lain (= context switches time)
—  Sebaliknya, jika TQ yang ditentukan terlalu besar, algoritma RR akan berjalan seperti FCFS
—  TQ ideal adalah jika 80% dari total proses memiliki CPU burst time yang lebih kecil dari 1 TQ
Urutan Kejadian RR















Penggunaan TQ









Contoh sederhana





Contoh 2

—  Diketahui 3 proses sbb:








—  TQ = 3

—  Gantt chart 






—  Burst Time
    
 












PENUTUP

A.          KESIMPULAN

Penjadwalan proses yaitu kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan oleh sistem komputer.
Penjadwalan bertugas menentukan proses mana yang harus berjalan serta kapan dan berapa lama proses itu berjalan.
Kriteria untuk mengukur dan optimasi kerja penjadwalan yaitu : Adil,efisiensi,waktu tanggap,turn arround time dan throughtput. Trdapat tiga tipe penjadwalan dalam sistem operasi yaitu : penjadwalan jangka pendek, jangka menengah, dan jangka panjang. Macam-macam strategi penjadwalan di bagi menjadi 2 yaitu: penjadwalan nonpreempive dan penjadwalan preempive.







Komentar

Postingan Populer