SISTEM OPERASI PENJADWALAN PROSES

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

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

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

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

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

Penjadwalan CPU. Badrus Zaman

Overview Penjadwalan (1)

PENJADWALAN PROSES. Pendahuluan

Bab 5: Penjadwalan CPU. Konsep Dasar

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

BAB 4 PENJADWALAN CPU 55

Deskripsi Penjadwalan Proses

Pertemuan V Penjadwalan Proses

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

Sistem Operasi Penjadwalan Proses

Konsed Dasar Penjadualan Proses

DESKRIPSI PENJADWALAN PROSES

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

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

Penjadualan Process Bagian 1

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

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

Penjadualan Process Bagian 2

Praktikum 9. Penjadwalan CPU 1

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

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

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

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

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

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

Simulasi Algoritma Penjadualan Proses

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

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

MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN PROSES)

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

Bab 13. Konsep Penjadwalan

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

PENJADWALAN PROSES AGUS PAMUJI. SISTEM OPERASI - Penjadwalan Proses

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

Mata Kuliah : Sistem Operasi Kelas : Teknik Informatika 4

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

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

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

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

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

MODUL PRAKTIKUM SISTEM OPERASI PRAKTIKUM IV Penjadwalan Proses I

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

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

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

Understanding Operating Systems Fifth Edition. Chapter 4 Processor Management

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

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

Bab 3.Proses dan Penjadualan

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

Pengaturan Proses Dalam system operasi. proses

Algoritma Penjadwalan 2

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

BAB III TEKNIK PENJADWALAN PROSESOR

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

Reza Chandra Universitas Gunadarma PTA 2010/2011

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

Sekolah Tinggi Teknologi Adisutjipto Yogyakarta

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

Sistem Operasi. Silabus :

Sistem Operasi PENGATURAN PROSES

Dukungan Sistem Operasi :

BAB V Penjadwalan CPU

PENJADWALAN PROSES. Tiga Level Penjadwalan

MANAJEMEN MEMORI. Manajemen Memori 1

SISTEM OPERASI. Sri Kusumadewi

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

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

Algoritma Schedulling

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

Processes. Processes. SISTIM OPERASI (Operating System) IKI-20230

BAB 16. Evaluasi dan Ilustrasi

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

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

DASAR KOMPUTER. Dukungan Sistem Operasi

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

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Strategi Pembelajaran

SISTEM OPERASI ( DITINJAU DARI SEGI PROSES) Seperti diketahui bahwa sistem operasi, terdiri dari sekumpulan

METODE PENJADWALAN PROSES AGUS PAMUJI. SISTEM OPERASI Metode Penjadwalan Proses

KONSEP PROSES STATUS PROSES

B. Jawablah dengan ringkas dan lengkap. (Jawaban tidak lebih dari 10 kalimat) (Nilai 40) Solusi: kata kunci dalam huruf miring.

7. Pengaturan Proses

Bab 3: Proses-Proses. Konsep Proses

Penerapan Algoritma Greedy dalam Algoritma Penjadwalan Prosesor Tunggal Shortest Job First

Proses dan Penjadwalan

I. Struktur Sistem Operasi

Bab 3: Proses-Proses. Konsep Proses

Tujuan Pembelajaran. Memahami proses swapping Memahami proses alokasi memori berurutan (Contiguous Memori Allocation)

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

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

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

Sistem Operasi. Teknologi Informasi

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

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

Transkripsi:

SISTEM OPERASI PENJADWALAN PROSES ruliriki@gmail.com http://blogriki.wordpress.com Pembahasan Konsep Dasar Kriteria Scheduling Algoritma Scheduling 1

CPU Scheduling Merupakan basis dari OS yang multiprogramming, sementara multiprogramming untuk meningkatkan produktifitas sistem Topik pembahasan : Konsep dasar CPU Scheduling Algoritma-algoritma CPU Scheduling CPU Scheduling 2

Konsep Dasar CPU Scheduling Dalam multiprogramming Suatu proses dieksekusi s.d proses tunggu untuk I/O, setelah itu CPU diberikan ke proses lain, dst. Membentuk siklus yang terdiri atas Sequence eksekusi CPU (CPU burst time) Sequence dalam service I/O (I/O burst time) Pola distribusi CPU burst time adalah eksponensial atau bahkan hipereksponensial Contoh CPU - I/O Burst scanf n, a, b /* I/O wait */ for (i=1; i<=n; i++) /* CPU burst */ x = x + a*b; printf x /* I/O wait */ for (i=1; i<=n; i++) /* CPU burst */ for (j=1; j<=n; j++) x = x + a*b; printf x /* I/O wait */ 3

Pola Distribusi CPU Burst Time Keputusan Scheduling Scheduler memilih dari antara proses-proses dalam memori yang ready dan mengalokasi CPU untuk proses yang terpilih Terjadinya keputusan scheduler saat : (1) status proses berubah dari run ke wait (2) status proses berubah dari run ke ready (3) status proses berubah dari wait ke ready (4) status proses menjadi terminate 4

