• Tidak ada hasil yang ditemukan

Modul 5 Penjadwalan CPU

N/A
N/A
Protected

Academic year: 2018

Membagikan "Modul 5 Penjadwalan CPU"

Copied!
57
0
0

Teks penuh

I. Pendahuluan: Relevansi Penjadwalan CPU dalam Pendidikan

Modul 5: Penjadwalan CPU dirancang untuk memberikan pemahaman komprehensif tentang manajemen prosesor dalam sistem operasi. Materi ini sangat relevan dengan tujuan pembelajaran tingkat perguruan tinggi, khususnya bagi mahasiswa ilmu komputer dan teknik informatika. Pemahaman tentang penjadwalan CPU merupakan fondasi penting dalam pengembangan sistem operasi yang efisien dan handal. Melalui modul ini, mahasiswa diharapkan mampu menganalisis berbagai algoritma penjadwalan, mengevaluasi kinerja mereka, dan menerapkan prinsip-prinsip penjadwalan dalam konteks sistem nyata.

1.1 Tujuan Pembelajaran

Setelah mempelajari modul ini, mahasiswa diharapkan mampu menjelaskan konsep dasar penjadwalan CPU, membandingkan berbagai algoritma penjadwalan (FIFO, SJF, RR, PS), menghitung metrik kinerja penjadwalan seperti Average Waiting Time (AWT) dan Average Turnaround Time (ATAT), serta menganalisis kelebihan dan kekurangan masing-masing algoritma dalam berbagai skenario. Mereka juga diharapkan mampu menerapkan pengetahuan ini untuk mendesain dan mengevaluasi sistem penjadwalan yang optimal untuk aplikasi tertentu. Kemampuan analitis dan pemecahan masalah akan terasah melalui studi kasus dan latihan yang disertakan.

1.2 Outcome Pembelajaran

Mahasiswa akan mampu menganalisis dan mengevaluasi kinerja berbagai algoritma penjadwalan CPU berdasarkan metrik yang relevan. Mereka akan mampu membedakan antara penjadwalan preemptive dan non-preemptive, dan memahami implikasi dari pilihan tersebut pada kinerja sistem. Selain itu, mahasiswa diharapkan mampu menjelaskan bagaimana proses pemilihan algoritma penjadwalan yang tepat dipengaruhi oleh karakteristik beban kerja dan kebutuhan aplikasi. Penguasaan konsep-konsep ini akan menjadi bekal berharga bagi mahasiswa dalam menghadapi tantangan di dunia kerja yang semakin kompleks.

II. Konsep Dasar Penjadwalan CPU

Bagian ini mengintroduksi konsep multiprogramming dan siklus burst I/O dan burst CPU sebagai landasan pemahaman penjadwalan CPU. Dijelaskan pula definisi penjadwalan itu sendiri, mencakup kebijakan dan mekanisme yang menentukan urutan eksekusi proses. Ilustrasi histogram CPU-burst times membantu mahasiswa memvisualisasikan distribusi waktu eksekusi proses, yang penting dalam memilih algoritma penjadwalan yang tepat. Diagram state proses juga dijelaskan, memberikan gambaran visual tentang transisi state proses selama eksekusi.

2.1 Multiprogramming dan Burst I/O dan Burst CPU

Konsep multiprogramming dijelaskan sebagai teknik menjalankan beberapa program secara bersamaan pada memori untuk memaksimalkan utilisasi CPU. Siklus burst I/O dan burst CPU dijelaskan sebagai siklus pergantian antara waktu proses membutuhkan I/O dan waktu proses melakukan komputasi. Pemahaman ini penting karena penjadwalan CPU harus mempertimbangkan kedua siklus ini untuk mengoptimalkan kinerja sistem. Histogram CPU-burst times yang disajikan dalam modul memberikan gambaran visual tentang distribusi waktu komputasi proses, sehingga membantu mahasiswa memahami bagaimana distribusi ini mempengaruhi pemilihan algoritma penjadwalan yang tepat.

2.2 Definisi dan Tujuan Penjadwalan

