Bab 4. Penjadwalan CPU POKOK BAHASAN: TUJUAN BELAJAR: 4.1 KONSEP DASAR. Konsep Dasar Kriteria Penjadwalan Algoritma Penjadwalan

dokumen-dokumen yang mirip
BAB 4 PENJADWALAN CPU 55

Bab 5: Penjadwalan CPU. Konsep Dasar

Overview Penjadwalan (1)

Penjadwalan Process. Konsep Dasar Penjadwalan Proses. Preemptive & Non-Preemtive Scheduling. Dispatcher.

Sistem Operasi. Konsep Dasar. Histogram Waktu CPU-Burst. Penjadwal CPU PENJADWALAN CPU. Pertukaran Urutan Pada CPU Dan I/O Burts

SISTEM OPERASI PENJADWALAN PROSES

Penjadwalan CPU. Badrus Zaman

Penjadualan CPU. Konsep Dasar. Penjadualan CPU. Penggantian Rangkaian Urutan CPU dan I/O Burst

Konsed Dasar Penjadualan Proses

Penjadualan CPU. Konsep Dasar Kriteria Penjadualan Algoritma Penjadualan Penjadualan Multiple-Processor Penjadualan Real-Time Evaluasi Algorithm

Konsep Dasar Kriteria Penjadualan Algoritma Penjadualan Penjadualan Multiple-Processor Penjadualan Real-Time Evaluasi Algorithm

PENJADWALAN PROSES. Pendahuluan

DESKRIPSI PENJADWALAN PROSES

Pertemuan V Penjadwalan Proses

Praktikum 9. Penjadwalan CPU 1

Deskripsi Penjadwalan Proses

Operating System. Scheduling. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

Operasi pada Sistem Operasi. Avida Endriani Reza Gusty Erlangga D3 TEKNIK INFORMATIKA A

Makalah PENJADWALAN PROSES. Dosen : Azwar, M. Kom DI SUSUN OLEH ELAN K.LUWITI NIM :T KELAS 2/KC FAKULTAS ILMU KOMPUTER (FIKOM)

adil efisiensi waktu tanggap (response time) turn arround time throughput

Praktikum 10. Penjadwalan CPU 2 POKOK BAHASAN: TUJUAN BELAJAR: DASAR TEORI: 1 Penjadwalan CPU Premptive. ü Membuat program simuliasi Pendawalan CPU

Penjadwalan Proses. Penjadwalan: pemilihan proses selanjutnya yg akan dieksekusi Melakukan multiplexing CPU Kapan dilakukan penjadwalan?

Penjadualan Process Bagian 1

Modul ke: Sistem Operasi. Tipe penjadwalan di prosessor non-preemptive. Fakultas FASILKOM. Juliansyahwiran, S. Kom, MTI.

sejumlah proses aktif. Aktifitas pemindahan proses yang tertunda dari memori utama ke memori sekunder disebut swapping.

IF3191- Penjadwalan Proses. Henny Y. Zubir. Departemen Teknik Informatika Institut Teknologi Bandung. IF-ITB/HY/24-Aug-03 IF3191 Penjadwalan Proses

Team project 2017 Dony Pratidana S. Hum Bima Agus Setyawan S. IIP

Sistem Operasi Penjadwalan Proses

Pertemuan - 4 PENJADWALAN PROSES. Haryono Setiadi, ST, M.Eng D3 Ilmu Komputer UNS

Modul ke: Sistem Operasi. Tipe penjadwalan di prosessor preemptive. Fakultas FASILKOM. Juliansyahwiran, S. Kom, MTI. Program Studi Sistem Informasi

PENJADWALAN PROSES AGUS PAMUJI. SISTEM OPERASI - Penjadwalan Proses

Simulasi Algoritma Penjadualan Proses

Penjadualan Process Bagian 2

IMPLEMENTASI ALGORITMA MULTILEVEL FEEDBACK QUEUE DALAM MENENTUKAN WAKTU TUNGGU DAN WAKTU KESELURUHAN PROSES

