Oleh : Defiana Arnaldy, M.Si

Slides:



Advertisements
Presentasi serupa
PERTEMUAN KE-5 Heintje Hendrata, S.Kom
Advertisements

Penjadwalan CPU.
Tim Teaching Grant Mata Kuliah Sistem Operasi
Afrizal Fahrudin Bagus Azril Hala Rizqul H
Penjadwalan dan Interaksi Proses
Penjadwalan CPU Niyalatul Muna
BAB IV PENJADWALAN PROSES.
Pertemuan 04- Penjadwalan Proses sistem operasi
Ervi Nurafliyan Susanti ( )
Dosen: Resi Utami Putri, S.Kom., M.Cs Penjadwalan Proses.
PENJADWALAN PROSES.
Sistem Operasi Penjadwalan Proses
Pertemuan 5 Penjadwalan Proses
Proses dan Penjadwalan
Slide 7 – Penjadwalan Process
PART 3 DOSEN : AHMAD APANDI, ST
Manajemen Proses Meliputi : Pengelolaan sisklusi hidup proses
Beberapa istilah yg sering muncul
PENJADWALAN PROSES.
Ihr Logo 3. SISTEM OPERASI Manajemen Proses by
Sumber Kepustakaan : ppt1 Beberapa istilah yg sering muncul Average Turn Around Time Rata-rata waktu total yg.
PENJADUALAN PROSES.
Penjadwalan Proses.
MATERI 5 SISTEM OPERASI Scheduling Algorithm Oleh : Mufadhol, S.Kom
MATERI 4 SISTEM OPERASI Scheduling Process Oleh : Mufadhol, S.Kom
PERTEMUAN KE-9 PERKULIAHAN SISTEM OPERASI
PROCESS SCHEDULING A.A. Gde Bagus Ariana, ST..
Penjadwalan Proses.
“Process Schedulling”
Penjadwalan CPU.
Penjadwalan Process.
“PENJADWALAN PROSES “ SISTEM OPERASI.
Sistem Operasi Pertemuan 8.
Operasi pada Sistem Operasi
PENJADWALAN PROSES.
V. Penjadwalan Proses Penjadwalan CPU terjadi pada sistem operasi yang mempergunakan multiprogramming. Penjadwalan berupa kumpulan kebijakan untuk menentukan.
OPERATING SYSTEM.
Algorithma Penjadwalan Proses
Mata Kuliah : Sistem Operasi
PART 3 DOSEN : AHMAD APANDI, ST
SISTEM OPERASI Dosen Pengampu : Erfanti Fatkhiyah, ST., M.Cs.
III. Penjadwalan Proses
Dosen: Resi Utami Putri, S.Kom., M.Cs
Slide 7 – Penjadwalan Process
STMIK-IM BANDUNG Chalifa Chazar
Penjadwalan Proses.
Penjadwalan Proses.
ALGORITMA PENJADWALAN PROSES
Fakultas Ilmu Komputer Defri Kurniawan, M.Kom
Process Scheduling SISTEM OPERASI Slide perkuliahan
Penjadwalan Proses Edi Sugiarto, S.Kom.
Mata Kuliah Sistem Operasi
Sistem Operasi Teknik Informatika STT Wastukancana Purwakarta
Penjadwalan Proses.
PART 3 Penjadwalan cpu.
Sistem Operasi Penjadwalan Proses
Penjadualan CPU 6.
Sistem Operasi: Penjadwalan Proses
CHAPTER 5 CPU SCHEDULING
PENJADWALAN PROSES.
MATERI PENJADWALAN PROSES
Penjadwalan Proses M. Ghofar Rohman.
Tim Teaching Grant Mata Kuliah Sistem Operasi
Beberapa istilah yg sering muncul
Slide 7 – Penjadwalan Process
Tim Teaching Grant Mata Kuliah Sistem Operasi
Tim Teaching Grant Mata Kuliah Sistem Operasi
Tim Teaching Grant Mata Kuliah Sistem Operasi
OPERATING SYSTEM. 1.Fungsi Sistem Operasi 2.Penjadwalan Proses 3.Memori Manajemen Dukungan Sistem Operasi meliputi:
Tim Teaching Grant Mata Kuliah Sistem Operasi
Transcript presentasi:

Oleh : Defiana Arnaldy, M.Si 0818 0296 4763 deff_arnaldy@yahoo.com Penjadwalan Proses Oleh : Defiana Arnaldy, M.Si 0818 0296 4763 deff_arnaldy@yahoo.com

OVERVIEW Konsep Dasar Penjadwalan Proses Kriteria Penjadwalan Algoritma Penjadwalan Two Queues Scheduling Multilevel Feedback Queue Scheduling Multiple-Processor Scheduling Real Time Scheduling Penjadwalan Thread Evaluasi Algoritma