Modul mendefinisikan penjadwalan sebagai mekanisme sistem operasi untuk menentukan urutan dan durasi eksekusi proses. Tujuan utama penjadwalan adalah memaksimalkan utilisasi CPU, throughput, dan efisiensi sistem secara keseluruhan. Pemahaman tujuan ini penting bagi mahasiswa untuk memahami mengapa berbagai algoritma penjadwalan dirancang dan bagaimana mereka berusaha mencapai tujuan tersebut. Diagram state proses, yang menggambarkan peralihan state proses antara running, ready, dan waiting, memberikan konteks visual bagi konsep-konsep penjadwalan.

III. Kriteria Penjadwalan

Modul ini menguraikan beberapa kriteria penting dalam evaluasi algoritma penjadwalan. Kriteria ini meliputi adil (fairness), efisiensi, waktu tanggap (response time), turnaround time, dan throughput. Mahasiswa diharapkan mampu menggunakan kriteria ini untuk membandingkan dan mengevaluasi kinerja berbagai algoritma penjadwalan dalam berbagai skenario. Pemahaman yang mendalam tentang kriteria ini sangat penting untuk memilih algoritma yang sesuai dengan kebutuhan sistem.

3.1 Kriteria Kinerja: Adil, Efisiensi, Waktu Tanggap

Modul menjelaskan kriteria penting seperti keadilan (setiap proses mendapat jatah waktu pemrosesan), efisiensi (memaksimalkan waktu sibuk CPU), dan waktu tanggap (response time). Response time dibedakan menjadi terminal response time dan event response time untuk sistem real-time. Memahami kriteria ini akan membantu mahasiswa menganalisis kinerja algoritma penjadwalan secara komprehensif dan objektif.

3.2 Kriteria Kinerja: Turnaround Time dan Throughput

Turnaround time didefinisikan sebagai waktu total yang dibutuhkan untuk menyelesaikan sebuah proses, meliputi waktu eksekusi dan waktu menunggu. Throughput didefinisikan sebagai jumlah proses yang diselesaikan dalam satu unit waktu. Kedua kriteria ini penting karena merupakan indikator langsung dari efisiensi dan kinerja sistem. Mahasiswa diajak untuk menganalisis bagaimana berbagai algoritma penjadwalan mempengaruhi turnaround time dan throughput.

IV. Tipe dan Strategi Penjadwalan

Modul membedakan tiga tipe penjadwalan: jangka pendek, menengah, dan panjang. Perbedaan ini terletak pada cakupan waktu dan tugas masing-masing penjadwal. Strategi penjadwalan dibagi menjadi preemptive dan non-preemptive. Penjelasan yang rinci, termasuk ilustrasi diagram transisi state proses, membantu mahasiswa memahami perbedaan mendasar antara kedua strategi ini dan implikasinya pada kinerja sistem.

4.1 Tipe Penjadwalan: Jangka Pendek, Menengah, dan Panjang

Modul menjelaskan tiga tipe penjadwalan berdasarkan rentang waktu yang mereka tangani. Penjadwal jangka pendek memilih proses dari antrian ready untuk dieksekusi pada CPU. Penjadwal jangka menengah menangani swapping proses antara memori utama dan sekunder. Penjadwal jangka panjang memilih job dari antrian batch untuk dieksekusi. Pemahaman perbedaan ini penting karena setiap tipe penjadwal memiliki peran dan algoritma yang berbeda.

4.2 Strategi Penjadwalan: Preemptive dan Non-Preemptive

Modul membedakan antara penjadwalan preemptive dan non-preemptive. Penjadwalan preemptive memungkinkan suatu proses yang sedang berjalan untuk diinterupsi dan dipindahkan ke status ready, sehingga CPU dapat dialokasikan ke proses lain. Sebaliknya, penjadwalan non-preemptive tidak mengijinkan interupsi proses yang sedang berjalan. Diagram transisi state proses yang diberikan memperjelas perbedaan ini, serta menunjukkan bagaimana setiap strategi mempengaruhi aliran eksekusi proses.

V. Algoritma Penjadwalan

