Pert-20 Ch09 Scheduling 20091109

Download Report

Transcript Pert-20 Ch09 Scheduling 20091109

Penjadualan
Pada
Prosesor Tunggal
END
Pokok Bahasan: (1)
• Pendahuluan
• Jenis-jenis penjadualan
–
–
–
–
–
Penjadualan jangka panjang (long-term)
Penjadualan jangka menengah (medium-term)
Penjadualan jangka pendek (short-term)
Penjadualan I/O
Letak penjadualan
• Algoritma penjadualan
– Kriteria penjadualan jangka pendek (short-term)
– Penjadualan dengan prioritas
– Penjadualan alternatif
• Parameter-parameter pada penjadualan alternatif
• First-Come-First-Served (FCFS)
• Round Robin (RR)
Pokok Bahasan: (2)
• Algoritma penjadualan: (lanjutan)
– Penjadualan alternatif (lanjutan)
•
•
•
•
Shortest Process Next (SPN)
Shortest Remaining Time (SRT)
Highest Response Ratio Next (HRRN)
Feedback (FB)
– Perbandingan performansi
• Analisis antrian
• Model Simulasi
– Penjadualan fair-share
Pendahuluan
• Scheduling merupakan pengaturan penggunaan
waktu prosesor (processor time) bagi sejumlah
proses yang saling berkompetisi
• Mengapa harus ada penjadualan ?
–
–
–
–
–
–
Supaya setiap proses dapat dilayani secara adil
Agar tidak terjadi starvation
Supaya efisien dalam penggunaan waktu prosesor
Agar dapat meminimalkan terjadinya overhead
Supaya response time dapat terpenuhi
Supaya dapat memaksimalkan throughput
Penjadualan Jangka Panjang (1)
• Adalah keputusan untuk menambah suatu
proses ke kelompok proses yang akan dieksekusi
• Terjadi pada saat suatu proses baru diciptakan
(lokasinya masih di dalam harddisk)
• Frekuensi dilakukannya lebih jarang daripada
medium-term scheduling
• Membuat perkiraan kasar (coarse-grained)
dalam menambahkan suatu proses
Penjadualan Jangka Panjang (2)
• Kapan saat yang tepat untuk menambah satu
proses atau lebih ?
– Tergantung pada derajat multiprogramming yang
diinginkan
– Makin banyak proses yang diciptakan, maka:
• Alokasi waktu prosesor untuk setiap proses
semakin sedikit
• Makin tinggi derajat multiprogrammingnya
• Kualitas layanan untuk setiap proses semakin
berkurang
Penjadualan Jangka Panjang (3)
• Proses mana yang akan ditambahkan (create) ?
– Tergantung pada kriteria:
• Berdasarkan prioritas (sama atau berbeda)
• Berdasarkan waktu eksekusi yang diperlukan
• Berdasarkan ketersediaan resource melalui I/O
– Jika informasi dan resource tersedia, maka scheduler akan
melayani semua jenis proses (processor-bound maupun
I/O-bound)
– Apa yang dimaksud proses processor-bound ?
» Proses yang lebih banyak melakukan komputasi dan
sedikit melakukan operasi I/O
– Apa yang dimaksud proses I/O-bound ?
» Proses yang lebih banyak melakukan operasi I/O dan
sedikit melakukan komputasi
Penjadualan Jangka Menengah
• Adalah keputusan untuk menambahkan
sejumlah proses (sebagian atau seluruhnya) ke
dalam main memory
• Terjadi pada saat swapping
• Keputusan untuk melakukan swapping
menentukan derajat multiprogramming
• Frekuensi dilakukannya lebih sering daripada
long-term scheduling
• Akan dibahas pada materi tentang Proses,
Manajemen memori, dan Memori virtual
Penjadualan Jangka Pendek
• Adalah keputusan untuk memilih proses mana yang akan
dieksekusi diantara sejumlah proses yang sudah siap
dieksekusi
• Sangat sering dilakukan
• Disebut juga dispatcher (yang bertugas untuk
mengirimkan job)
• Membuat perkiraan halus (fine-grained) dalam
memutuskan proses yang akan dieksekusi
– Short-term scheduling dilakukan bila terjadi event seperti
misalnya:
•
•
•
•
Clock interrupts
I/O interrupts
Signals (misal: semaphore)
Pemanggilan ke sistem operasi (system call)
Penjadualan I/O
• Keputusan untuk memilih proses mana
yang akan diberi kesempatan untuk
menggunakan I/O device diantara
sejumlah proses yang sama-sama akan
menggunakan I/O device tersebut
• Dibahas pada materi Manajemen I/O
Letak Penjadualan (1)
• Letak penjadualan pada
status proses
Letak Penjadualan (2)
• Tingkatan
penjadualan
Letak Penjadualan (3)
• Penjadualan
pada
diagram
antrian
Kriteria Penjadualan Short-term (1)
• Ada 4 macam kriteria penjadualan jangka pendek:
– User-oriented
• Karakteristik sistem dilihat dari sudut pandang user atau proses
– System-oriented
• Karakteristik sistem dilihat dari sisi efektifitas dan utilitas penggunaan
prosesor
– Performance-related
• Karakteristik sistem dinilai dengan menggunakan parameter yang
kuantitatif (terukur)
– Not-performance-related
• Karakteristik sistem dinilai dengan menggunakan parameter yang
kualitatif (tidak dapat diukur dan dianalisis)
• Kombinasi kriteria penjadualan yang dapat terjadi:
–
–
–
–
User-oriented, Performance-related
User-oriented, Not-performance-related
System-oriented, Performance-related
System-oriented, Not-performance-related
Kriteria Penjadualan Short-term (2)
• Parameter pada User oriented, Performance related
– Turnaround time:
• Merupakan interval waktu sejak suatu proses masuk ke sistem
hingga selesai dieksekusi
– Response time:
• Pada data processing:
–Adalah waktu yang diperlukan sejak suatu permintaan (request)
dikirimkan oleh suatu proses hingga response terhadap request tersebut
diperoleh
• Pada Real-time:
–Adalah waktu yang diperlukan sejak task siap dieksekusi hingga selesai
mengerjakan sebuah job
• Merupakan parameter yang lebih baik dibanding turnaround time
dari sisi user
• Contoh:
Suatu sistem interaktif dirancang dapat memberikan layanan yang baik
bagi user bila response time-nya tidak lebih dari 2 detik. Maka tugas
utama scheduling adalah memaksimalkan jumlah user yang menerima
response time rata-rata 2 detik atau kurang
Kriteria Penjadualan Short-term (3)
– Deadline:
• Merupakan batas akhir suatu proses sudah harus selesai
• Proses yang sudah mendekati deadline lebih diutamakan, agar
prosentase pemenuhan deadline dapat diperoleh secara maksimal
• Parameter pada User oriented, Non-performance related
– Predictability:
• Layanan terhadap user dari waktu ke waktu tetap sama dan tidak
terpengaruh dengan apa yang dilakukan oleh sistem
• Sebuah job akan dieksekusi dalam periode yang relatif sama dan
dengan biaya yang sama tanpa dipengaruhi kondisi beban sistem
• Jika waktu eksekusi dan biaya yang diperlukan berubah-ubah akan
membingungkan user, sehingga kestabilan sistem rendah
Kriteria Penjadualan Short-term (4)
• Parameter pada System oriented, Performance
related
– Throughput:
• Adalah jumlah proses yang dapat diselesaikan dalam periode
waktu tertentu
• Semakin banyak semakin baik
• Nilainya bergantung pada panjang proses rata-rata dan
metode scheduling yang digunakan
– Processor utilization:
• Merupakan prosentase waktu dimana prosesor sibuk
• Nilainya sangat berarti pada shared system
• Nilainya kurang penting pada sistem user tunggal (misal
sistem real-time)
Kriteria Penjadualan Short-term (5)
• System oriented, Non-performance related
– Fairness:
• Adalah nilai ‘keadilan’ (kesetaraan) perlakuan
sistem scheduling terhadap setiap proses, agar tidak
terjadi starvation
– Enforcing priorities:
• Scheduling harus lebih mengutamakan proses yang
mempunyai prioritas lebih tinggi
– Balancing resources:
• Scheduling harus dapat menjaga keseimbangan
dalam penggunaan resource
Penjadualan dengan Prioritas (1)
• Setiap proses diberi nomor prioritas yang
nilainya dapat sama atau berbeda
• Scheduler selalu memilih proses yang
mempunyai prioritas paling tinggi
• Digunakan beberapa antrian untuk menangani
antrian proses dengan prioritas berbeda-beda
• Proses dalam antrian dengan prioritas lebih
rendah baru akan dieksekusi jika semua proses
dalam antrian yang lebih tinggi telah dieksekusi
Penjadualan dengan Prioritas (2)
• Nomor prioritas:
– Pada sistem Unix semakin tinggi angka prioritas, maka
prioritasnya semakin rendah. Prioritas nomor 0
merupakan prioritas tertinggi
– Pada sistem Windows berlaku kebalikannya
– Dalam perkuliahan ini digunakan penomoran prioritas
model Unix
• Kelemahan model prioritas:
– Proses dengan prioritas rendah dapat mengalami
starvation
– Solusi:
• Prioritas suatu proses dapat berubah berdasarkan waktu
atau history-nya
Penjadualan dengan Prioritas (3)
• Antrian prioritas:
Ready queue
Bisa lebih dari satu
•
Pada gambar di atas hanya digambarkan sebuah blocked queue
Parameter-Parameter pada Penjadualan
Alternatif (1)
• Selection function
• Decision mode:
– Nonpreemptive
– Preemptive
• Service time
• Turnaround Time (TAT)
• Normalized Turnaround Time (NTAT)
Parameter-Parameter pada Penjadualan
Alternatif (2)
• Selection function:
– Cara yang digunakan untuk memilih satu diantara
sejumlah proses yang akan dieksekusi selanjutnya
– Pemilihan dapat didasarkan pada:
• Prioritas proses
• Urutan kedatangan proses
• Karakteristik eksekusi proses:
–
–
–
–
Lama waktu yang telah digunakan untuk menunggu
Lama waktu yang telah digunakan dalam eksekusi
Total waktu yang diperlukan oleh proses
dll
Parameter-Parameter pada Penjadualan
Alternatif (3)
• Decision mode:
– Digunakan untuk menentukan kapan selection
function dijalankan
– Ada 2 kategori:
• Nonpreemptive: (tidak dapat disela)
– Sekali suatu proses berada dalam status running 
tetap akan running hingga:
» telah selesai, atau
» ter-blok oleh dirinya sendiri akibat menunggu I/O
atau layanan dari sistem operasi
Parameter-Parameter pada Penjadualan
Alternatif (4)
– Ada 2 kategori: (lanjutan)
• Preemptive:
– Proses yang sedang running dapat disela dan
dimasukkan pada status ready
– Preempt dapat disebabkan oleh:
» Terjadi interrupt dari proses lain
» Terjadi interrupt dari clock interrupt
– Kekurangan preemptive:
» Overhead tinggi
– Kelebihan preemptive:
» Dapat mencegah terjadinya monopoli oleh suatu
proses
» Layanan terhadap keseluruhan proses lebih baik
Parameter-Parameter pada Penjadualan
Alternatif (5)
• Service time = Ts
– Merupakan waktu prosesor yang digunakan oleh
suatu proses dalam satu siklus proses (sejak
proses dieksekusi hingga selesai, tidak termasuk
waktu tunggu)
• Turnaround Time (TAT) = Tr
– Merupakan total waktu suatu proses berada di
dalam sistem
= residence time
= waktu tunggu + waktu eksekusi
= finish time – arrival time
Parameter-Parameter pada Penjadualan
Alternatif (6)
• Normalized Turnaround Time (NTAT)
– Perbandingan antara turnaround time dengan
service time
= Tr / Ts
– Lebih bermakna daripada TAT
– Nilainya menunjukkan delay relatif yang
dialami oleh suatu proses
– Nilai terkecil adalah 1 (tanpa delay)
– Makin besar nilainya  kualitas layanannya
semakin turun
First-Come-First-Served (FCFS) (1)
• Algoritma:
– Proses yang datang pertama yang dieksekusi
– Proses yang berada di antrian ready paling lama yang
dieksekusi
• Disebut juga algoritma FIFO (First In First Out)
• Kelebihan:
(+) Merupakan metode scheduling paling sederhana
(+) Overhead kecil
(+) Dapat mencegah starvation
First-Come-First-Served (FCFS) (1)
• Karakteristik FCFS:
• w = waktu untuk menunggu
First-Come-First-Served (FCFS) (2)
• Kekurangan:
(-) Proses yang pendek dapat dirugikan, bila urutan
eksekusinya setelah proses yang panjang
• Contoh:
– Service time proses Y adalah 1/100 dari proses X, tetapi
normalized turnaround time-nya 100 kali lebih besar 
sangat dirugikan
First-Come-First-Served (FCFS) (3)
• Kekurangan: (lanjutan)
(-) FCFS cenderung menguntungkan proses processorbound dibanding proses I/O-bound
• Proses processor-bound:
– Proses yang lebih sering melakukan perhitungan komputasi
daripada mengakses I/O device
• Proses I/O-bound:
– Proses yang lebih banyak menggunakan I/O device daripada
menggunakan prosesor
• Contoh:
– Bila proses I/O-bound berada di belakang proses processorbound yang sedang dieksekusi  proses tersebut terpaksa
harus menunggu meskipun saat itu I/O device sedang tidak
digunakan
– Solusi: gabungkan dengan model prioritas
First-Come-First-Served (FCFS) (4)
• Contoh:
– Terdapat 5 buah proses yang akan dieksekusi menggunakan
algoritma scheduling FCFS. Waktu kedatangan dan waktu
layanan untuk masing-masing proses seperti pada tabel di
bawah.
Gambarkan urutan eksekusi yang terjadi dan hitung finish
time, TAT, dan NTAT untuk masing-masing proses.
First-Come-First-Served (FCFS) (6)
• Solusi:
Round-Robin (RR) (1)
• Algoritma:
– Eksekusi proses diatur berdasarkan alokasi waktu
tertentu (slot waktu) yang diatur dengan clock
interrupt
• Clock interrupt terjadi secara periodik
• Setiap satu slot waktu mempunyai ukuran yang
sama (disebut teknik time slicing)
• Bila terjadi clock interrupt, maka:
– Proses yang sedang running  dimasukkan ke dalam
antrian ready
– Proses di antrian ready paling depan dieksekusi
Round-Robin (RR) (2)
• Karakteristik RR:
Round-Robin (RR) (3)
• Kekurangan:
(-) Performansinya lebih
buruk dibanding FCFS jika
ukuran slot lebih besar
daripada ukuran proses
terbesar.
Kenapa ?
(-) Dapat terjadi overhead
berlebihan jika ukuran
setiap slot (slice) terlalu
kecil (lihat halaman
selanjutnya)
• Ukuran terkecil harus
lebih besar daripada
ukuran proses terkecil
agar overhead dapat
dikurangi
Slot waktu > service time
Round-Robin (RR) (4)
Slot waktu < service time, sehingga:
– Eksekusi sebuah proses tidak selesai dalam satu slot waktu
– Sebuah proses akan menempati lebih dari satu slot (bisa
berurutan, bisa pula terselingi proses lain)
Round-Robin (RR) (5)
• Kekurangan: (lanjutan)
(-) Proses I/O bound mendapatkan waktu layanan lebih
sedikit
• Mengapa ?
– Karena proses I/O bound bersifat burst (sesaat), sehingga hanya
membutuhkan waktu prosesor dalam waktu lebih singkat
daripada slot yang disediakan
– Sesudah mengirimkan burst  proses I/O bound akan ter-blok
dan menunggu hingga I/O device yang diakses selesai
– Proses I/O bound baru mendapatkan giliran untuk
menyelesaikan sisa pekerjaannya setelah satu putaran atau
lebih
Round-Robin (RR) (6)
• Solusi:
– Round robin dimodifikasi menjadi Virtual Round Robin (VRR)
dengan menambahkan sebuah antrian yang disebut antrian
auxiliary
– Mekanismenya:
• Proses yang ter-blok akibat menunggu I/O device selesai
dimasukkan pada antrian I/O untuk device tertentu
• Bila I/O device telah selesai  proses yang ter-blok tadi
dimasukkan ke dalam antrian auxiliary
• Bila slot waktu proses yang sedang running habis  proses
yang dieksekusi berikutnya bukan proses dalam antrian ready,
tetapi yang diprioritaskan adalah proses yang terdapat di
dalam antrian auxiliary
• Proses yang ter-blok akibat I/O device dapat menyelesaikan
sisa pekerjaannya
Round-Robin (RR) (7)
• Solusi: VRR
Round-Robin (RR) (8)
• Kelebihan Round Robin:
(+) Dapat menghindari ketidakadilan layanan terhadap
proses kecil seperti yang terjadi pada FCFS
(+) Response time lebih cepat untuk proses berukuran
kecil
(+) Dapat mencegah starvation
(+) Overhead kecil, jika ukuran proses rata-rata lebih kecil
dibanding ukuran quantum/slot
Round-Robin (RR) (9)
• Solusi untuk contoh kasus seperti pada FCFS dengan RR
(ukuran kuantum q=1):
Round-Robin (RR) (10)
• Solusi untuk contoh kasus seperti pada FCFS dengan RR
(ukuran kuantum q=4):
Shortest Process Next (SPN) (1)
• Algoritma:
– Eksekusi proses diatur berdasarkan perkiraan ukuran proses
terkecil
– Proses yang datang belakangan langsung berada pada antrian
proses terdepan bila ukurannya paling kecil
• Kelebihan:
(+) Dapat mencegah kerugian yang dialami proses kecil seperti
pada FCFS
(+) Throughput tinggi
(+) Proses kecil mempunyai response time kecil
• Kekurangan:
(-) Scheduler harus mengetahui/memperkirakan ukuran setiap
proses yang akan dieksekusi
(-) Proses besar dapat mengalami starvation
(-) Overhead bisa tinggi, untuk apa ?
Shortest Process Next (SPN) (2)
• Karakteristik SPN:
• s = total service time yang diperlukan
Sistem Operasi/Endro
Ariyanto/29122007 #44
Shortest Process Next (SPN) (3)
• Solusi untuk contoh kasus seperti pada FCFS dengan SPN:
Shortest Remaining Time (SRT) (1)
• Algoritma:
– Eksekusi proses diatur berdasarkan perkiraan sisa
waktu terkecil
• Proses yang baru masuk dapat langsung
dieksekusi bila total waktu eksekusinya lebih
kecil daripada sisa waktu proses yang sedang
running
• Merupakan model preemptive-nya SPN
• Kapan pemilihan proses yang akan dieksekusi
dilakukan ?
– Bila ada proses baru yang masuk, atau
– Bila proses yang sedang running telah selesai
Shortest Remaining Time (SRT) (2)
• Kekurangan:
(-) Terjadi overhead akibat scheduler harus
menghitung/memperkirakan sisa waktu eksekusi setiap
proses untuk menentukan sisa waktu yang terkecil
(-) Dapat terjadi starvation pada proses yang panjang
(-) Proses yang panjang dikalahkan oleh proses yang kecil
• Kelebihan:
(+) Kualitas layanan rata-rata yang diterima proses lebih baik
(jumlah proses yang memperoleh nilai NTAT = 1 lebih
banyak)
(+) Throughput tinggi
(+) Response time cepat
Shortest Remaining Time (SRT) (3)
• Karakteristik SRT:
• e = waktu eksekusi yang telah dijalani
• s = total service time yang diperlukan (termasuk e)
Shortest Remaining Time (SRT) (4)
• Solusi untuk contoh kasus seperti pada FCFS dengan SRT:
Highest Response Ratio Next (HRRN) (1)
• Algoritma:
– Pemilihan proses didasarkan pada rasio response tertinggi
• Rasio response (R) diperoleh dari perbandingan antara
jumlah waktu tunggu (w) ditambah perkiraan service time
(s) dengan perkiraan service time (s)
• Response (R) adalah identik dengan NTAT
• Data waktu eksekusi diperoleh dari developer atau
berdasarkan rekaman sebelumnya
• Proses kecil akan cenderung menghasilkan rasio response
besar, sehingga didahulukan
Highest Response Ratio Next (HRRN) (2)
• Karakteristik:
• w = waktu untuk menunggu
• s = total service time yang diperlukan
Highest Response Ratio Next (HRRN) (3)
• Keuntungan:
(+) Dapat mencegah starvation
(+) Setiap proses akan mendapatkan layanan yang
seimbang
(+) Response time cepat
(+) Throughput tinggi
• Kekurangan:
( ̶ ) Terjadi overhead akibat scheduler harus
mengetahui/memperkirakan service time (waktu
untuk eksekusi) proses-proses yang akan dieksekusi
Highest Response Ratio Next (HRRN) (4)
• Solusi untuk contoh kasus seperti pada FCFS dengan HRRN:
Feedback (FB) (1)
•
•
•
•
Penjadualan menggunakan model preemptive
Setiap proses mempunyai nomor prioritas
Nomor prioritas dapat berubah (dinamis)
Setiap satu nomor prioritas disediakan antrian
tersendiri
• Dalam setiap antrian digunakan algoritma FCFS,
kecuali antrian untuk prioritas terendah
• Pada antrian prioritas terendah digunakan algoritma
round robin
Feedback (FB) (2)
• Algoritma FB sederhana:
– Setiap proses yang datang langsung masuk pada
antrian prioritas tertinggi, sehingga langsung
dieksekusi selama satu slot atau satu kuantum
– Bila proses tersebut ter-preempt oleh proses lain
atau jatah waktunya habis selanjutnya dimasukkan ke
dalam antrian prioritas lebih rendah (teknik ini disebut
multilevel feedback)
• Proses pendek akan cepat selesai
• Proses yang panjang akan mengalami beberapa kali
penurunan derajat prioritas
• Bila telah berada pada antrian terendah  seterusnya
berada pada antrian ini hingga selesai
Feedback (FB) (3)
• Mekanisme FB sederhana:
Feedback (FB) (4)
• Karakteristik:
• Selection function:
• Digunakan time slicing
• Jatah waktu eksekusi dinamis
• Prioritas dinamis
Feedback (FB) (5)
• Kelebihan:
(+) Dapat digunakan pada kondisi dimana informasi
tentang panjang proses atau perkiraan waktu
eksekusi tidak diketahui
• Kekurangan:
(-) Turn around time (TAT) proses yang panjang dapat
semakin lama
(-) Proses yang panjang dapat mengalami starvation
bila terus menerus datang proses yang baru
(-) Overhead tinggi
Feedback (FB) (6)
• Bagaimana solusi untuk mencegah starvation ?
– Dengan FB dinamis
– Digunakan jatah waktu eksekusi dinamis:
• Proses pada antrian prioritas tertinggi (RQ0) diberi jatah
eksekusi satu kuantum
• Proses pada antrian prioritas berikutnya (RQ1) diberi jatah
eksekusi dua kuantum
• Proses pada antrian prioritas berikutnya (RQi) diberi jatah
eksekusi 2i kuantum
• Apakah sudah terhindar dari starvation ?
– Belum !!
– Solusi:
• Proses yang sudah terlalu lama berada pada suatu antrian 
prioritasnya dinaikkan
Feedback (FB) (7)
• Solusi untuk contoh kasus seperti pada FCFS dengan FB
sederhana (q=1):
Feedback (FB) (8)
• Solusi untuk contoh kasus seperti pada FCFS dengan FB
sederhana (q=1): (lanjutan)
Feedback (FB) (9)
• Solusi untuk contoh kasus seperti pada FCFS dengan FB
dinamis (q=2i):
Feedback (FB) (10)
• Solusi untuk contoh kasus seperti pada FCFS
dengan FB dinamis (q=2i): (lanjutan)
Karakteristik Beberapa Algoritma Penjadualan
Perbandingan Performansi Beberapa Algoritma
Penjadualan
Performansi Algoritma Penjadualan
• Faktor apa saja yang dapat mempengaruhi
performansi penjadualan ?
– Probabilitas distribusi service time berbagai macam
proses
– Efisiensi penjadualan
– Mekanisme context switching
– Karakteristik permintaan I/O
– Performansi subsistem I/O
Analisis Antrian (1)
• Kondisi analisis:
– Terdapat 2 kelas prioritas (prioritas 1 dan prioritas 2)
– Service time proses prioritas 2 adalah 5 kali service time
proses prioritas 1
– Rata-rata kedatangan proses sesuai dengan model Poisson
– Antrian pada setiap kelas prioritas menggunakan algoritma
FCFS
– Tidak ada proses yang hilang (meninggalkan antrial) saat
sedang antri
– Tidak ada proses yang terhenti saat sedang dieksekusi
– Hanya terdapat satu server antrian
Analisis Antrian
(2)
• Rumus-rumus:
 = rata-rata kedatangan