Penjadwalan Proses. Penjadwalan bertugas memutuskan hal-hal berikut : Proses yang harus berjalan. Kapan dan selama berapa lama proses berjalan

Penjadwalan Proses Sistem Operasi (TKE113117) Program Studi Teknik Elektro, Unsoed

Penjadwalan Proses. 1. Adil Proses proses diperlakukan sama yaitu mendapat jatah waktu prosessor yang sama

Tujuan Utama : agar proses-proses berjalan secara konkuren dan untuk memaksimalkan kinerja dari CPU.

MODUL PRAKTIKUM SISTEM OPERASI PRAKTIKUM IV Penjadwalan Proses I

CPU Scheduler Ch. 5. SISTIM OPERASI (Operating System) IKI Johny Moningka

Recap. Penjadwalan Proses. Kriteria Penjadwalan Proses. Tipe Tipe Penjadwalan. Penjadwal Jangka Pendek 9/23/2016. Ricky Maulana Fajri

Mata Kuliah : Sistem Operasi Kelas : Teknik Informatika 4

IMPLEMENTASI ALGORITMA MULTILEVEL FEEDBACK QUEUE DALAM MEMENTUKAN WAKTU TUNGGU DAN WAKTU KESELURUHAN PROSES

CPU-I/O Burst Cycle adalah. siklus tunggu I/O dan eksekusi CPU. Proses dieksekusi secara bergantian

SIMULASI PERBANDINGAN PENJADWALAN ROUND ROBIN DAN FCFS UNTUK MANAJEMEN PROSES DALAM SINGLE PROCESSING

PENJADWALAN. Sistem Operasi TIKB1023 Munengsih Sari Bunga. Politeknik Indramayu. TIKB1023/Sistem Operasi/MSB

APLIKASI PEMBELAJARAN SISTEM OPERASI DALAM MATERI PROSES PENJADWALAN FCFS, SJF DAN ROUND ROBIN

PENJADWALAN PROSES. Tiga Level Penjadwalan

Bab 13. Konsep Penjadwalan

Algoritma Penjadwalan 2

Dosen pengampu : Mohamad Dani Sifat : Tutup buku dan peralatan elektronik

BAB 2 TINJAUAN PUSTAKA. b. Kapan dan selama berapa lama proses itu berjalan. a. Jenis pekerjaan yang akan diselesaikan

MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN PROSES)

Understanding Operating Systems Fifth Edition. Chapter 4 Processor Management

Operating System: An Overview. Ch. 6: Process Scheduling. Ch. 6: Process Scheduling. Agenda. Basic Concept Scheduling Criteria Scheduling Algorithms

Dasar Sistem Operasi. Dibuat Oleh: Anindito Yoga Pratama, S.T., MMSI

Analisis Perbandingan Algoritma Penjadwalan CPU A New Improved Round Robin dan A Dynamic Time Quantum Shortest Job Round Robin Artikel Ilmiah

Pengaturan Proses Dalam system operasi. proses

PROSES. DESKRIPSI PROSES. PROSES MERUPAKAN UNIT TERKECIL YANG SECARA INDIVIDU MEMILIKI SUMBER DAYASUMBER DAYA YANG DIJADWALKAN SISTEM OPERASI

Proses. Deskripsi Proses. Proses merupakan unit terkecil yang secara individu memiliki sumber dayasumber daya yang dijadwalkan sistem operasi

VISUAL PENJADWALAN CPU MENGGUNAKAN ALGORITMA ROUND ROBIN DAN FCFS (FIRST COME FIRST SERVED) ABSTRAK

Process Control Block (PCB) Masing-masing proses Direpresentasikan oleh Sistem Operasi dengan menggunakan Process Control Block (PCB),

METODE PENJADWALAN PROSES AGUS PAMUJI. SISTEM OPERASI Metode Penjadwalan Proses

Algoritma Schedulling

MANAJEMEN PROSES. Pointer State proses Keadaan proses: Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyak lagi.

BAB III TEKNIK PENJADWALAN PROSESOR

BAB V Penjadwalan CPU