Non-preemptive Scheduler dalam situasi (1) dan (4) disebut non-preemptive Sekali CPU ditetapkan untuk suatu proses maka proses tidak akan melepaskannya hingga terminate atau untuk melakukan I/O Untuk hardware tertentu skema ini merupakan satu-satunya pilihan (misalnya tidak ada timer) Digunakan oleh MS Windows Status Proses - Scheduler Preemptive Non-preemptive 5

Preemptive Scheduler dalam situasi (2) dan (3) disebut preemptive CPU dapat dialihkan ke proses lain oleh OS misalnya karena interrupt, timer, dsb. Perlu penanganan masalah data sharing antara sebelum dan sesudah Perlu blocking CPU saat struktur data kernel berada pada status yang inkonsisten Dispatcher Modul yang memberikan kontrol CPU bagi proses yang terpilih untuk mendapat giliran meliputi : Context switching Set operasi sistem ke user-mode Jump ke lokasi untuk meneruskan proses yang mendapat giliran dan run 6

Dispatcher Dispatcher 7

Dispatch Latency Waktu yang diperlukan oleh dispatcher untuk menghentikan proses yang sedang running hingga proses yang didispatch berikutnya running CPU Scheduling Algorithms FCFS Queue SJF Queue Priority Queue Round Robin Multi-Level Queue Multi-Level Feedback Queue 8

Kriteria Scheduling (1) CPU utilization : persentase jumlah waktu CPU sibuk dari total waktu Kriteria Scheduling (1) Throughput : Jumlah proses yang selesai dieksekusi per satuan waktu 9

Kriteria Scheduling (1) Turnaround time : selang waktu sejak submit (mulai) proses hingga terminate (selesai) Kriteria Scheduling (2) Waiting time : jumlah waktu suatu proses menunggu dalam ready queue Response time : panjang waktu sejak submit hingga respons pertama muncul Predictability respons : variansi (ketersebaran) waktu respons Fairness : Pembagian waktu penggunaan CPU secara adil 10

Obyektif Pemilihan algoritma untuk optimisasi : Memaksimalkan CPU utilization Memaksimalkan throughput Meminimumkan turnaround time Meminimumkan waiting time Meminimumkan response time Meminimumkan response time variance Mendapatkan pembagian yang Fairness First Come, First-Served (FCFS) Proses yang merequest CPU lebih dulu adalah yang dilayani terlebih dahulu Jika suatu proses running menjadi ready maka ia antri lagi dibelakang Performance : waktu tunggu rata-rata lama serta akan bervariasi jika burst time amat bervariasi 11

First Come, First-Served (FCFS) (1) (2) Contoh FCFS P1 : 24 ms, P2 : 3 ms, P3 : 3 ms. Datang dalam urutan P1, P2, P3 Gantt Chart P 1 P 2 P 3 0 24 27 30 Waktu tunggu : P1 = 0 ms, P2 = 24 ms, dan P3 = 27 ms Average waiting time = (0 + 24 + 27)/3 = 17 ms Jika urutannya : P2, P3, P1 maka : Gantt Chart P 2 P 3 P 1 0 3 6 30 Average waiting time = (6 + 0 + 3)/3 = 3 12

Masalah FCFS : Convoy Effect Kondisi terdapat suatu proses yang memiliki CPU-burst time besar (CPU bound) dan sejumlah proses lain dengan I/O burst time yang besar (I/O bound) Proses CPU bound sedang hold CPU proses I/O bound menunggu, I/O device idle Proses I/O bound sedang melakukan I/O, proses CPU bound menunggu, CPU idle Shortest Job First (SJF) Tepatnya shortest CPU burst-time first Bila CPU burst time tiap proses diketahui sebelumnya maka proses dengan CPU burst time terkecil yang dilayani terlebih dahulu Preemptive scheme : proses running P1 bisa dihentikan di tengah saat muncul proses P2 yang lebih pendek Nonpreemptive scheme : proses running akan terus sampai terminate atau I/O wait 13

Contoh SJF - Non-Preemptive 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 SJF (non-preemptive) P 1 P 3 P 2 P 4 0 3 7 8 12 16 Average waiting time = (0 + 6 + 3 + 7)/4 = 4 Contoh SJF - Preemptive 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 SJF (preemptive) P 1 P 2 P 3 P 2 P 4 P 1 0 2 4 5 7 11 16 Average waiting time = (9 + 1 + 0 +2)/4 = 3 14