Konsep Penjadwalan CPU Penjadualan CPU adalah basis dari multi programming sistem operasi Dengan men-switch CPU diantara proses, sistem operasi dapat membuat komputer produktif

Konsep Dasar Penjadwalan Tujuan dari multi programming adalah untuk mempunyai proses berjalan secara bersamaan Ketika suatu proses harus menunggu, Sistem operasi dapat saja akan menghentikan CPU dari suatu proses yang sedang dieksekusi dan memberikan sumberdaya kepada proses yang lainnya

Konsep Dasar Penjadwalan CPU Scheduler CPU adalah salah satu sumber dari komputer yang penting yang menjadi sentral dari sentral penjadualan di sistem operasi Kapanpun CPU menjadi idle, sistem operasi harus memilih salah satu proses untuk masuk kedalam antrian ready (siap) untuk dieksekusi  short term scheduler.

Konsep Dasar Penjadwalan CPU Scheduler Keputusan untuk menjadwalkan CPU mengikuti 4 keadaan berikut: Proses berpindah dari status Running  Waiting Proses berpindah dari status Running  Ready Proses berpindah dari status Waiting  Ready Proses berhenti Proses 1 dan 4  Non-preemptive Proses 2 dan 3  preemtive

Penjadwalan Preemptive dan Non Preemptive Strategi yang mengijinkan proses yang sedang dieksekusi untuk ditangguhkan sementara digunakan oleh windows 95 ke atas Penjadwalan non preemptive : Sekali CPU telah dialokasikan untuk sebuah proses, maka tidak dapat di ganggu digunakan oleh windows 3.X

Konsep Dasar Penjadwalan Dispatcher Suatu modul yang akan memberikan kontrol pada CPU terhadap penyeleksian proses yang dilakukan selama short-term scheduling. Fungsi-fungsi yang terkandung dalam dispatcher: Switching context Switching ke user-mode Melompat ke lokasi tertentu pada user program untuk memulai program

Kriteria Penjadualan Algoritma penjadualan CPU yang berbeda mempunyai property yang berbeda. Dalam memilih algoritma yang digunakan untuk situasi tertentu, kita harus memikirkan properti yang berbeda untuk algoritma yang berbeda. Banyak kriteria yang dianjurkan untuk membandingkan penjadualan CPU algoritma.

Kriteria Penjadualan CPU utilization  kita ingin menjaga CPU sesibuk mungkin. CPU utilization akan mempunyai range dari 0% - 100%. Di sistem yang sebenarnya mempunyai range dari 40% - 90% Throughput  banyak proses yang diselesaikan per unit waktu. Untuk proses yang lama mungkin satu proses per jam; untuk proses yang sebentar mungkin 10 proses perdetik. Sasaran dari penjadwalan adalah memaksimalkan jumlah proses yang dilayani per satu interval waktu.

Kriteria Penjadualan Turnaround time  Banyaknya waktu yang diperlukan untuk mengeksekusi proses, mulai dari menunggu untuk meminta tempat di memori utama, menunggu di ready queue, eksekusi oleh CPU, dan mengerjakan I/O sampai semua proses terselesaikan. Turn around time = waktu eksekusi + waktu tunggu Waiting time  Waktu yang diperlukan oleh suatu proses untuk menunggu di ready queue. Waiting time ini tidak memengaruhi eksekusi proses dan penggunaan I/O

Kriteria Penjadualan Response time  di sistem yang interaktif, turnaround time mungkin bukan waktu yang terbaik untuk kriteria. Sering sebuah proses dapat memproduksi output diawal, dan dapat meneruskan hasil yang baru sementara hasil yang sebelumnya telah diberikan ke user. Ukuran yang lain adalah waktu dari pengiriman permintaan sampai respon yang pertama di berikan. Ini disebut response time, yaitu waktu untuk memulai memberikan respon, tetapi bukan waktu yang dipakai output untuk respon tersebut. Biasanya yang dilakukan adalah memaksimalkan CPU utilization dan throughput, dan minimalkan turnaround time, waiting time, dan response time dalam kasus tertentu kita mengambil rata-rata.

Beberapa istilah yg sering muncul Average Turn Around Time Rata-rata waktu total yg dibutuhkan sebuah proses dari datang sampai selesai dieksekusi oleh CPU Burst Time Waktu yg dibutuhkan utk mengeksekusi sebuah proses Average Waiting Time Rata-rata waktu yang dihabiskan proses selama berada pada status ready ( menunggu eksekusi CPU )

Algorithma Penjadwalan First-Come, First-Served ( FCFS ) Round Robin Schedulling Priority Schedulling Shortest-Job First Schedulling ( SJF ) Multilevel Queue Schedulling