KONSEP PROSES STATUS PROSES

Penerapan Algoritma Greedy dalam Algoritma Penjadwalan Prosesor Tunggal Shortest Job First

Reza Chandra Universitas Gunadarma PTA 2010/2011

Bab 3.Proses dan Penjadualan

Penerapan algoritma greedy pada berbagai macam tugas sistem operasi

JURNAL ITSMART Vol 4. No 2. Desember 2015 ISSN :

Sekolah Tinggi Teknologi Adisutjipto Yogyakarta

Minimisasi waktu penyelesaian tugas berdepedensi dengan pekerja homogen terbatas menggunakan algoritma greedy

Proses dan Penjadwalan

MANAJEMEN MEMORI. Manajemen Memori 1

Sistem Operasi. Silabus :

BAB I PENDAHULUAN. commerce atau online shop yang diinginkan kemudian melakukan registrasi. seperti cara transaksi pembayaran dan cara pengiriman.

Jawaban Soal UTS Instalasi dan Penggunaan Sistem Operasi Semester Genap 2014/2015 D3 Teknik Informatika, Fakultas Ilmu Terapan, Universitas Telkom

PENGATURAN PROSES. Proses adalah program yang sedangdieksekusi atau sofware yang sedang dilaksanakan.

SISTEM OPERASI. Sri Kusumadewi

Implementasi Algoritma Shortest Job First dan Round Robin pada Sistem Penjadwalan Pengiriman Barang

BAB 16. Evaluasi dan Ilustrasi

SIMULASI UNTUK PENENTUAN WAKTU TURN-AROUND MINIMUM PADA PENJADWALAN PROSES SISTEM OPERASI WINDOWS

Sistem Operasi PENGATURAN PROSES

IMPLEMENTASI PENGEMBANGAN PENJADWALAN ROUND-ROBBIN PADA ANTRIAN DATA REAL TIME CENTRAL PROCESSING UNIT

Proses Burst Time Prioritas P P1 7 1 P2 9 3 P P4 19 2

BAB II LANDASAN TEORI

MAKALAH SEMINAR TUGAS AKHIR

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

APLIKASI GRANTT CHART PADA ALGORITMA PENJADUALAN PROSES

OPTIMASI TURN ARROUND TIME PADA PENJADWALAN ROUND ROBIN DENGAN MENCARI QUANTUM TIME OPTIMAL MENGGUNAKAN ALGORITMA SIMULATED ANNEALING

Penjadwalan Disk sangat penting dalam meningkatkan efisiensi penggunaan disk terkait dengan kecepatan waktu akses

SISTEM OPERASI. fb : materi mufadhol. Operating System Concepts. Oleh : Mufadhol, S.Kom. Copyright MasYong

I. Struktur Sistem Operasi

SMK MUHAMMADIYAH 4 JAKARTA TEKNIK KOMPUTER DAN JARINGAN SISTEM OPERASI MENEJEMEN MEMORI

7. Pengaturan Proses

PEMODELAN PENJADWALAN MULTILEVEL FEEDBACK QUEUE MENGGUNAKAN DYNAMIC TIME QUANTUM PADA KASUS PEMESANAN MAKANAN DI RESTORAN

1. Pendahuluan. a. Bagaimana perbedaan performansi layanan algoritma FIFO dan algoritma Capacity Scheduling pada sistem Hadoop multi-node cluster.

Transkripsi:

Bab 4 Penjadwalan CPU POKOK BAHASAN: Konsep Dasar Kriteria Penjadwalan Algoritma Penjadwalan TUJUAN BELAJAR: Setelah mempelajari materi dalam bab ini, mahasiswa diharapkan mampu: Memahami tentang konsep dasar penjadwalan CPU Memahami kriteria yang diperlukan untuk penjadwalan CPU Memahami beberapa algoritma penjadwalan CPU yang terdiri dari algoritma First Come First Serve, Shortest Job First, Priority dan Round Robin 4.1 KONSEP DASAR Pada sistem multiprogramming, selalu akan terjadi beberapa proses berjalan dalam suatu waktu. Sedangkan pada uniprogramming hal ini tidak akan terjadi, karena hanya ada satu proses yang berjalan pada saat tertentu. Sistem multiprogramming diperlukan untuk memaksimalkan utilitas CPU. Pada saat proses dijalankan terjadi siklus eksekusi CPU dan menunggu I/O yang disebut dengan siklus CPU-I/O burst. Eksekusi proses dimulai dengan CPU burst dan dilanjutkan dengan I/O burst, diikuti CPU burst lain, kemudian I/O burst lain dan seterusnya seperti pada Gambar 4-1. 51

