Anda di halaman 1dari 32

PENJADWALAN PROSES I

Vikky Aprelia Windarni, S.Kom., M.Cs


MATERI

• Deskripsi penjadwalan
• Kriteria pengukuran penjadwalan
• Tipe-tipe penjadwalan
• Strategi Penjadwalan
• Algoritma Penjadwalan (FIFO, SJF)
PENGERTIAN PENJADWALAN

Pengertian
• Penjadwalan proses merupakan kumpulan kebijaksanaan dan mekanisme di sistem
operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer
PENGERTIAN PENJADWALAN
(LANJ)

Adapun penjadwalan bertugas memutuskan:


1. Proses yang harus berjalan
2. Kapan dan berapa lama proses itu berjalan
SASARAN PENJADWALAN

Kriteria-kriteria yang digunakan sebagai sasaran penjadwalan,


meliputi:
1. Adil (fairness)
2. Efisiensi (eficiency)
3. Waktu tanggap (response time)
• Sistem interaktif
• Sistem waktu nyata
4. Turn around time
5. Throughput
1. ADIL (FAIRNESS)

Adalah proses-proses yang diperlakukan sama, yaitu mendapat jatah waktu pemroses
yang sama dan tak ada proses yang tak kebagian layanan pemroses sehingga
mengalami kekurangan waktu.

Sasaran penjadwalan:
Menjamin setiap proses mendapat pelayanan dari pemroses secara adil.
2. EFISIENSI (EFICIENCY)

• Efisiensi atau utilisasi pemroses dihitung dengan perbandingan (rasio) waktu


sibuk pemroses

• Keadaan sibuk berarti pemroses tidak menganggur.


• Layanan pemroses termasuk waktu yang dihabiskan untuk mengeksekusi program
pemakai dan layanan sistem operasi

Sasaran penjadwalan:
• Menjaga agar pemroses tetap dalam keadaan sibuk sehingga efisiensi sistem
komputer mencapai maksimum.
3. WAKTU TANGGAP
(RESPONSE TIME)

Waktu tanggap dalam Sistem Interaktif


Didefinisikan sebagai waktu yang dihabiskan dari saat karakter terakhir
perintah dimasukkan
Atau transaksi sampai hasil pertama muncul di layar (terminal). Waktu
tanggap ini disebut terminal response time.
Waktu tanggap dalam Sistem waktu nyata (real time)
Didefinisikan sebagai waktu dari saat kemunculan suatu kejadian sampai
instruksi layanan rutin pertama terhadap kejadian yang dieksekusi, disebut
event respons time.

Sasaran penjadwalan pada kriteria ini adalah meminimalkan waktu tanggap


sehingga menghasilkan system yang reponsif
4. TURN AROUND TIME

Adalah waktu yang dihabiskan dari saat program atau job mulai masuk ke sistem
sampai proses diselesaikan sistem. Waktu yang dimaksud adalah waktu yang
dihabiskan di dalam sistem.

• Turn arround time = waktu eksekusi + waktu menunggu.


• Sasaran Penjadwalan adalah meminimalkan turn arround time
5. THROUGHPUT

• Adalah jumlah kerja yang dapat diselesaikan dalam satu unit waktu.
• Cara untuk mengekspresikan throughput adalah dengan jumlah job pemakai yang
dapat dieksekusi dalam satu unit/interval waktu
Sasaran Penjadwalan:
• Memaksimalkan jumlah job yang diproses persatu interval waktu.
• Lebih besar angka throughput, lebih banyak kerja yang dilakukan sistem.
TIPE PENJADWALAN (1)

• Terdapat 3 tipe penjadwal berada secara bersama-sama


pada sistem operasi yang kompleks, yaitu:
1. Penjadwal jangka pendek (short term scheduller)
2. Penjadwal jangka menengah (medium term
scheduller)
3. Penjadwal jangka panjang (long term scheduller)
TIPE PENJADWALAN (2)

• Penjadwalan jangka pendek (short-termscheduller)


Penjadwalan ini bertugas menjadwalkan alokasi pemroses diantara proses-proses
ready di memori utama.

