Top Banner
SISTEM OPERASI PENJADWALAN PROSES
29

Penjadwalan Proses

Jan 04, 2016

Download

Documents

shigate

ok
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Penjadwalan Proses

SISTEM OPERASIPENJADWALAN PROSES

Page 2: Penjadwalan Proses

Penjadwalan Proses

Pengertian:

Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer.

Tugas penjadwalan Proses:

Penjadwalan bertugas memutuskan proses yang harus berjalan dan Kapan dan selama berapa lama proses itu berjalan.

Page 3: Penjadwalan Proses

Beberapa kriteria yang digunakan untuk mengukur kualitas suatu algoritma penjadwalan prosesor :

Fairness atau pelayanan yang adil untuk semua pekerjaan.

Proses-proses diperlukan sama yaitu mendapatkan jatah waktu dari pemroses yang sama, tak ada proses yang tidak mendapatkan layanan sehingga mengalami starvision.

Throughput / memaksimumkan throughput.

Throughput adalah jumlah pekerjaan yang dapat diselesaikan dalam satu unit waktu.

Efficiency / memaksimumkan pemakaian prosesor

Sasaran penjadwalan adalah menjaga agar pemroses tetap dalam keadaan sibuk sehingga efesiensi mencapai maksimum.

Page 4: Penjadwalan Proses

Lanjutan...

Respone time / meminimalkan respone time. Waktu tanggap dalam sistem interaktif adalah waktu yang dihabiskan dari karakter terakhir untuk baris perintah yang dimasukkan atau transaksi sampai hasil pertama muncul dilayar (terminal).

Meminimalkan Turn arround time. Turn arround time adalah waktu yang dihabiskan dari saat program atau job mulai masuk ke system sampai proses diselesaikan sistem. Waktu yang dimaksud adalah waktu yang dihabiskan dalam sistem,

Page 5: Penjadwalan Proses

Istilah-istilah dalam Penjadwalan Proses

Scheduler adalah bagian sistem operasi yang mengatur penjadwalan eksekusi proses-proses.

Algoritma penjadwalan atau scheduling algorithm adalah algoritma yang digunakan.

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,

Page 6: Penjadwalan Proses

Jangka waktu penjadwalan dibedakan menjadi tiga yaitu.

a. Penjadwalan jangka pendek / short term scheduling / low level scheduling

b. Penjadwalan jangka medium / medium term scheduling / intermediate level scheduling

c. Penjadwalan jangka panjang / long term scheduling / high level scheduling.

Page 7: Penjadwalan Proses

Gb. Penjadwalan Medium

Page 8: Penjadwalan Proses

Secara garis besar penjadwalan dibedakan menjadi dua kelompok besar

Preemtive

Metode ini lebih canggih dari pada non-preemptive, karena sistem operasi dan operasi lain dapat mengambil alih eksekusi prosesor tanpa harus menunggu proses lain yang sedang running berhenti.

Non Preemptive

Pada metode ini jika suatu proses telah berjalan maka sistem operasi maupun operasi lain tidak dapat mengambil alih eksekusi prosesor.

Page 9: Penjadwalan Proses

Proses penjadwalan yang dilakukan oleh sistem operasi sebenarnya dipicu dari beberapa hal yaitu:

1. Proses berubah dari status running ke blocked, hal ini dapat terjadi ketika suatu proses melakukan system call untuk meminta operasi I/O

2. Proses berubah dari status running ke ready, hal ini dapat terjadi ketika suatu proses yang berstatus running telah habis time slice-nya.

3. Proses berubah dari status blocked ke ready, ketika permintaan terhadap I/O telah terpenuhi maka proses yang tadinya berstatus blocked berubah menjadi ready

4. Ketika suatu proses berhenti atau terminated. Hal ini berarti suatu proses telah selesai dijalankan sehingga system operasi kemudian akan menjalankan proses yang telah ready.

Page 10: Penjadwalan Proses

Lanjutan...

Page 11: Penjadwalan Proses

Penjadwalan Round Robin

Algoritma Round Robin (RR) dirancang untuk sistem time sharing. Algoritma ini mirip dengan penjadual FCFS.

Antrian ready diperlakukan atau dianggap sebagai antrian sirkular. CPU menglilingi antrian ready dan mengalokasikan masing-masing proses untuk interval waktu tertentu sampai satu time slice/ quantum.

Page 12: Penjadwalan Proses

Berikut algritma untuk penjadual Round Robin:

Setiap proses mendapat jatah waktu CPU (time slice/ quantum) tertentu Time slice/quantum umumnya antara 10 - 100 milidetik.

1. Setelah time slice/ quantum maka proses akan di-preempt dan dipindahkan ke antrian ready.

2. Proses ini adil dan sangat sederhana.

Page 13: Penjadwalan Proses

Jika terdapat n proses di "antrian ready" dan waktu quantum q (milidetik), maka:

1. Maka setiap proses akan mendapatkan 1/n dari waktu CPU.

2. Proses tidak akan menunggu lebih lama dari: (n-1)q time units.

• Kinerja dari algoritma ini tergantung dari ukuran time quantum

1. Time Quantum dengan ukuran yang besar maka akan sama dengan FCFS