52 Gambar 4-1 :Siklus CPU-I/O Burst Gambar 4-2 :Histogram waktu CPU burst

53 Pada saat suatu proses dieksekusi, terdapat banyak CPU burst yang pendek dan terdapat sedikit CPU burst yang panjang. Program yang I/O bound biasanya sangat pendek CPU burst nya, sedangkan program yang CPU bound kemungkinan CPU burst nya sangan lama. Hal ini dapat digambarkan dengan grafik yang eksponensial atau hiper eksponensial seperti pada Gambar 4-2. Oleh karena itu sangat penting pemilihan algoritma penjadwalan CPU. 4.1.1 CPU Scheduler Pada saat CPU menganggur, maka sistem operasi harus menyeleksi prosesproses yang ada di memori utama (ready queue) untuk dieksekusi dan mengalokasikan CPU untuk salah satu dari proses tersebut. Seleksi semacam ini disebut dengan shortterm scheduler (CPU scheduler). Keputusan untuk menjadwalkan CPU mengikuti empa keadaan dibawah ini : 1. Apabila proses berpindah dari keadaan running ke waiting; 2. Apabila proses berpindah dari keadaan running ke ready; 3. Apabila proses berpindah dari keadaan waiting ke ready; 4. Apabila proses berhenti. Apabila model penjadwalan yang dipilih menggunakan keadaan 1 dan 4, maka penjadwakan semacam ini disebut non-peemptive. Sebaliknya, apabila yang digunakan adalah keadaan 2 dan 3, maka disebut dengan preemptive. Pada non-preemptive, jika suatu proses sedang menggunakan CPU, maka proses tersebut akan tetap membawa CPU sampai proses tersebut melepaskannya (berhenti atau dalam keadaan waiting). Preemptive scheduling memiliki kelemahan, yaitu biaya yang dibutuhkan sangat tinggi. Antara lain, harus selalu dilakukan perbaikan data. hal ini terjadi jika suatu proses ditinggalkan dan akan segera dikerjakan proses yang lain. 4.1.2 Dispatcher Dispatcher adalah suatu modul yang akan memberikan kontrol pada CPU terhadap penyeleksian proses yang dilakukan selama short-term scheduling. Fungsifungsi yang terkandung di dalam-nya meliputi: 1. Switching context; 2. Switching ke user-mode;

54 3. Melompat ke lokasi tertentu pada user program untuk memulai program. Waktu yang diperlukan oleh dispatcher untuk menghentikan suatu proses dan memulai untuk menjalankan proses yang lainnya disebut dispatch latency. 4.2 KRITERIA PENJADWALAN Algoritma penjadwalan CPU yang berbeda akan memiliki perbedaan properti. Sehingga untuk memilih algoritma ini harus dipertimbangkan dulu properti-properti algoritma tersebut. Ada beberapa kriteria yang digunakan untuk melakukan pembandingan algoritma penjadwalan CPU, antara lain: 1. CPU utilization. Diharapkan agar CPU selalu dalam keadaan sibuk. Utilitas CPU dinyatakan dalam bentuk prosen yaitu 0-100%. Namun dalam kenyataannya hanya berkisar antara 40-90%. 2. Throughput. Adalah banyaknya proses yang selesai dikerjakan dalam satu satuan waktu. 3. Turnaround time. Banyaknya waktu yang diperlukan untuk mengeksekusi proses, dari mulai menunggu untuk meminta tempat di memori utama, menunggu di ready queue, eksekusi oleh CPU, dan mengerjakan I/O. 4. Waiting time. Waktu yang diperlukan oleh suatu proses untuk menunggu di ready queue. Waiting time ini tidak mempengaruhi eksekusi proses dan penggunaan I/O. 5. Response time. Waktu yang dibutuhkan oleh suatu proses dari minta dilayani hingga ada respon pertama yang menanggapi permintaan tersebut. 6. Fairness. Meyakinkan bahwa tiap-tiap proses akan mendapatkan pembagian waktu penggunaan CPU secara terbuka (fair). 4.3 ALGORITMA PENJADWALAN Penjadwalan CPU menyangkut penentuan proses-proses yang ada dalam ready queue yang akan dialokasikan pada CPU. Terdapat beberapa algoritma penjadwalan CPU seperti dijelaskan pada sub bab di bawah ini.