First-Come, First-Served Algoritma ini akan mendahulukan proses yang lebih dulu datang Kelemahan algoritma ini adalah waiting time rata-rata yang cukup lama Muncul istilah convoy effect, dimana proses lain menunggu satu proses besar mengembalikan sumber daya CPU Algoritma ini nonpreemptive

Contoh Kasus Gant Chart : P1 P2 P3 24 27 30 T PROSES BRUST TIME WAKTU KEDATANGAN P1 24 P2 3 1 P3 2 Gant Chart : P1 P2 P3 24 27 30 T Waiting Time P1 = 0 | P2 = 24 – 1 = 23 | P3 = 27 – 2 = 25 Average Waiting Time = = 16 0 + 23 + 25 3 Turn Around Time P1 = 24 | P2 = 27 – 1 = 26 | P3 = 30 – 2 = 28 P1 = Burst Time+ Waiting Time = 24 + 0 = 24 P2 = 3 + 23 = 26 Average Turn Arround Time = = 26 *waktu kedatangan menjadi urutan gant chart dan perhitungan 24 + 26 + 28 3

Round-Robin Schedulling Algoritma ini menggilir proses yang ada di antrian. Proses akan mendapat jatah sebesar time quantum. Jika time quantum-nya habis atau proses sudah selesai CPU akan dialokasikan ke proses berikutnya. Tak ada proses yang diprioritaskan Jika time quantum terlalu besar, sama saja dengan algoritma first-come first-served, jika terlalu kecil akan semakin banyak peralihan proses sehingga banyak waktu terbuang

Contoh Kasus Time Quantum 3 Gant Chart : 12 15 T 3 6 9 P1 P2 PROSES BRUST TIME WKT KEDATANGAN P1 9 P2 6 1 Time Quantum 3 Gant Chart : 12 15 T 3 6 9 P1 P2 Waiting Time P1 = 0 + 3 + 3 = 6 | P2 = ( 3 – 1 wkt kdtg ) + ( 9 - 6 ) = 5 Average Waiting Time = = 5.5 6 + 5 2 Turn Around Time P1 = 15 | P2 = 12 – 1 = 11 Average Turn Arround Time = = 13 15 + 11 2

Priority Schedulling Algoritma ini memberikan skala prioritas kepada tiap proses Proses yang mendapat prioritas terbesar akan didahulukan. Algoritma ini dapat preemptive maupun nonpreeemptive Kelemahan dari algoritma ini adalah proses dengan prioritas kecil tidak akan mendapat jatah CPU. Hal ini dapat diatasi dengan aging, yaitu semakin lama menunggu, prioritas semakin tinggi.

Contoh Kasus Priority Preemptive PROSES BRUST TIME WKT KEDATANGAN PRIORITY P1 9 3 P2 6 1 2 P3 Gant Chart : T 5 18 10 P3 P2 P1 1 2 Waiting Time P1 = 0 + ( 10 – 1 ) = 9 | P2 = ( 1 – 1wkt kdtg) + ( 5 – 2 ) = 3 | P3 = ( 2 – 2wkt kdtg) = 0 Average Waiting Time = = 4 9 + 3 + 0 3 Turn Around Time P1 = 18 | P2 = 10 – 1 = 9 | P3 = 5 – 2 = 3 Average Turn Arround Time = = 10 18 + 9 + 3 3

Contoh Kasus Priority Non-preemptive PROSES BRUST TIME WKT KEDATANGAN PRIORITY P1 9 3 P2 6 1 2 P3 Gant Chart : T 9 18 12 P3 P2 P1 Waiting Time P1 = 0 | P2 = ( 12 - 1 ) = 11 | P3 = ( 9 - 2 ) = 7 Average Waiting Time = = 6 0 + 11 + 7 3 Turn Around Time P1 = 9 | P2 = 18 – 1 = 17 | P3 = 12 – 2 = 10 Average Turn Arround Time = = 12 9 + 17 + 10 3

Shortest-Job First Schedulling Proses diatur menurut panjang CPU burst berikutnya (lebih tepatnya shortest next CPU burst). Waiting time rata-rata dari algoritma ini sangat kecil, sehingga layak disebut optimal Kelemahan algoritma ini yaitu kita tak pernah tahu secara pasti panjang CPU burst proses berikutnya Algoritma ini dapat merupakan preemptive atau nonpreemptive. Jika preemptive, jika ada proses datang dengan sisa CPU burst yang lebih kecil daripada yang sedang dieksekusi, maka proses tersebut akan menggantikan proses yang sedang dieksekusi

