Anda di halaman 1dari 15

Kelompok 2

Anggota kelompok:

Nama : Andreas Herson Tunang


Nim : 22210022
Nama : Riswanto Onsent
Nim : 2221
KONSEP DASAR
• penjadwalan CPU adalah basis multiprogramming sistem operasi dengan
cara switch CPU diantara proses
• tujuan multiprogramming agar proses berjalan bersamaan untuk
memaksimalkan kinerja CPU
• penjadwalan adalah fungsi dasar suatu sistem operasi. CPU adalah salah
satu sumber dari komputer yang menjadi sentral dari penjadwalan sistem
operasi.
• kapanpun CPU idle, sistem operasi memilih salah satu proses untuk masuk
antrian ready untuk dieksekusi. pemilihan dilakukan oleh penjadwalan short
term.
• penjadwalan memilih dari sekian proses di memori yang siap dieksekusi dan
mengalokasikan CPU untuk mengeksekusinya
Penjadwalan CPU mungkin akan dijalankan ketika terjadi proses:

1. Berubah dari running ke waiting state


2. Berubah dari running ke ready state
3. Berubah dari writing ke ready
4. Terminates

Tenjadwalan 1 dan 4 termasuk nonpreemptive Penjadwalan 2 dan 3


termasuk preemptive
KRITERIA PENJADWALAN

• CPU utilization: menjadikan CPU terus-menerus sibuk (menggunakan CPU semaksimal


mungkin)
• Throughput: jika CPU mengeksekusi sebuah proses maka CPU sudah kerja. Ukuran kerja
adalah banyak proses diselesaikan per unit waktu
• Turn around time: interval dari waktu yang diizinkan dengan waktu yang dibutuhkan untuk
menyelesaikan sebuah proses.
• Waiting time: meminimalkan waktu tunggu proses (jumlah waktu yang dihabiskan
menunggu di ready queue).
• Response time: waktu untuk memulai memberi respon tetapi bukan waktu yang dipakai
output untuk respon tersebut
kesimpulannya kriteria penjadwalan CPU yang
optimal adalah dengan memaksimalkan CPU
utilization dan throughput, dan meminimalkan
turnaround time, waiting time dan respons time
ALGORITMA PENJADWALAN

• First-come, first-served (FCFS)


• Shortest-Job-Fair (SJS)
• priority
• Round-Robin (RR)
ALGORITMA FIRST COME FIRST SERVED

Algoritma:
Proses yang request CPU pertama kali akan mendapatkan jatah CPU.
Sederhana - algoritma maupun struktur data: menggunakan FIFO (First In First Out) queue
(ready queue).
Algoritma FCFS termasuk non-preemptive, sekali CPU dialokasikan pada suatu proses, maka
proses tersebut tetap akan memakai CPU sampai proses tersebut melepaskannya, yaitu jika
proses tersebut berhenti atau meminta I/O. Timbul masalah “waiting time” terlalu lama jika
didahului oleh proses yang waktu selesainya lama. Tidak cocok untuk time-sharing system
Waktu tunggu untuk P1 adalah 0, P2 adalah 24 dan P3 adalah 27 sehingga rata-rata
waktu tunggu adalah (0 + 24 + 27)/ = milidetik dibagi 3 sama dengan 7 plus milidetik
ALGORITMA SHORTEST JOB FIRST

Berkaitan dengan waktu Setiap proses. Ketika CPU bebas, proses yang punya waktu
terpendek mendapat prioritas.
Terdapat dua skema:
• non-preemptive - CPU hanya satu kali diberikan pada suatu proses, maka proses
tersebut tetap akan memakai CPU hingga proses tersebut melepaskannya
• preemptive - jika suatu proses tiba dengan panjang CPU burst lebih kecil dari waktu
yang tersisa pada eksekusi proses yang sedang berlangsung, maka dijalankan
preemtive. Skema ini dikenal dengan Shortest-Remain-Time-First (SRTF)
SJF akan optimal, Jika rata-rata waktu tunggu minimum untuk set proses yang diberikan
CONTOH NON-PREEMPTIVE

Waktu tunggu untuk P1 adalah 0, P2 adalah 26, P3 adalah 3 dan P4 adalah 7 sehingga rata-rata
waktu tunggu adalah (0 + 6 + 3 + 7)/4 = 4 milidetik
CONTOH PREEMPTIVE

Algoritma SRTF (preemptive) dapat dilihat pada chart berikut :

Waktu tunggu untuk P1 adalah 9, P2 adalah 1, P3 adalah 0 dan 4 adalah 4


sehingga rata-rata waktu tunggu adalah (9 + 1 + 0 + 4)/ = 3 milidetik
PENJADWALAN
● Algoritma: PRIORITAS
● Setiap proses akan mempunyai prioritas atau (bilangan integer).
● CPU diberikan ke proses dengan prioritas tertinggi (smallest integer highest priority).
● Preemptive: proses dapat diinterupsi jika terdapat prioritas lebih tinggi yang memerlukan CPU.
● Nonpreemptive: proses dengan prioritas tinggi akan mengganti pada saat pemakaian time-
slice habis.
● SJF adalah contoh prioritas scheduling dimana prioritas ditemukan oleh waktu pemakaian CPU
berikutnya.
● Problem = Starvation
● Proses dengan prioritas terendah mungkin tidak akan pernah dieksekusi
● Solution = Aging
● prioritas akan naik jika proses makin lama menunggu waktu jatah CPU
PENJADWALAN ROUND-ROBIN

● Setiap proses mendapat jatah waktu CPU (time slice/quantum) tertentu misalkan
10/100 milidetik.
● Setelah waktu tersebut maka proses akan di-prempt dan dipindahkan ke ready queue.
● Adil dan sederhana.

Jika terdapat n proses di “ready queue” dan waktu quantum (milidetik), maka:
● Setiap proses akan mendapatkan 1/n dari waktu CPU.
● Proses tidak akan menunggu lebih lama dari: (n-1) q time units.
PENJADWALAN MULTIPLE-
PROCESSOR

• Penjadwalan CPU lebih kompleks ketika terdapat multiple Processor.


• Jika ada beberapa processor yang identik tersedia maka load sharing
akan terjadi.
• Setiap processor memeriksa ready queue dan memilih proses yang
dieksekusi.
• Asymmetric multiprocessing - hanya ada satu processor yang dapat
mengakses struktur sistem data sehingga meringankan kebutuhan
sistem data.
TERIMA KASIH

Anda mungkin juga menyukai