55 4.3.1 First-Come First-Served Scheduling (FCFS) Proses yang pertama kali meminta jatah waktu untuk menggunakan CPU akan dilayani terlebih dahulu. Pada skema ini, proses yang meminta CPU pertama kali akan dialokasikan ke CPU pertama kali. Misalnya terdapat tiga proses yang dapat dengan urutan P 1, P 2, dan P 3 dengan waktu CPU-burst dalam milidetik yang diberikan sebagai berikut : Process Burst Time P 1 24 P 2 3 P 3 3 Gant Chart dengan penjadwalan FCFS adalah sebagai berikut : P 1 P 2 P 3 0 24 27 30 Waktu tunggu untuk P 1 adalah 0, P 2 adalah 24 dan P 3 adalah 27 sehingga rata-rata waktu tunggu adalah (0 + 24 + 27)/3 = 17 milidetik. Sedangkan apabila proses datang dengan urutan P 2, P 3, dan P 1, hasil penjadwalan CPU dapat dilihat pada gant chart berikut : P 2 P 3 P 1 0 3 6 30 Waktu tunggu sekarang untuk P 1 adalah 6, P 2 adalah 0 dan P 3 adalah 3 sehingga ratarata waktu tunggu adalah (6 + 0 + 3)/3 = 3 milidetik. Rata-rata waktu tunggu kasus ini jauh lebih baik dibandingkan dengan kasus sebelumnya. Pada penjadwalan CPU dimungkinkan terjadi Convoy effect apabila proses yang pendek berada pada proses yang panjang. Algoritma FCFS termasuk non-preemptive. karena, 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.

56 4.3.2 Shortest Job First Scheduler (SJF) Pada penjadwalan SJF, proses yang memiliki CPU burst paling kecil dilayani terlebih dahulu. Terdapat dua skema : 1. Non preemptive, bila CPU diberikan pada proses, maka tidak bisa ditunda sampai CPU burst selesai. 2. Preemptive, jika proses baru datang dengan panjang CPU burst lebih pendek dari sisa waktu proses yang saat itu sedang dieksekusi, proses ini ditunda dan diganti dengan proses baru. Skema ini disebut dengan Shortest-Remaining- Time-First (SRTF). SJF adalah algoritma penjadwalan yang optimal dengan rata-rata waktu tunggu yang minimal. Misalnya terdapat empat proses dengan panjang CPU burst dalam milidetik. Process Arrival Time Burst Time P 1 0.0 7 P 2 2.0 4 P 3 4.0 1 P 4 5.0 4 Penjadwalan proses dengan algoritma SJF (non-preemptive) dapat dilihat pada gant chart berikut : P 1 P 3 P 2 P 4 0 3 7 8 12 16 Waktu tunggu untuk P 1 adalah 0, P 2 adalah 26, P 3 adalah 3 dan P 4 adalah 7 sehingga rata-rata waktu tunggu adalah (0 + 6 + 3 + 7)/4 = 4 milidetik. Sedangkan Penjadwalan proses dengan algoritma SRTF (preemptive) dapat dilihat pada gant chart berikut : P 1 P 2 P 3 P 2 P 4 P 1 0 2 4 5 7 11 16 Waktu tunggu untuk P 1 adalah 9, P 2 adalah 1, P 3 adalah 0 dan P 4 adalah 4 sehingga ratarata waktu tunggu adalah (9 + 1 + 0 + 4)/4 = 3 milidetik.