Masalah SJF : informasi CPU burst time Algoritma memberikan performance yang optimal, tapi bagaimana caranya mendapatkan informasi CPU burst time? Untuk long-term schedule dalam batch system, dapat digunakan panjang time limit yang dispesifikasikan user pada saat submit job. Untuk short-term scheduling tidak mungkin. Tidak ada cara untuk mengetahui secara pasti CPU burst berikutnya, hanya dapat diaproksimasi secara stokastik (prediksi). Priority Scheduling Proses dengan prioritas lebih tinggi akan dilayani lebih dulu Preemptive scheme : proses running P1 bisa dihentikan di tengah saat muncul proses P2 yang lebih tinggi prioritasnya Non-preemptive scheme : proses yang running akan diteruskan sampai terminate atau I/O wait 15

Contoh Priority Scheduling Process Burst Time Priority P 1 8 2 P 2 1 1 P 3 1 3 P 1 P 2 P 3 0 1 9 10 Average waiting time = (1 + 0 + 9)/3 = 3.3 Internal Pendefinisian Prioritas Bila mungkin, ditentukan berdasarkan indikator terukur atau estimasinya Time limit, memori requirement, jumlah file open, ratio I/O burst terhadap CPU burst External Ditentukan berdasarkan kriteria yang eksternal bagi OS Tingkat kepentingan proses, charging, superuser (root), dll 16

Masalah Priority Scheduling Indefinite blocking (starvation) pada proses-proses berprioritas rendah terutama jika sistemnya heavilyloaded Rumor : ketika IBM 7093 di MIT dishutdown tahun 1973, ditemukan adanya proses-proses low priority yang di-submit tahun 1967 dalam status wait Solusi dari Starvation Solusi : aging (peningkatan prioritas pada proses-proses yang sudah menunggu cukup lama) Misalnya setiap 15 menit dinaikkan 1 tingkat 17

Round Robin (RR) Masing-masing proses diberikan interval waktu tertentu yang disebut time quantum Mengikuti FCFS & setelah kuantum waktu tertentu proses yang running di-preempt & kembali ke ready queue Mekanisme kuantum waktu menggunakan timer, jika proses sudah terminate atau melakukan I/O wait sementara timer belum habis, timer di-reset untuk giliran proses berikutnya Contoh : RR Contoh : dengan time quantum = 20 ms Process Burst Time P 1 53 P 2 17 P 3 68 P 4 24 Gantt chart : P 1 P 2 P 3 P 4 P 1 P 3 P 4 P 1 P 3 P 3 0 20 37 57 77 97 117 121 134 154 162 Khususnya, rata-rata turn around lebih tinggi daripada SJF, tetapi lebih baik untuk respons. 18

Masalah RR : Penentuan Kuantum Waktu Menentukan performance sistem : Jika terlalu besar sistem menjadi FCFS murni Jika terlalu kecil terjadi processor sharing Pada n proses yang running pada prosesor dengan kecepatan K, bagi setiap proses terasa masing-masing memiliki prosesor sendiri dengan kecepatan K/n (misalnya respons interaksi jadi lambat) Jika terlalu kecil overhead untuk context switching jadi besar Time Quantum dan Context Switch Time 19

Multi-Level Queue (MLQ) Proses diklasifikasi ke dalam sejumlah kelas & masing-masing kelas memiliki antrian sendiri dengan aturan berbeda Contoh kelas-kelas dalam beberapa OS Proses sistem Proses interaktif Proses editing interaktif Proses batch Proses student Diagram Contoh MLQ 20

MLQ pada Uniprocessor Kelas-kelas perlu diantrikan juga Dengan prioritas berbeda secara fixed dan preemptive; proses dari kelas yang lebih rendah harus menunggu proses dari kelas yang lebih tinggi selesai Dengan menerapkan time sharing dengan kuota waktu yang berbeda (misalnya foreground 80% dan background 20%) Multi-Level Feedback Queue MLQ overhead rendah tetapi tidak fleksibel MLFQ memungkinkan perpindahan antara level antrian untuk meng-aproksimasi SJF : Proses mula-mula masuk ke level pertama, jika dalam batas waktu proses belum berakhir maka ia di-preempt dan dimasukkan ke antrian level berikutnya yang prioritasnya lebih rendah Proses yang menunggu terlalu lama bisa naik ke antrian ber-prioritas lebih tinggi 21

Contoh MLFQ Contoh MLFQ dengan 3 antrian : Q0, Q1, dan Q2. Kuantum Q0 = 8 ms, kuantum Q1 = 16 ms dan Q2 menggunakan skema FCFS Awalnya proses P masuk ke Q0, apabila saat running belum selesai saat timer habis (8 ms) maka P di-preempt dan dipindahkan ke Q1 Jika Q0 sudah kosong, Q1 baru dilayani; saat P belum selesai juga saat timer habis (16 ms) maka P masuk dalam skema FCFS Q3 Diagram Contoh MLFQ 22

Parameter Menentukan MLFQ Jumlah Queue (level) Algoritma scheduling untuk tiap queue Metode penentuan kapan upgrade prioritas proses ke queue yang lebih tinggi Metode penentuan kapan menurunkan prioritas proses ke queue yang lebih rendah Metode penentuan queue mana yang dimasuki proses 23