proses per detik
 = utilitas prosesor (%)
Analisis Antrian (3)
• Grafik Normalized Response Time untuk proses pendek
(prioritas 1):
Analisis Antrian (4)
• Apa analisis anda ?
– Untuk model tanpa prioritas, semakin tinggi utilitas
prosesor maka nilai normalized response time-nya
naik secara eksponensial
– Untuk model prioritas tanpa preemption kenaikan nilai
normalized response time terjadi secara linier
sebanding dengan kenaikan utilitas prosesor
– Kondisi terbaik terjadi ketika nilai normalized response
time berada di sekitar satu jika digunakan model
prioritas dengan preemption
– Semakin tinggi utilitas prosesor, maka normalized
response time-nya semakin tinggi
Analisis Antrian (5)
• Grafik Normalized Response Time untuk proses panjang
(prioritas 2):
Analisis Antrian (6)
• Apa analisis anda ?
– Karakteristik sistem pada model tanpa prioritas
memberikan nilai normalized response time lebih baik
daripada model dengan prioritas
– Karakteristik sistem pada model prioritas tanpa
preemption memberikan nilai normalized response
time paling jelek dibanding model lainnya
– Semakin tinggi utilitas prosesor, maka normalized
response time-nya naik secara eksponensial
– Pada saat utilitas mencapai 0,9 akan menyebabkan
nilai normalized response time menjadi tidak
terhingga
Analisis Antrian (7)
• Grafik Normalized Response Time semua proses:
Analisis Antrian (8)
• Apa analisis anda ?
– Karakteristik sistem pada model prioritas tanpa
preemption memberikan nilai normalized response
time paling jelek dibanding model lainnya
– Karakteristik sistem pada model prioritas dengan
preemption memberikan nilai normalized response
time paling baik daripada model lainnya
– Semakin tinggi utilitas prosesor, maka normalized
response time-nya naik secara eksponensial
– Pada saat utilitas mencapai 0,9 akan menyebabkan
nilai normalized response time menjadi tidak
terhingga
Model Simulasi (1)
• Kondisi simulasi:
–
–
–
–
–
–
–
Jumlah proses yang digunakan sebanyak 50.000 proses
Arrival rate  = 0,8
Rerata service time Ts = 1
Utilisasi prosesor  = .Ts = 0,8
Proses dikelompokkan berdasarkan percentile service time
Setiap satu kelompok terdiri dari 500 proses
Percentile pertama terdiri dari proses-proses berukuran
kecil
– Percentile kedua terdiri dari 500 proses berukuran lebih
panjang, demikian seterusnya
Model Simulasi (2)
• Grafik Normalized Turnaround Time hasil simulasi:
Model Simulasi (3)
• Apa analisis anda ?
– Performansi FCFS paling jelek dibanding algoritma
penjadualan lainnya
– ...
Model Simulasi (4)
• Grafik Waktu Tunggu hasil simulasi:
Penjadualan Fair-Share (1)
• Diterapkan pada sistem multiuser
• Aplikasi user terdiri dari banyak proses (thread)
• User hanya melihat performansi dari aplikasi, bukan
bagaimana proses dieksekusi
• Perlu adanya penjadualan berdasarkan kelompok proses
(fair-share scheduling)
• Penjadualan dibuat berdasarkan prioritas:
– Prioritas proses
– Lama waktu proses menggunakan prosesor
– Lama waktu group menggunakan prosesor
• Semakin besar angka prioritasnya, maka prioritas
proses/group semakin rendah
Penjadualan Fair-Share (2)
CPU j (i ) 
CPU j (i  1)
2
GCPUk (i  1)
GCPUk (i ) 
2
CPU j (i ) GCPUk (i)
Pj (i )  Basej 

2
4 xWk
• CPUj(i) = Utilisasi prosesor oleh proses j pada interval i
• GCPUj(i) = Utilisasi prosesor oleh grup k pada interval i
• Wk = bobot grup k, 0 < Wk  1 dan Wk = 1
Traditional UNIX Scheduling
• Multilevel feedback using round robin within
each of the priority queues
• If a running process does not block or
complete within 1 second, it is preempted
• Priorities are recomputed once per second
• Base priority divides all processes into fixed
bands of priority levels
Bands
• Decreasing order of priority
– Swapper
– Block I/O device control
– File manipulation
– Character I/O device control
– User processes
Referensi
• Stallings, William. 2005. Operating System: Internal and
Design Principles. Fifth edition. Prentice Hall
• Web:
– ftp://ftp.prenhall.com/pub/esm/computer
science.s41/stallings/slides/OS5e-PPT-Slides/
– http://www.stttelkom.ac.id/staf/end