• Penjadwalan jangka menengah (medium termscheduller )


Penjadwalan jangka menengah adalah menangani proses-proses swapping (aktivitas
pemindahan proses yang tertunda dari memory utama ke memory sekunder).
TIPE PENJADWALAN (2)

• Penjadwalan jangka panjang (long-termscheduller)


Penjadwalan jangka panjang bekerja terhadap antrian batch (proses – proses dengan
penggunaan sumberdaya yang intensif) dan memilih batch berikutnya yang harus di
eksekusi.
PENJADWAL JANGKA PENDEK
(SHORT TERM SCHEDULLER )

• Digunakan untuk memilih diantara proses-proses yang siap dieksekusi.


kemudian proses tersebut salah satunya dialokasikan ke CPU
• Short term scheduler juga digunakan untuk memilih proses baru untuk
CPU
• Dan memilih proses berikutnya yang harus dijalankan.
PENJADWAL JANGKA MENENGAH
(MEDIUM TERM SCHEDULLER )

• Proses-proses yang mempunyai kepentingan kecil saat itu sebagai proses


yang tertunda ataupun tertunda karena memuat layanan I/O atau
memanggil sekumpulan layanan
• Aktivitas pemindahan proses yang tertunda dari memori utama ke memori
sekunder disebut swapping
PENJADWAL JANGKA MENENGAH
(MEDIUM TERM SCHEDULLER )

• Begitu kondisi yang membuatnya tertunda hilang, proses dimasukkan


kembali ke memori utama dan ready
PENJADWAL JANGKA PANJANG
(LONG TERM SCHEDULLER )

• Long term scheduller menentukan program mana yang


diakui pada sistem untuk diproses, kapan dan mana yang
harus dikeluarkan

• Penjadwalan ini bekerja terhadap antrian batch dan memilih


batch berikutnya yang harus dieksekusi
PENJADWAL JANGKA PANJANG
(LONG TERM SCHEDULLER )

• Batch biasanya adalah proses-proses dengan penggunaan


sumber daya yang intensif (yaitu waktu pemroses, memori,
perangkat input/output)

• Program-program ini berprioritas rendah, digunakan


sebagai pengisi (agar pemroses sibuk) selama periode
aktivitas job-job interaktif rendah.
STRATEGI PENJADWALAN

1. Penjadwalan non-preemptive (run to completion)


Proses diberi jatah waktu oleh pemroses dan pemroses tidak dapat diambil
alih oleh proses lain sampai proses itu selesai

2. Penjadwalan preemptive
Proses diberi jatah waktu oleh pemroses dan pemroses dapat diambil alih
proses lain. Sehingga proses disela sebelum selesai dan harus dilanjutkan
menunggu jatah waktu pemroses tiba kembali pada proses itu
ALGORITMA PENJADWALAN

Berikut jenis-jenis algoritma berdasarkan penjadwalan


1. Nonpreemptive
2. Preemtive

Klasifikasi lain berdasarkan adanya prioritas di proses-proses, yaitu :


1. Algoritma penjadwalan tanpa berprioritas
2. Algoritma penjadwalan berprioritas
ALGORITMA PENJADWALAN

1. Nonpreemptive
• FIFO (First In First Out) atau FCFS (First Come First Serve)
• SJF (Shortest Job First)
• HRN (Highest Ratio Next)
• MFQ (Multiple Feedback Queues)
ALGORITMA PENJADWALAN

2. Nonpreemptive
• RR (Round Robin)
• SRF (Shortest Remaining First)
• PS (Priority Schedulling)
• GS (Guaranteed Schedulling)
PENJADWALAN NON PREEMTIVE
Penjadwalan FIFO (First In First Out) [1]
Merupakan penjadwalan nonpreemptive dan penjadwalan tidak berprioritas.
Penjadwalan FIFO adalah penjadwalan paling sederhana, yaitu :
• Proses-proses diberi jatah waktu pemroses berdasarkan waktu kedatangan
• Saat proses mendapat jatah waktu pemroses, proses dijalankan sampai selesai