57 Meskipun algoritma ini optimal, namun pada kenyataannya sulit untuk diimplementasikan karena sulit untuk mengetahui panjang CPU burst berikutnya. Namun nilai ini dapat diprediksi. CPU burst berikutnya biasanya diprediksi sebagai suatu rata-rata eksponensial yang ditentukan dari CPU burst sebelumnya atau Exponential Average. τ τ n = α α n t + (1 ) + 1 0 (4.1) dengan: τ n+ 1 τ 0 τ n = panjang CPU burst yang diperkirakan = panjang CPU burst sebelumnya = panjang CPU burst yang ke-n (yang sedang berlangsung) α = ukuran pembanding antara τ n+ 1 dengan τ n Grafik hasil prediksi CPU burst dapat dilihat pada Gambar 4-3. (0 sampai 1) Gambar 4-3 : Prediksi panjang CPU burst berikutnya

58 Sebagai contoh, jika α = 0,5, dan: CPU burst ( τ ) = 6 4 6 4 13 13 13... n τ n = 10 8 6 6 5 9 11 12... Pada awalnya τ 0 = 6 dan τ n = 10, sehingga : τ 2 = 0,5 * 6 + (1-0,5) * 10 = 8 Nilai yang dapat digunakan untuk mencari τ 3 τ 3 = 0,5 * 4 + (1-0,5) * 8 = 6 4.3.3 Priority Scheduling Algoritma SJF adalah suatu kasus khusus dari penjadwalan berprioritas. Tiaptiap proses dilengkapi dengan nomor prioritas (integer). CPU dialokasikan untuk proses yang memiliki prioritas paling tinggi (nilai integer terkecil biasanya merupakan prioritas terbesar). Jika beberapa proses memiliki prioritas yang sama, maka akan digunakan algoritma FCFS. Penjadwalan berprioritas terdiri dari dua skema yaitu non preemptive dan preemptive. Jika ada proses P 1 yang datang pada saat P 0 sedang berjalan, maka akan dilihat prioritas P 1. Seandainya prioritas P 1 lebih besar dibanding dengan prioritas P 0, maka pada non-preemptive, algoritma tetap akan menyelesaikan P 0 sampai habis CPU burst-nya, dan meletakkan P 1 pada posisi head queue. Sedangkan pada preemptive, P 0 akan dihentikan dulu, dan CPU ganti dialokasikan untuk P 1. Misalnya terdapat lima proses P 1, P 2, P 3, P 4 dan P 5 yang datang secara berurutan dengan CPU burst dalam milidetik. Process Burst Time Priority P 1 10 3 P 2 1 1 P 3 2 3 P 4 1 4 P 5 5 2