2. Time Quantum dengan ukuran yang kecil maka time quantum harus diubah ukurannya lebih besar

Page 14: Penjadwalan Proses

14Penjadwalan Proses Penjadwalan dengan prioritas

Memasukkan unsur prioritas proses

Tiap proses memiliki prioritas tertentu, dan penjadwalannya menurut urutan prioritasnya

Sering diimplementasikan dengan kelas-kelas prioritas dan teknik round robin

Prioritas proses diturunkan selama eksekusi dilakukan supaya proses dng prioritas rendah memiliki kesempatan dieksekusi juga

Page 15: Penjadwalan Proses

Lanjutan...

Contoh penjadwalan dengan prioritas

Proses dng prioritas pertama diekseskusi selama 1 quantum, prioritas kedua selama 2 quantum, prioritas ketiga 4 kuantum, dst.

Setelah eksekusi menghabiskan quantum yg dialokasikan, proses diturunkan ke prioritas berikutnya

Proses sepanjang 100 quantum memerlukan 7x pergantian (swap) saja

Page 16: Penjadwalan Proses

16Penjadwalan Proses Teknik Pengutamaan Proses Tercepat

Cocok untuk batch job dengan waktu eksekusi yg diketahui sebelumnya

Menempatkan proses-proses pendek pada urutan awal

Memperpendek waktu tunggu

Optimal untuk proses-proses yg sudah “siap” dieksekusi

Page 17: Penjadwalan Proses

Mutual Exclusion

Analogi Mutual Exclusion adalah tidak ada dua proses yang berada di critical section pada saat yang bersamaan.

Pemaksaan adanya mutual exclusion menimbulkan dua masalah, yaitu:- Deadlock- Startvation.

Page 18: Penjadwalan Proses

18Deadlock Deadlock: sekumpulan proses yg menunggu event

yg hanya bisa dimunculkan oleh salah satu dr proses anggota Tidak ada proses yg bisa berlanjut, melepaskan

resources, atau diaktifkan kembali Berawal dari situasi supply resources lebih kecil

drpd demand

Page 19: Penjadwalan Proses

Lanjutan...

Empat kondisi pemicu deadlock Kondisi mutual exclusion. Sebuah resource sdg digunakan oleh 1

proses, atau sdg bebas Kondisi hold and wait. Proses-proses yg sdg memakai resources

diijinkan meminta resources baru Kondisi non-preemptive. Resource yg sdg digunakan hanya bisa

dilepaskan oleh proses yg memakainya (pelepasan tdk bisa dipaksa oleh pihak lain)

Kondisi circular wait. Ada rantai dr 2 atau lebih proses, msg-msg menunggu resource yg dikuasai proses berikutnya dalam rantai tsb.

Page 20: Penjadwalan Proses

20Deadlock

Strategi dlm menghadapi deadlock

Abaikan saja algoritma “onta” (prinsip pragmatisme)

Pendeteksian dan pemulihan

Pencegahan, dng cara menegasikan kondisi-kondisi pemicu

Menghindari, dng cara alokasi resource scr hati-hati

Algoritma onta (Ostrich algorithm)

Pragmatisme, perbandingan antara usaha utk menghilangkan deadlock dng akibat yg ditimbulkannya

Page 21: Penjadwalan Proses

21Deadlock

Pencegahan deadlock Kondisi mutual exclusion ?

Resource bisa digunakan oleh lebih dr satu proses Kondisi hold and wait ?

Proses yg sdg menguasai sbh resource tidak diijinkan utk meminta resource yg lain

Kebutuhan resource sering bersifat dinamis Menyebabkan alokasi resource tdk efisien

Kondisi non-preemptive ? Memungkinkan resource dilepas scr paksa Dapat mengacaukan operasi (e.g., printing)

Kondisi rantai tunggu (circular wait) ? Alternatif yg paling mungkin ditempuh Dengan penomoran resource, akses diijinkan dng mengikuti urutan

tertentu

Page 22: Penjadwalan Proses

Lanjutan...

Menghindari deadlock Alokasi resource secara hati-hati Algoritma banker

Alokasi resource selalu memperhatikan kemungkinan ke depan (next state)

Kebutuhan ke depan satu atau lebih proses harus selalu dapat dipenuhi oleh resource yg tersedia saat ini

Page 23: Penjadwalan Proses

Kondisi Deadlock

Page 24: Penjadwalan Proses

STARVATION

Starvation adalah kondisi yang biasanya terjadi setelah deadlock. Proses yang kekurangan resource (karena terjadi deadlock) tidak akan pernah mendapat resource yang dibutuhkan sehingga mengalami starvation (kelaparan).I

lustrasi starvation dengan deadlock :

Page 25: Penjadwalan Proses

ilustrasi starvation tanpa deadlock:

Page 26: Penjadwalan Proses

Persimpangan

Page 27: Penjadwalan Proses

Tabel Deadlock

Page 28: Penjadwalan Proses

Penjadwalan proses atau tugas menggunakan schedule task

Task Scheduler adalah komponen dari Microsoft Windows yang menyediakan kemampuan untuk menjadwalkan menjalankan program atau script pada waktu yang telah ditentukan atau setelah interval waktu tertentu.

Page 29: Penjadwalan Proses

SELESAI