Penjadwalan ini adil yaitu proses yang datang duluan, dilayani duluan juga.
Dikatakan tidak adil karena job-job yang perlu waktu lama membuat job-job pendek
menunggu. Job-job tak penting dapat membuat job-job penting menunggu.

Contoh Soal:

Jika diketahui 5 macam antrian proses yaitu : A-B-C-D-E dengan waktu


kedatangan semuanya 0 dan prosesor sedang tidak aktif (PP=0), lama proses
berturut-turut antara lain 5,2,6,8,3.
Penjadwalan FIFO (First In First Out) [2]
Selesai Eksekusi = Mulai Eksekusi + Lama
Eksekusi

TA = Selesai Eksekusi - Total Waktu Tiba


Penjadwalan FIFO (First In First Out) [3]
Terlihat lama tanggap : 14 Nilai ini cukup besar bila dibanding lama proses
masing2.
Contoh diatas tidak disertai waktu tiba.

Berikut ini adalah contoh dengan waktu tiba yang berbeda:


Penjadwalan FIFO (First In First Out) [4]

Selesai Eksekusi = Mulai Eksekusi + Lama Eksekusi

TA = Selesai Eksekusi - Total Waktu Tiba


Penjadwalan FIFO (First In First Out) [5]
Cara lain untuk mengerjakan
Misal ada tiga proses P1, P2, P3 yang
datang dengan lama waktu kerja CPU (CPU
Burst-time) masing-masing sbb :
Jika proses datang dengan urutan P1, P2, P3
dan dilayani dengan algoritma FIFO maka
dapat digambarkan Gantt Chart-nya :

Dari Gantt Chart dapat diambil kesimpulan waktu tunggu untuk P1 adalah 0 milidetik,
waktu tunggu untuk P2 adalah 24 milidetik, waktu tunggu P3 adalah 27 milidetik. Jadi
rata-rata waktu tunggu (Average Waiting Time / AWT) adalah (0+24+27)/3 = 17
milidetik.
Kemudian jika waktu kedatangan proses adalah P3, P2, P1 maka Gantt Chartnya adalah
Penjadwalan FIFO (First In First Out) [5]
Menentukan Turn Around Time dengan FIFO berdasarkan contoh diatas :

Turn around time (waktu penyelesaian) P1 adalah 24, P2 = 27, P3 = 30, maka rata-rata turn
around time = (24+27+30)/3 = 27 milidetik.
Penjadwalan Shortest Job First (SJF) [1]

Penjadwalan dengan tipe prioritas tanpa


preeemptive.
• Dasar prioritasnya adalah pendeknya proses.
• Makin pendek prosesnya makin tinggi
prioritasnya.

Waktu tiba =
sama (0)
Penjadwalan Shortest Job First (SJF) [2]
TUGAS

1. Diketahui 10 antrian proses yaitu : A-B-C-D-E-F-G-H-I-J dengan


waktu kedatangan semuanya 0 dan prosesor sedang tidak aktif
(PP=0), lama proses berturut-turut antara lain 8,5,4,10,3,9,2,1,7,8
(Menggunakan FIFO).
2. Diketahui 7 antrian proses yaitu : P-Q-R-S-T-U-V dengan waktu
kedatangan semuanya 0 dan prosesor sedang tidak aktif (PP=0),
lama proses berturut-turut antara lain 6,9,1,5,7,7,2 (Menggunakan
SJF).
3. Diketahui 5 antrian proses yaitu : P-Q-R-S-T dengan waktu
kedatangan berturut-turut 0,1,3,5,8 dan prosesor sedang tidak aktif
(PP=0), lama proses berturut-turut antara lain 8,5,4,10,3
(Menggunakan FIFO).
4. Diketahui 6 antrian proses yaitu : E-F-G-H-I-J dengan waktu
kedatangan berturut-turut 0,2,3,5,7,9 dan prosesor sedang tidak aktif
(PP=0), lama proses berturut-turut antara lain 1,5,7,9,10,12
(Menggunakan SJF).

Anda mungkin juga menyukai