59 Penjadwalan proses dengan algoritma priority dapat dilihat pada gant chart berikut : P 2 P 5 P 1 P 3 P 4 0 6 1 16 18 19 Waktu tunggu untuk P 1 adalah 6, P 2 adalah 0, P 3 adalah 16, P 4 adalah 18 dan P 5 adalah 1 sehingga rata-rata waktu tunggu adalah (6 + 0 +16 + 18 + 1)/5 = 8.2 milidetik. 4.3.4 Round-Robin Scheduling Konsep dasar dari algoritma ini adalah dengan menggunakan time-sharing. Pada dasarnya algoritma ini sama dengan FCFS, hanya saja bersifat preemptive. Setiap proses mendapatkan waktu CPU yang disebut dengan waktu quantum (quantum time) untuk membatasi waktu proses, biasanya 1-100 milidetik. Setelah waktu habis, proses ditunda dan ditambahkan pada ready queue. Jika suatu proses memiliki CPU burst lebih kecil dibandingkan dengan waktu quantum, maka proses tersebut akan melepaskan CPU jika telah selesai bekerja, sehingga CPU dapat segera digunakan oleh proses selanjutnya. Sebaliknya, jika suatu proses memiliki CPU burst yang lebih besar dibandingkan dengan waktu quantum, maka proses tersebut akan dihentikan sementara jika sudah mencapai waktu quantum, dan selanjutnya mengantri kembali pada posisi ekor dari ready queue, CPU kemudian menjalankan proses berikutnya. Jika terdapat n proses pada ready queue dan waktu quantum q, maka setiap proses mendapatkan 1/n dari waktu CPU paling banyak q unit waktu pada sekali penjadwalan CPU. Tidak ada proses yang menunggu lebih dari (n-1)q unit waktu. Performansi algoritma round robin dapat dijelaskan sebagai berikut, jika q besar, maka yang digunakan adalah algoritma FIFO, tetapi jika q kecil maka sering terjadi context switch. Misalkan ada 3 proses: P 1, P 2, dan P 3 yang meminta pelayanan CPU dengan quantum-time sebesar 4 milidetik. Process Burst Time P 1 24 P 2 3 P 3 3

60 Penjadwalan proses dengan algoritma round robin dapat dilihat pada gant chart berikut : P 1 P 2 P 3 P 1 P 1 P 1 P 1 P 1 0 4 7 10 14 18 22 26 30 Waktu tunggu untuk P 1 adalah 6, P 2 adalah 4, dan P 3 adalah 7 sehingga rata-rata waktu tunggu adalah (6 + 4 + 7)/3 = 5.66 milidetik. Algoritma Round-Robin ini di satu sisi memiliki keuntungan, yaitu adanya keseragaman waktu. Namun di sisi lain, algoritma ini akan terlalu sering melakukan switching seperti yang terlihat pada Gambar 4-4. Semakin besar quantum-timenya maka switching yang terjadi akan semakin sedikit. Gambar 4-4 : Menunjukkan waktu kuantum yang lebih kecil meningkatkan context switch Waktu turnaround juga tergantung ukuran waktu quantum. Seperti pada Gambar 4-5, rata-rata waktu turnaround tidak meningkat bila waktu quantum dinaikkan. Secara umum, rata-rata waktu turnaround dapat ditingkatkan jika banyak proses menyelesaikan CPU burst berikutnya sebagai satu waktu quantum. Sebagai contoh, terdapat tiga proses masing-masing 10 unit waktu dan waktu quantum 1 unit waktu, rata-rata waktu turnaround adalah 29. Jika waktu quantum 10, sebaliknya, rata-rata waktu turnaround turun menjadi 20.

61 Gambar 4-5 : Menunjukkan waktu turnaround berbeda pada waktu quantum yang berbeda LATIHAN SOAL : 1. Sebutkan perbedaan antara penjadwalan preemptive dan nonpreemptive. 2. Terdapat 5 job yang datang hampir pada saat yang bersamaan. Estimasi waktu eksekusi (burst time) masing-masing 10, 6, 2, 4 dan 8 menit dengan prioritas masing-masing 3, 5, 2, 1 dan 4, dimana 5 merupakan prioritas tertinggi. Tentukan rata-rata waktu turnaround untuk penjadwalan CPU dengan menggunakan algoritma a. Round Robin (quantum time = 2) b. Priority c. Shortest job first 3. Diketahui proses berikut : Proses Arrival Time Burst Time P1 0.0 8 P2 0.4 4

62 P3 1.0 1 Tentukan rata-rata waktu tunggu dan rata-rata waktu turnaround dengan algoritma penjadwalan a. FCFS b. SJF non preemptive c. SJF preemptive / SRTF d. Round Robin dengan quantum time = 1 4. Suatu algoritma penjadwalan CPU kemungkinan melibatkan algoritma yang lain, contohnya algoritma FCFS adalah algoritma RR dengan waktu quantum tertentu. Apakah ada hubungan antara pasangan algoritma berikut? a. Priority dan SJF b. Priority dan FCFS c. RR dan SJF