Contoh Kasus JFS Preemptive PROSES BRUST TIME WKT KEDATANGAN P1 9 P2 6 1 P3 3 2 Gant Chart : T 5 18 10 P3 P2 P1 1 2 Waiting Time P1 = 0 + ( 10 – 1 ) = 9 | P2 = 0 + ( 5 – 2 ) = 3 | P3 = 0 Average Waiting Time = = 4 9 + 3 + 0 3 Turn Around Time P1 = 18 | P2 = 10 – 1 = 9 | P3 = 5 – 2 = 3 Average Turn Arround Time = = 10 18 + 9 + 3 3

Contoh Kasus SJF Non-preemptive PROSES BURST TIME WKT KEDATANGAN P1 9 P2 6 1 P3 3 2 Gant Chart : T 9 18 12 P3 P2 P1 Waiting Time P1 = 0 | P2 = ( 12 - 1 ) = 11 | P3 = ( 9 - 2 ) = 7 Average Waiting Time = = 6 0 + 11 + 7 3 Turn Around Time P1 = 9 | P2 = 18 – 1 = 17 | P3 = 12 – 2 = 10 Average Turn Arround Time = = 12 9 + 17 + 10 3

Multilevel Queue Schedulling Algoritma ini mengelompokkan antrian dalam beberapa buah antrian Antrian-antrian tersebut diberi prioritas Tiap antrian boleh memiliki algoritma yang berbeda Semakin tinggi tingkatan prioritasnya, semakin besar jatah waktu CPU-nya

Latihan Soal… PROSES BRUST TIME PRIORITY WKT KEDATANGAN P1 10 3 P2 2 1 P2 2 1 P3 5 4 Gambar Gant Chart dan Tentukan Avg. Waiting Time serta Avg. Turn Arround Time dari ketiga proses di atas dengan algoritma : FCFS SJF ( preemptive ) Round-Robin, q = 2 Round-Robin, q = 5 Priority ( non-preemptive )

Two Queues Scheduling Tujuan time sharing  menjaga proses user mendapat tanggapan baik dari CPU Salah satu cara mendapatkan tanggapan baik  tidak mengijinkan job panjang menghambat job pendek dengan cara mempunyai dua antrian Konsep dasar algoritma two Queue scheduling adalah multilevel queue.

Multilevel Feedback Queue Scheduling Konsep sama dengan multilevel queue Parameter yang digunakan: Jumlah queue Scheduling algoritma untuk tiap queue Metode yang digunakan untuk memutuskan ketika upgrade suatu proses Metode yang digunakan untuk memutuskan ketika menurunkan suatu proses Metode yang digunakan untuk menentukan queue mana yang akan diproses ketika proses membutuhkan service

Multiple-Processor Scheduling Lebih kompleks  syarat processor identik Symmetric multiprocessing (SMP)  setiap processor menjadwalkan sendiri, setiap processor memeriksa ready queue dan memilih proses yang akan dieksekusi Inti penjadwalan multiprocessor: Processor homogen Berbagi beban Asymetric multiprocessing  hanya satu processor yang mengakses struktur sistem data

Real Time Scheduling Sistem hard real time Soft real time computing Diperlukan untuk menyudahi suatu tugas penting dala sejumlah waktu Soft real time computing Memerlukan proses penting yang menerima prioritas lebih sedikit dari sebelumnya

Evaluasi Algoritma Bagaimana memilih sebuah algoritma penjadwalan CPU untuk sistem-sistem tertentu. Dalam pemilihan algoritma kriteria utama : Adil (fairness) Adil adalah proses –proses diperlakukan sama yaitumendapat jatah waktu pemroses yang sama dan tak ada proses yang tak kebagian layanan pemroses sehingga mengalami (starvation). Efisiensi Efisiensi atau utilisasi pemroses dihitung dengan perbandingan (rasio ) waktu sibuk pemroses

Waktu Tanggap (response time) Sistem Interaktif Waktu tanggap dalam sistem interaktif didefinisikan sebagai waktu yang dihabiskan dari saat karakter terakhir dari perintah dimasukkan atau transaksi sampai hasil pertama muncul di layar (terminal). Waktu tanggap ini disebut terminal response time. Sistem Realtime Pada sistem waktu nyata (real-time), waktu tanggap di definisikan sebagai waktu dari saat kejadian (internal atau eksternal) sampai instruksi pertama rutin layanan yang dimaksud dieksekusi , disebut event respons time. Sasaran penjadwalan adalah meminimalkan waktu tanggap. Turn Around Time waktu yang dihabiskan dari ssat program atau job mulai masuk ke sistem sampai proses diselesaikan sistem. Throughput Throughput adalah jumlah kerja yang dapat diselesaikan dalam satu unit waktu.

Evaluasi Algoritma Beberapa metode evaluasi Pemodelan deterministik Evaluasi analistik  menunjukkan pola Pemodelan antrian Simulasi Implementasi

TERIMA KASIH