Bagian ini membahas berbagai algoritma penjadwalan, termasuk FIFO, SJF (Shortest Job First), RR (Round Robin), dan PS (Priority Scheduling). Masing-masing algoritma dijelaskan secara detail, termasuk contoh-contoh penerapan dan analisis kinerja menggunakan AWT dan ATAT. Gantt chart digunakan secara ekstensif untuk memvisualisasikan urutan eksekusi proses dan memudahkan pemahaman.

5.1 FIFO (First-In, First-Out)

Algoritma FIFO adalah algoritma penjadwalan non-preemptive dan sederhana. Proses yang tiba pertama akan dilayani pertama. Modul menjelaskan algoritma ini dengan contoh Gantt chart, perhitungan AWT dan ATAT, dan menunjukkan kelemahannya seperti konvoi effect (proses panjang membuat proses pendek menunggu). Analisis ini membantu mahasiswa memahami keterbatasan algoritma sederhana ini dan perlunya algoritma yang lebih canggih.

5.2 SJF (Shortest Job First)

Algoritma SJF, baik preemptive maupun non-preemptive, menjadwalkan proses dengan waktu eksekusi terpendek terlebih dahulu. Modul membandingkan versi preemptive dan non-preemptive, menunjukkan bagaimana preemption dapat meningkatkan kinerja sistem. Contoh-contoh Gantt chart dan perhitungan AWT dan ATAT diberikan untuk memperkuat pemahaman mahasiswa tentang algoritma ini. Perbedaan antara versi preemptive dan non-preemptive dijelaskan secara rinci.

5.3 RR (Round Robin)

Algoritma RR adalah algoritma penjadwalan preemptive yang memberikan jatah waktu pemrosesan yang sama (quantum) kepada setiap proses. Modul menjelaskan bagaimana quantum mempengaruhi kinerja, dan memberikan contoh Gantt chart serta perhitungan AWT dan ATAT. Analisis ini membantu mahasiswa memahami trade-off antara overhead dan responsivitas sistem. Penjelasan tentang penanganan arrival time dan sisa waktu proses juga dijabarkan.

5.4 PS (Priority Scheduling)

Algoritma PS memberikan prioritas kepada proses yang dianggap lebih penting. Modul menjelaskan bagaimana prioritas didefinisikan, dan membandingkan versi preemptive dan non-preemptive. Contoh Gantt chart dan perhitungan AWT dan ATAT diberikan untuk memperkuat pemahaman mahasiswa. Modul juga membahas bagaimana menentukan prioritas, mempertimbangkan berbagai faktor seperti waktu eksekusi, kebutuhan memori, dan I/O burst.

Referensi

Dokumen terkait

Proses antrean merupakan suatu proses yang berhubungan dengan kedatangan customer pada suatu fasilitas pelayanan, menunggu dalam baris antrean jika belum dapat

Proses antrian sendiri merupakan suatu proses yang berhubungan dengan kedatangan pelanggan pada suatu fasilitas pelayanan, menunggu dalam baris antrian jika belum dapat dilayani,

Sebaliknya, jika suatu proses memiliki CPU burst yang lebih besar dibandingkan dengan waktu quantum, maka proses tersebut akan dihentikan sementara jika

Karena sebuah NFA memungkinkan mempunyai lebih dari satu final state maka jika transisi telah sampai kesalah satu final state tapi karakter dari string masukan belum habis maka

Jika A adalah kejadian munculnya dua mata dadu yang jumlahnya habis dibagi tiga, maka tentukan peluang sukses 3 kali percobaan dalam eksperimen itu.. Suatu percobaan melantunkan

 Jika proses telah mengalokasi resource dan ingin mengalokasi resource lain – tapi tidak diperoleh (wait) : maka ia melepaskan semua resource yang telah dialokasi.  Proses

Proses antrian merupakan suatu proses yang berhubungan dengan kedatangan pelanggan pada suatu fasilitas pelayanan, menunggu dalam baris antrian jika belum dapat

Proses antrean merupakan suatu proses yang berhubungan dengan kedatangan customer pada suatu fasilitas pelayanan, menunggu dalam baris antrean jika belum dapat