Siklus Burst CPU – MK
Bab 14. Algoritma Penjadwalan
14.1. Pendahuluan
Penjadwalan berkaitan dengan permasalahan memutuskan proses mana yang akan dilaksanakan dalam suatu sistem. Proses yang belum mendapat jatah alokasi dari CPU akan mengantri di ready queue. Algoritma penjadwalan berfungsi untuk menentukan proses manakah yang ada di ready queue yang akan dieksekusi oleh CPU. Bagian berikut ini akan memberikan ilustrasi beberapa algoritma penjadwalan.14.2. FCFS First Come First Served
Algoritma ini merupakan algoritma penjadwalan yang paling sederhana yang digunakan CPU. Dengan menggunakan algoritma ini setiap proses yang berada pada status ready dimasukkan kedalam FIFO queue atau antrian dengan prinsip first in first out, sesuai dengan waktu kedatangannya. Proses yang tiba terlebih dahulu yang akan dieksekusi. Contoh Ada tiga buah proses yang datang secara bersamaan yaitu pada 0 ms, P1 memiliki burst time 24 ms, P2 memiliki burst time 3 ms, dan P3 memiliki burst time 3 ms. Hitunglah waiting time rata-rata dan turnaround time burst time + waiting time dari ketiga proses tersebut dengan menggunakan algoritma FCFS. Waiting time untuk P1 adalah 0 ms P1 tidak perlu menunggu, sedangkan untuk P2 adalah sebesar 24 ms menunggu P1 selesai, dan untuk P3 sebesar 27 ms menunggu P1 dan P2 selesai. Gambar 14.1. Gantt Chart Kedatangan Proses Urutan kedatangan adalah P1, P2 , P3; gantt chart untuk urutan ini adalah: Waiting time rata-ratanya adalah sebesar0+24+273 = 17ms. Turnaround time untuk P1 sebesar 24 ms, sedangkan untuk P2 sebesar 27 ms dihitung dari awal kedatangan P2 hingga selesai dieksekusi, untuk P3 sebesar 30 ms. Turnaround time rata-rata untuk ketiga proses tersebut adalah 24+27+303 = 27 ms. Kelemahan dari algoritma ini: 1. Waiting time rata-ratanya cukup lama. 2. Terjadinya convoy effect, yaitu proses-proses menunggu lama untuk menunggu 1 proses besar yang sedang dieksekusi oleh CPU. Algoritma ini juga menerapkan konsep non-preemptive, yaitu setiap proses yang sedang dieksekusi oleh CPU tidak dapat di-interrupt oleh proses yang lain. Misalkan proses dibalik sehingga urutan kedatangan adalah P3, P2, P1. Waiting time adalah P1=6; P2=3; P3=0. Average waiting time: 6+3+03=3. 95 Gambar 14.2. Gantt Chart Kedatangan Proses Sesudah Urutan Kedatangan Dibalik14.3. SJF Shortest Job First
Pada algoritma ini setiap proses yang ada di ready queue akan dieksekusi berdasarkan burst time terkecil. Hal ini mengakibatkan waiting time yang pendek untuk setiap proses dan karena hal tersebut maka waiting time rata-ratanya juga menjadi pendek, sehingga dapat dikatakan bahwa algoritma ini adalah algoritma yang optimal. Tabel 14.1. Contoh Shortest Job First Process Arrival Time Burst Time P1 0.0 7 P2 2.0 4 P3 4.0 1 P4 5.0 4 Contoh: Ada 4 buah proses yang datang berurutan yaitu P1 dengan arrival time pada 0.0 ms dan burst time 7 ms, P2 dengan arrival time pada 2.0 ms dan burst time 4 ms, P3 dengan arrival time pada 4.0 ms dan burst time 1 ms, P4 dengan arrival time pada 5.0 ms dan burst time 4 ms. Hitunglah waiting time rata-rata dan turnaround time dari keempat proses tersebut dengan mengunakan algoritma SJF. Average waiting time rata-rata untuk ketiga proses tersebut adalah sebesar 0 +6+3+74=4 ms. Gambar 14.3. Shortest Job First Non-Preemptive Average waiting time rata-rata untuk ketiga prses tersebut adalah sebesar 9+1+0+24=3 ms. Ada beberapa kekurangan dari algoritma ini yaitu: 1. Susahnya untuk memprediksi burst time proses yang akan dieksekusi selanjutnya. 2. Proses yang mempunyai burst time yang besar akan memiliki waiting time yang besar pula 96Parts
» Kumpulan Makalah | Blogger Lampung Tengah SO
» Konsep Dasar Perangkat Komputer
» Pendahuluan Hari Gini Belajar SO?
» Mengapa Mempelajari Sistem Operasi?
» Definisi Sementara Hari Gini Belajar SO?
» Sejarah Perkembangan Hari Gini Belajar SO?
» Bahan Pembahasan Tantangan Prasyarat Sasaran Pembelajaran Rangkuman
» Pendahuluan HaKI Perangkat Lunak
» Perangkat Lunak Bebas HaKI Perangkat Lunak
» Aneka Ragam HaKI HaKI Perangkat Lunak
» Lisensi Perangkat Lunak HaKI Perangkat Lunak
» Copyleft HaKI Perangkat Lunak
» Ilustrasi Lisensi Tantangan Rangkuman
» Pendahuluan Organisasi Sistem Komputer
» Prosesor Organisasi Sistem Komputer
» Penyimpan Data Organisasi Sistem Komputer
» MasukanKeluaran Organisasi Sistem Komputer
» Rangkuman Organisasi Sistem Komputer
» Sistem Operasi Java Bahasa Java
» Dasar Pemrograman Bahasa Java
» Atribut Protected Bahasa Java
» Konstruktor Metode Bahasa Java
» Inheritance Abstract Package Interface
» Pendahuluan Komponen Sistem Operasi
» Kegiatan Sistem Operasi Komponen Sistem Operasi
» Manajemen Proses Komponen Sistem Operasi
» Manajemen Memori Utama Komponen Sistem Operasi
» Harganya murah. Perbandingan harga yang dibayar oleh pengguna per byte data jauh lebih
» Menyimpan berkas secara permanen. Data atau berkas diletakkan secara fisik pada piringan
» Menyimpan program yang belum dieksekusi prosesor. Jika sebuah program ingin dieksekusi
» Pendahuluan Layanan dan Antarmuka
» Jenis Layanan Layanan dan Antarmuka
» Antarmuka Layanan dan Antarmuka
» System Calls API Application Program Interface
» Jenis System Calls Layanan dan Antarmuka
» System Programs Layanan dan Antarmuka
» Application Programs Layanan dan Antarmuka
» Rangkuman Layanan dan Antarmuka
» Pendahuluan Struktur Sistem Operasi
» Struktur Sederhana Struktur Sistem Operasi
» Struktur Berlapis Struktur Sistem Operasi
» Mikro Kernel Struktur Sistem Operasi
» Portability. Pada kernel mikro, semua atau sebagian besar kode yang prosesor-spesifik berada di
» Reliability. Semakin besar suatu software, maka tentulah semakin sulit untuk menjamin
» Support for object-oriendted OS. Model kernel mikro sangat sesuai untuk mengembangkan
» Proses Boot Struktur Sistem Operasi
» Kompilasi Kernel Struktur Sistem Operasi
» Mengekstrak kernel. Source code kernel Anda yang lama bisa dilihat di direktori usrsrclinux.
» Buat symbolic link. Struktur Sistem Operasi
» Konfigurasi kernel. Sebelum proses kompilasi, anda memiliki 2 pilihan, yaitu membuat
» Kompilasi. Jalankan perintah make bzImag Proses kompilasi kernel bisa memakan waktu
» Komputer Meja Struktur Sistem Operasi
» Sistem Prosesor Jamak Struktur Sistem Operasi
» Lebih ekonomis. Daripada sistem dengan banyak prosesor tunggal, karena bisa berbagi memori,
» Peningkatan kehandalan. Jika pekerjaan terbagi rata, maka kegagalan salah satu prosesor bisa
» Availability. Karena semua prosesor menjalankan tugas yang sama, maka kegagalan pada salah
» Incremental growth. Performa bisa ditingkatkan dengan menambah prosesor lagi.
» Sistem Terdistribusi dan Terkluster
» Computation speedup. Jika suatu proses komputasi bisa dipecah-pecah menjadi sejumlah bagian
» Reliability. Jika satu komputer mengalami kegagalan, maka secara keseluruhan sistem masih
» Communication. Karena satu komputer terhubung dengan komputer-komputer laiinya, sangat
» Incremental scalability. Kluster diatur sedemikian rupa sehingga bisa dupgrade sedikit demi
» High availability. Karena setiap komputer yang tergabung adalah standalone mandiri, maka
» Superior priceperformance. Dengan konfigurasi yang tepat, dimungkinkan untuk membangun
» Sistem Waktu Nyata Struktur Sistem Operasi
» Aspek Lainnya Struktur Sistem Operasi
» Rangkuman Struktur Sistem Operasi
» Pendahuluan Virtual Machine VM
» Virtualisasi Penuh Virtual Machine VM
» VMware Xen VMM Virtual Machine VM
» .NET Framework Virtual Machine VM
» Efisien. Kemudahan pada saat proses pembuatan aplikasi, akan berimplikasi terhadap efisiensi
» Konsisten. Kemudahan-kemudahan pada saat proses pembuatan aplikasi, juga bisa berimplikasi
» Microkernel. Kumpulan Makalah | Blogger Lampung Tengah SO
» Hybrid modifikasi dari microkernel. Kernel yang mirip microkernel, tetapi ia juga
» Credentials. Setiap proses harus memiliki hubungan antara user ID dengan group ID yang
» Pembentukan Thread Thread Java
» Penggabungan Thread Thread Java
» Pembatalan Thread Thread Java
» Penjadwalan Preemptive Penjadwalan Non Preemptive
» Context switching. Kumpulan Makalah | Blogger Lampung Tengah SO
» Throughput. Salah satu ukuran kerja adalah banyaknya proses yang diselesaikan per satuan
» Turnaround Time. Dari sudut pandang proses tertentu, kriteria yang penting adalah berapa lama
» Waiting Time. Algoritma penjadwalan CPU tidak mempengaruhi waktu untuk melaksanakan
» Response Time. Di sistem yang interaktif, turnaround time mungkin bukan waktu yang terbaik
» FCFS First Come First Served
» Pendahuluan Penjadwalan Prosesor Jamak
» Penjadwalan MasterSlave Penjadwalan Prosesor Jamak
» Penjadwalan SMP Affinity dan Load Ballancing
» Symetric Multithreading Penjadwalan Prosesor Jamak
» Multicore Penjadwalan Prosesor Jamak
» Rangkuman Penjadwalan Prosesor Jamak
» Pendahuluan Deterministic Modelling Evaluasi dan Ilustrasi
» Queueing Modelling Evaluasi dan Ilustrasi
» Simulasi Implementasi Evaluasi dan Ilustrasi
» Ilustrasi: Linux Evaluasi dan Ilustrasi
» Ilustrasi: Solaris Evaluasi dan Ilustrasi
» System SYS. Solaris menggunakan system class untuk menjalankan kernel proses, seperti
» Time Sharing TS. Time sharing class merupakan default class untuk proses dan kernel thread
» Interactive IA. Kelas Interaktif menggunakan aturan yang sama dengan aturan dengan kelas
» Fixed Priority FX. Thread di kelas fixed priority memiliki range prioritas 0-59 yang sama
» Komunikasi Antar Proses Konsep Interaksi
» Komunikasi tidak langsung. Berbeda dengan komunikasi langsung, jenis komunikasi ini
» Deadlock. Deadlock adalah suatu kondisi dimana dua proses atau lebih saling menunggu proses
» Pendahuluan Race Condition Critical Section
» Prasyarat Solusi Critical Section
» Terjadi kemajuan progress . Jika tidak ada proses yang sedang menjalankan critical
» Ada batas waktu tunggu bounded waiting . Jika seandainya ada proses yang sedang
» Interupsi. Interupsi adalah suatu masalah bila mengandung critical section-nya sendiri. Timer
» Page Fault. Page faults adalah suatu masalah yang potensial; jika sebuah kernel routine
» Kernel code memanggil fungsi penjadwalan sendiri. setiap waktu banyak proses yang berjalan
» Mutual Exclusion. 2. Terjadi kemajuan progress .
» Ada batas waktu tunggu bounded waiting.
» Pendahuluan TestAndSet Perangkat Sinkronisasi
» Counting semaphore. Semafor ini memiliki nilai 0, 1, serta integer lainnya. Banyak sistem
» Mutual Exclusion. Sesuai dengan prinsip mutual exclusion, jika suatu thread sedang berada
» Cooperation. Cooperation berarti membantu beberapa thread untuk bekerjasama mencapai
» Model Sistem Transaksi Atomik
» Pemulihan Berbasis Log Transaksi Atomik
» Checkpoint Serialisasi Transaksi Atomik
» Protokol Penguncian Transaksi Atomik
» Exclusive. Jika sebuah transaksi Ti melakukan exclusive-mode lock pada data Q, maka transaksi
» Critical Section Sinkronisasi Linux
» Penyebab Konkurensi Kernel Integer Atomik
» Spin Locks Sinkronisasi Linux
» Pengabaian. Maksud dari pengabaian di sini adalah sistem mengabaikan terjadinya deadlock
» Pencegahan. Penanganan ini dengan cara mencegah terjadinya salah satu karakteristik
» Penghindaran. Menghindari keadaan deadlock. Bagian yang perlu diperhatikan oleh pembaca
» Pendeteksian dan Pemulihan. Pada sistem yang sedang berada pada kondisi deadlock,
» Mutual Exclusion. Kondisi mutual exclusion pada sumber daya adalah sesuatu yang wajar
» Hold and Wait. Untuk kondisi yang kedua, sistem perlu memastikan bahwa setiap kali proses
» No Preemption. Pencegahan kondisi ini dengan cara membolehkan terjadinya preemption.
» Proses . Kumpulan Makalah | Blogger Lampung Tengah SO
» Pendahuluan Penggunaan Semafor Bounded-Buffer
» Pendahuluan Penggunaan Semafor Sinkronisasi Dengan Semafor
» Program Sinkronisasi Dengan Semafor
Show more