KONSEP DASAR PENJADWALAN
- Sistem Operasi modern umumnya merupakan sistem multitasking.
- Tujuan Utama Penjadwalan : untuk mempunyai proses berjalan secara bersamaan, untuk memaksimalkan kinerja dari CPU.
- Pemanfaatan CPU maksimum diperoleh dengan multiprogramming
- CPU-I/O Burst Cycle-Pelaksanaan proses terdiri dari suatu siklus tunggu I/O dan eksekusi CPU
- Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer.
- Penjadwalan bertugas memutuskan : Proses harus berjalan, Kapan dan berapa lama proses itu berjalan.
- Supaya semua pekerjaan memperoleh pelayanan yang adil (fairness)
- Supaya pemakaian prosesor dapat dimaksimumkan
- Supaya waktu tanggap dapat diminimumkan, berupa waktu tanggap nyata dan waktu tanggap maya
- Supaya pemakaian sumber daya seimbang
- Turn arround time, waktu sejak program masuk ke sistem sampai proses selesai.
- Efesien, proses tetap dalam keadaan sibuk tidak menganggur.
- Supaya terobosan (thoughput) dapat dimaksimumkan
TIPE-TIPE PENJADWALAN
- Penjadwalan jangka pendek
- Penjadwalan jangka menengah
- Penjadwalan jangka panjang
- PENJADWALAN JANGKA MENENGAH
- Jika ruang memori utama tidak cukup menampung proses, Sistem Operasi akan melakukan swapping yaitu memindahkan image process ke memori sekunder seperti disk.
- Umumnya yang dikorbankan adalah proses yang berstatus blocked atau menunggu event.
- Jika event sudah selesai, image process harus dikembalikan ke memori utama.
- Medium-term scheduler bertugas menyeleksi proses yang akan di swapping (swap-out) dan yang akan dikembalikan ke memori utama (swap-in)
- Penjadwal ini bekerja terhadap antrian batch dan memilih batch berikutnya yang harus dieksekusi.
- Batch biasanya adalah proses-proses dengan penggunaan sumber daya yang intensif (yaitu waktu pemroses, memori, perangkat masukan/keluaran), program-program ini berprioritas rendah, digunakan sebagai pengisi (agar pemroses sibuk) selama periode aktivitas job-job interaktif rendah.
- Antrian
Sejumlah proses yang
menunggu menggunakan prosesor dan akan diproses sesuai
dengan urutan antrian
proses. Proses berada dalam
memori utama.
2. Prioritas
Mendahului pada antrian proses, jika proses berada di bagian belakang antrian, maka dengan pemberian
prioritas, proses itu langsung berada di bagian paling depan pada antrian itu
sambil menunggu sampai kerja prosesor selesai.
3. Prempsi
Mendahului pada antrian proses, jika proses berada di bagian belakang antrian, maka dengan pemberian
prempsi, proses itu langsung berada di bagian paling depan pada antrian itu
bahkan akan memberhentikan kerja prosessor untuk mengerjakan proses yang
prempsi tersebut.
PERHITUNGAN PADA CARA KERJA PROSESSOR
- Lama proses (t) adalah lama waktu yang diperlukan untuk mengolah proses itu di dalam prosesor.
- Lama tanggap (T) adalah Waktu yang diperlukan untuk proses sejak mulai sampai selesai diolah oleh prosesor.
- Turn around time, dengan memperhitungkan lama waktu yang digunakan untuk sebuah proses hingga keluaran.
- Respone time, tidak memperhitungkan lama waktu yang digunakan untuk sebuah proses hingga keluaran.
TEKNIK PENJADWALAN PROSESSOR
1. Kategori
penjadwalan prosessor
- Tanpa prioritas tanpa prempsi
- Dengan prioritas tanpa prempsi
- Tanpa prioritas dengan prempsi
- Dengan prioritas dengan prempsi
2. Teknik penjadwalan prosessor
- Penjadwalan satu tingkat
- Penjadwalan multi tingkat
3. Teknik penjadwalan satu tingkat
RUMUS PENJADWALAN
- Jika terdapat N proses serentak, serta setiap proses memiliki lama tanggap sebesar T, maka rerata lama tanggap Tr adalah : Tr = (jumlah Ti) / N
- Waktu sia-sia (T – t), waktu yang terbuang dalam antrian atau selama terkena Prempsi.
- Rasio tanggap (Rt), Perbandingan di antara lama proses terhadap lama tanggap
- Rasio pinalti (Rp), Perbandingan diantara lama tanggap terhadap lama proses
- Rt = t/T dan
- Rp = T/t
ALGORITMA PENJADWALAN PROSES
- Algortima First Come First Served (FCFS)/FIFO (First
In First Out)
- Algortima PTD/SJF (Shortest Job
First)
- Algoritma PTDP (Penjadwalan proses terpendek dipertamakan prempsi )
- Algoritma RPTD (Ratio penalti tertinggi dipertamakan)
- Algoritma Roun Robin
Algoritma (PTD/ SJF/SJN)
- Algoritma 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
ALGORITMA FCFS
- Algoritma FCFS adalah salah satu bentuk algoritma penjadwalan yang tidak dipengaruhi oleh waktu tunggu dari sebuah proses.
- Algoritma FCFS ini melakukan proses menurut kapan proses itu datang atau yang bisa kita katakan sebagai proses antrian.
ALGORITMA SJS
- SJF adalah salah satu bentuk algoritma penjadwalan yang dipengaruhi oleh waktu tunggu dari sebuah proses.
- Apabila suatu proses memiliki waktu tunggu paling sedikit dalam pemrosesannya maka proses tersebut yang akan di kerjakan terlebih dahulu.
- Pada SJF tidak ada penyelaan karena SJF ini bersifat Non Preemtive
ALGORITMA SRTF
- SRTF ini adalah algoritma penjadwalan proses yang mencari waktu terpendek dari pada sebuah proses yang memungkinkan proses yang satu dengan yang lainnya mengalami penyelaan.