KATA PENGANTAR
Puji syukur penulis panjatkan ke hadirat Allah SWT. bahwa penulis telah menyelesaikan tugas mata kuliah “SISTEM OPERASI”. Dalam penyusunan tugas atau materi ini, tidak sedikit hambatan yang penulis hadapi. Namun penulis menyadari bahwa kelancaran dalam penyusunan materi ini tidak lain berkat bantuan, dorongan dan bimbingan orang tua, sehingga kendalakendala yang penulis hadapi teratasi. Oleh karena itu penulis mengucapkan terima kasih kepada : 1. Bapak Bapak Napoleon Napoleon Lukman Lukman S.T yang telah telah memberik memberikan an tugas, tugas, petunjuk, petunjuk, kepada penulis sehingga penulis termotivasi dan menyelesaikan tugas ini. 2. Orang Orang tua yang yang telah telah turut membant membantu, u, membimbi membimbing, ng, dan mengata mengatasi si berbagai kesulitan sehingga sehingga tugas ini selesai. selesai.
1
DAFTAR ISI
KATA PENGANTAR
........................................ 1
DAFTAR ISI
........................................ 2
BAB I PENDAHULUAN
........................................ 3
BAB II .......... ............... .......... .......... .......... .......... .......... ..... ALGORITMA SCHEDULLING ........................................ 1. High Highest est Rati Ratio o Next Next (H (HRP RPN) N) ............... .......... .......... .......... .......... .......... ..... 2. Penjadw Penjadwalan alan Round-R Round-Robi obin n (Puat (Puat Gelang) Gelang) .......... .......... ............... .......... .......... .......... .......... .......... ..... 3. PS (Prir (Pririt ity y Sche Schedu dull lling ing)) .......... ............... .......... .......... .......... .......... .......... ..... 4. GS (Gu (Guar arant antee eed d Schedu Schedull lling ing)) .......... ............... .......... .......... .......... .......... .......... ..... 5. Multi Multiple ple Feed Feedba back ck Qu Queu eues es ........................................ ........................................ 6. Sh Short ortest est Job First First (SJF) (SJF)
4 4 6 8 9 9 12
BAB III PENUTUP ........................................ ........................................ 14 ........................................ ........................................ 15
KESIMPULAN DAFTAR PUSTAKA
2
BAB I PENDAHULUAN
Sekarang ini, perkembangan computer sudah sangat pesat dan banyak digunakan dalam bidang kehidupan. Seringkali pengguna computer hanya menggunakan computer untuk menyelesaikan persoalan yang mereka hadapi tanpa tanpa tahu tahu bagaim bagaimana ana comput computer er mempro memproses sesnya nya.. Sepert Sepertii halnya halnya tentan tentang g system operasi yang merupakan interface antara pengguna dengan perangkat keras computer sehingga kita tidak dirumitkan rincian-rincian pengoperasian perangkat keras. Sistem operasi melakukan beragam tugas, salah satu tugas yang paling penting adalah manajemen proses, dimana mengelola semua proses aktif dan mengalokasikan sumber daya ke proses-proses itu sesuai kebi kebija jaks ksan anaa aan n yang yang diam diambi bill untu untuk k meme memenu nuhi hi sasa sasara ran n kine kinerj rja. a. Untu Untuk k memutuskan proses yang harus berjalan, kapan dan berapa lama proses itu berjalan maka diperlukan suatu teknik penjadwalan yang efektif. Ada berbagai macam teknik penjadwalan proses dengan keunggulannya masingmasing dan yang dibahas adalah Penjadwalan Round Penjadwalan Round Robin, Highest Ratio Next (HRPN), PS (Pririty Schedulling), GS (Guaranteed Schedulling), Multiple Feedback Queues, Shortest Job First (SJF). Tujuan penelitian ini adalah membahas dan menganalisis lebih rinci tentang Penjadwalan Round Penjadwalan Round Robin, Highest Ratio Next (HRPN), PS (Pririty Schedulling), GS (Guaranteed Schedulling), Multiple Feedback Queues, Shortest Job First (SJF). (SJF).
3
ALGORITMA SCHEDULLING 1. Highest Ratio Next (HRPN)
Penjad Penjadwal walan an ini termas termasuk uk dalam dalam katego kategori ri Penjadwalan Tertinggi Dipertamakan (RPTD). (RPTD). Penjad Penjadwal walan an ini termas termasuk uk katego kategori ri penjad penjadwal walan an dengan prioritas tanpa preempsi. Dasar prioritas adalah nilai rasio penalti. Penja Penjadw dwal alan an ini ini terl terlet etak ak dian dianta tara ra penj penjad adwa wala lan n PTPD PTPD dan dan PTD. PTD. Pada Pada penjadwalan PTPD, proses pendek pada bagian belakang antrian akan mengalami banyak penundaan sedangkan pada penjadwalan PTD, proses panjang akan mengalami banyak banyak penundaan. Penj Penjad adwa wala lan n RPTD RPTD teta tetap p mend mendah ahul uluk ukan an pros proses es pend pendek ek,, namu namun n prioritas proses panjang akan meningkat melalui peningkatan rasio penaltinya (Rp). Pada suatu suatu saat, prioritas proses panjang yang lama tertunda itu akan dapat menyusul prioritas proses pendek. Rumus rasio penalti adalah T/t , dalam hal ini, lama tanggap T merupakan T merupakan jumlah dari lama tunggu atau antri (waktu sia-sia) s dengan lama proses t , sehingga rumus rasio penalti (Rp) dapat menjadi Rp = (s+t)/t . Contoh Kasus
Terdapat sekumpulan proses (A, B, C, D) yang memiliki saat tiba berturutturut 9:00, 9:05, 9:15, 9:20, dengan lama proses berturut-turut 20’, 15’, 5’, 25’. Tentukanlah kapan saat mulai, saat rampung dan lama tanggap dari masing masing-mas -masing ing proses proses dengan dengan Kategori Penjadwalan Highest Penalty Ratio Next ? • Jawab :
4
Penjelasan :
Penyelesaian kasus ini dengan menggunakan tabel rasio penalti (Rp) (satu tabel untuk satu proses). Proses A lebih dahulu dikerjakan, karena lebih dahulu dahulu tiba tiba dari dari proses proses lainny lainnyaa (09:00 (09:00), ), yaitu yaitu : 09:00 09:00-09 -09:20 :20.. Setela Setelah h A selesai proses B, C, dan D telah tiba, maka perlu kita hitung rasio penalti (Rp) untuk proses B, C, dan D. Proses A tidak memiliki rasio penalti (Rp) atau atau Rp=0 Rp=0,, karen karenaa pada pada saat saat tiba tiba pros proses es A lang langsu sung ng dike dikerja rjaka kan n oleh oleh prosesor. Rasio penalti (Rp) untuk untuk proses B, C, dan D adalah adalah :
Berdasarkan tabel diatas, maka : •
•
•
•
Tiba Selama sama dengan waktu sia-sia. Waktu sia-sia dihitung dari saat selesai proses A dikurangi dengan saat tiba masing-masing proses (misalkan proses C waktu sia-sianya adalah 09:20 dikurangi 09:15 = 5’, dan proses B waktu sia-sianya adalah 09:20 dikurangi 09:05 = 15’. Rasio penalti (Rp) = (s+t)/t, dimana s adalah lama tunggu atau antri (waktu sia-sia), dan t adalah lama proses, sehingga. Dari ketiga proses, proses C yang memiliki rasio penalti tertinggi, sehingga proses C yang dikerjakan setelah A. Setelah proses C dikerjakan, maka tabel diatas sudah tidak berlaku lagi lagi,, karen karenaa wakt waktu u sia-s sia-sia ia dari dari 2 pros proses es sisa sisany nyaa suda sudah h berb berbed edaa (mengacu pada saat selesai/rampung proses C, yaitu 09:30, sehingga perlu dibuatkan tabel tabel baru.
Rasio penalti (Rp) untuk proses B, dan D adalah :
5
Berdasarkan tabel diatas, maka : •
•
•
Tiba Selama sama dengan waktu sia-sia. Waktu sia-sia dihitung dari saat selesai proses C dikurangi dengan saat tiba masing-masing proses (proses B waktu sia-sianya adalah 09:30 dikurangi 09:05 = 25’, dan proses D waktu sia-sianya sia-sianya adalah 09:30 dikurangi dikurangi 09:20 = 10’. Dari kedua proses, proses B yang memiliki rasio penalti tertinggi (2.7), sehingga proses B yang dikerjakan setelah C. Setela Setelah h proses proses B dikerj dikerjaka akan n (09:30 (09:30-09 -09:45 :45), ), tingga tinggall proses proses D yang yang belum diproses, maka proses D bisa langsung masuk ke prosesor, yaitu 09:45-10:05. 09:45-10:05.
2. Penjadwalan Round-Robin (Puat Gelang)
Penjadwal Penjadwalan an ini merupakan merupakan penjadwala penjadwalan n preemptive preemptive (preempt-by (preempt-by-time), namun tanpa prioritas. Semua proses dianggap penting dan diberi sejumlah waktu pemroses yang disebut kwanta (Quantum) atau time-slice dimana proses itu berjalan. Jika kwanta habis dan proses belum selesai maka proses menjadi runnable dan pemroses dialihkan ke proses lain. Jika kwanta belum habis dan proses menunggu suatu kejadian (selesainya operasi I/O), maka proses menjadi blocked dan pemroses dialihkan ke proses lain. Jika kwanta kwanta belum belum habis habis tapi tapi proses proses telah telah selesa selesaii maka maka proses proses diakhi diakhiri ri dan pemroses dialihkan ke proses lain. lain. Contoh Kasus
Sekumpulan proses (A, B, C, D, E) memiliki saat tiba 07:00 dan lama proses berturut-turut 6’, 8’, 10’, 7’, 4’. Tentukan kapan saat mulai, saat rampung, lama tanggap, dan rata-ratanya bila quatum waktunya = 2 ? • Jawab :
6
• Penjelasan : •
•
•
•
•
•
•
Penjad Penjadwal walan an ini menggu menggunak nakan an kwant kwantum um waktu, waktu, satu satu proses proses akan akan bekerja selama satu kwantum waktu, bila telah selesai, dan proses terse tersebu butt masi masih h sisa sisa,, maka maka pros proses es akan akan di-b di-blo lock cked ed,, dan dan pros proses esor or beralih ke proses selanjutnya. selanjutnya. Pada kasus diatas proses A (dengan ( dengan lama proses 6’) dikerjakan dengan kwantum waktu 5’. Saat mulai proses A adalah 07:00 sampai 07:05. Saat Saat 07:0 07:05 5 pros proses es A sisa sisa 1’, 1’, dan dan pros proses esor or bera berali lih h ke pros proses es B, sementara proses A di-blocked. Proses B dimulai 07:05 sampai 07:10. Saat 07:10 proses B sisa 3’, dan prosesor beralih ke proses C, sementara sementara proses B di-blocked. Proses C dimulai 07:10 sampai 07:15. Saat 07:15 proses C sisa 5’, dan prosesor beralih ke proses D, sementara sementara proses C di-blocked. Proses D dimulai 07:15 sampai 07:20. Saat 07:20 proses D sisa 2’, dan prosesor beralih ke proses E, sementara proses D di-blocked. Proses E dimulai 07:20 sampai 07:24 (sampai selesai), karena proses E memiliki lama proses 4 menit (lebih rendah dari kwantum waktu, yaitu 5’). Setelah E selesai prosesor kembali mengerjakan sisa proses A (sisa 1’) yang yang di-blo di-blocke cked, d, yaitu yaitu dari dari 07:24 07:24 sampai sampai 07:25 07:25 (sampa (sampaii selesa selesai), i), kemudian dilanjutkan dengan mengerjakan sisa proses B (sisa 3’), yaitu yaitu 07:25 07:25 sampai sampai 07:28 07:28 (sampa (sampaii selesa selesai), i), kemudi kemudian an dilan dilanjut jutkan kan dengan mengerjakan sisa proses C (sisa 5’), yaitu 07:28 sampai 07:33, kemudian dilanjutkan dengan mengerjakan sisa proses D (sisa 2’), yaitu 07:33 sampai 07:35.
7
3. PS (Pririty Schedulling)
Ide penjadwalan adalah tiap proses diberi pioritas dan proses berprioritas tertinggi running (mendapat jatah waktu pemroses). Prioritas dapat diberikan secara : •
•
Prioritas statis (static priorities). Adal Adalah ah prio priori rita tass tak tak beru beruba bah h dima dimana na keun keungg ggul ulan anny nyaa muda mudah h di impl mplementasikan dan mempunyai overhe rhead rel relatip kecil. Kelemahannya penjadwalan tak tanggap perubahan lingkungan yang mungkin menghendaki penyesuaian prioritas. Prioritas dinamis (dynamic Priorities). Merupa Merupakan kan mekani mekanisme sme menang menanggap gapii peruba perubahan han lingku lingkunga ngan n sistem sistem beropersi. Prioritas awal diberikan ke proses mungkin hanya berumur pendek setelah disesuaikan kenilai yang lebih tepat sesuai lingkungan. lingkungan. Kelemahan Kelemahannyany nyanyaa implementa implementasi si mekanisme mekanisme prioritas prioritas dinamis dinamis lebih komp komple leks ks dan dan memp mempun unya yaii over overhe head ad lebi lebih h besa besar. r. Over Overhe head ad ini ini dimbangi dengan peningkatan daya tanggap sistem.
Algoritma dituntun oleh keputusan untuk memenuhi kebijaksanaan tertentu yang menjadi tujuan. Algoritma sederhana yang memberi layanan bagus adalah men-set prioritas dengan nilai 1/f dimana f adalah ratio kwanta terakhir yang digunakan proses. •
• •
Proses yang menggunakan 2 msec kwanta 100 ms maka prioritasnya 50. Proses yang berjalan selama 50 ms sebelum blocked berprioritas 2. Proses yang menggunakan seluruh kwanta berprioritas 1.
Kebija Kebijaksa ksanaa naan n yang yang ditera diterapka pkan n adalah adalah jamina jaminan n proses proses-pro -proses ses mendap mendapat at layanan adil dari pemroses dalam arti jumlah waktu pemroses yang sama. Keun Keungg ggul ulan an algo algori ritm tmaa penj penjad adwa wala lan n berp berpri rior orit itas as bias biasan anya ya meme memenu nuhi hi kebijaksanaan yang ingin mencapai masksimasi suatu criteria diterapkan. Alg Algorit oritma ma penja enjad dwala walan n berp berpri rio orita ritass dapa apat diko ikombin mbinas asik ikan an yait yaitu u mengelompokkan proses-proses menjadi kelas–kelas prioritas. Penjadwalan berprioritas diterapkan antar kelas–kelas proses itu. Penjadwalan RR atau FIFO diterapkan pada proses–proses disatu kelas.
8
4. GS (Guaranteed Schedulling)
Penj Penjad adwa wala lan n ini ini meru merupa paka kan n penj penjad adwa wala lan n non non pree preemp mpti tive ve dan dan penjadwalan berprioritas dinamis. Penjadwalan ini berupaya memberi tiap pemakai daya pemroses yang sama. Jika terdapan N pemakai, tiap pemakai mendapat 1/N daya pemroses. Sistem merekam besar waktu pemroses yang tela telah h digu diguna naka kan n pros proses es seja sejak k logi login n dan dan juml jumlah ah wakt waktu u pemr pemros oses es yang yang digunakan seluruh proses. Karena jumlah waktu pemroses setiap pemakai dapat dapat diket diketahu ahui, i, maka maka dapat dapat dihitu dihitung ng rasio rasio antara antara waktu waktu pemros pemroses es yang yang sesungguhnya harus diperoleh yaitu 1/N waktu pemroses seluruhnya dan waktu waktu pemros pemroses es yang yang telah telah diperu diperuntu ntukka kkan n proses proses itu. itu. Penjad Penjadwal wal akan akan menj menjal alan anka kan n pros proses es deng dengan an rasi rasio o tere terend ndah ah samp sampai ai rasi rasio o pros proses es diat diatas as pesaing terdekatnya.
5. Multiple Feedback Queues
Ide dasar dari algoritma ini berdasarkan pada sistem prioritas proses. Prin Prinssipn ipnya, ya, jika jika seti setiap ap pros prosees dap dapat dikel ikelo ompok mpokka kan n berd erdasa asarka rkan prioritasnya, maka akan didapati didapati queue seperti pada pada gambar berikut:
Dari gambar tersebut terlihat bahwa akan terjadi pengelompokan proses proses berdasarkan prioritasnya. Kemudian muncul ide untuk menganggap kelomp kelompokok-kel kelomp ompok ok tersbu tersbutt sebaga sebagaii sebuah sebuah antria antrian-a n-antr ntrian ian kecil kecil yang yang merupak merupakan an bagian bagian dari dari antria antrian n keselu keseluruh ruhan an proses proses,, yang yang sering sering diseb disebut ut dengan algoritma multilevel queue. Dalam hal ini, dapat dilihat bahwa seolah-olah algoritma dengan prioritas yang dasar adalah algoritma multilevel queue dimana setiap queue akan berjalan dengan algoritma FCFS yang memiliki banyak kelemahan. Oleh karena itu, dalam prakteknya, algoritma multilevel queue memungkinkan 9
adanya penerapan algoritma internal dalam masing-masing sub-antriannya yang bisa memiliki algoritma internal yang berbeda untuk meningkatkan kinerjanya. Berawal dari priority scheduling, algoritma ini pun memiliki kelemahan kelemahan yang sama dengan dengan priority priority schedulin scheduling, g, yaitu sangat mungkin bahwa suatu proses pada queue dengan prioritas rendah bisa saja tidak mendap mendapat at jatah jatah CPU. CPU. Untuk Untuk mengat mengatasi asi hal terseb tersebut, ut, salah salah satu satu carany caranyaa adalah adalah dengan dengan memodi memodifik fikasi asi algori algoritma tma ini ini dengan dengan adanya adanya jatah jatah waktu waktu maksimal untuk tiap antrian, sehingga jika suatu antrian memakan terlalu banyak waktu, maka prosesnya akan dihentikan dan digantikan oleh antrian dibawahnya, dan tentu saja batas waktu untuk tiap antrian bisa saja sangat berbeda tergantung pada prioritas masing-masing antrian. MFQ (Multiple Feedback Queue) Algoritma ini mirip sekali dengan algoritma multilevel queue. Perbedaannya ialah algoritma ini mengizinkan proses untuk pindah antrian. Jika suatu proses menyita CPU terlalu lama, maka proses itu akan dipindahkan ke antrian yang lebih rendah. Hal ini menguntungkan proses interaksi karena proses ini hanya memakai waktu CPU yang sedikit. Demikian pula dengan proses yang menunggu terlalu lama. Proses ini akan dinaikkan tingkatannya. Biasan Biasanya ya priori prioritas tas tertin tertinggi ggi diberi diberikan kan kepada kepada proses proses dengan dengan CPU burst burst terkecil, dengan begitu CPU akan terutilisasi penuh dan M/K dapat terus sibu sibuk. k. Sema Semaki kin n rend rendah ah ting tingka kata tann nnya ya,, panj panjan ang g CPU CPU burs burstt pros proses es juga juga semakin besar.
Algoritma ini didefinisikan melalui beberapa parameter, antara lain : 1. 2. 3. 4. 5.
Juml Jumlah ah antr antria ian. n. Algoritma Algoritma penjadwal penjadwalan an tiap antrian. antrian. Kapan Kapan menaikkan menaikkan proses proses ke ke antrian antrian yang yang lebih lebih tinggi. tinggi. Kapan Kapan menurunkan menurunkan proses proses ke antrian antrian yang lebih lebih rendah. rendah. Antrian Antrian mana yang yang akan akan dimasuki dimasuki proses proses yang membutu membutuhkan. hkan.
10
Dengan Dengan pendefini pendefinisian sian seperti seperti tadi membuat algoritma algoritma ini sering dipakai, dipakai, karena karena algori algoritma tma ini mudah mudah dikonf dikonfigu iguras rasii ulang ulang supaya supaya cocok cocok dengan dengan sist sistem em.. Tapi Tapi untu untuk k meng mengat atah ahui ui mana mana penj penjad adwa wall terb terbai aik, k, kita kita haru haruss mengetahui nilai parameter tersebut. Multilevel feedback queue adalah salah satu algoritma yang berdasar pada algo algori ritm tmaa mult multil ilev evel el queu queue. e. Perb Perbed edaa aan n mend mendas asar ar yang yang memb membed edak akan an multilevel feedback queue dengan multilevel queue biasa adalah terletak pada adanya kemungkinan suatu proses berpindah dari satu antrian ke antria antrian n lainny lainnya, a, entah entah dengan dengan priori prioritas tas yang yang lebih lebih rendah rendah ataupu ataupun n lebih lebih tinggi, misalnya pada contoh berikut. 1. Semu Semuaa prose rosess yan yang baru baru data atang akan kan dil dileta etakka kkan pada ada que queue 0 ( quantum= 8 ms). 2. Jika Jika suatu suatu proses proses tidak dapat dapat diseles diselesaik aikan an dalam 8 ms, maka proses proses tersebut tersebut akan dihentikan dihentikan dan dipindahkan dipindahkan ke queue queue 1 ( quantum= quantum= 16 ms). 3. Queue Queue 1 hanya akan akan dikerjak dikerjakan an jika tidak tidak ada ada lagi proses proses di queue queue 0, dan jika suatu proses di queue 1 tidak selesai dalam 16 ms, maka proses tersebut akan dipindahkan dipindahkan ke queue 2. 4. Queue Queue 2 akan dikerjak dikerjakan an bila queue queue 0 dan 1 kosong, kosong, dan dan akan berjalan berjalan dengan algoritma FCFS. Disini terlihat bahwa ada kemungkinan terjadinya perpindahan proses antar queu queue, e, dala dalam m hal hal ini ini dite ditent ntuk ukan an oleh oleh time time quan quantu tum, m, namu namun n dala dalam m prakteknya penerapan algoritma multilevel feedback queue akan diterapkan dengan mendefinisikan terlebih dahulu parameter-parameternya, yaitu:
1. 2. 3. 4. 5.
Juml Jumlah ah antr antria ian. n. Algori Algoritma tma inte interna rnall tiap tiap queue. queue. Aturan Aturan sebuah sebuah proses proses naik ke antrian antrian yang yang lebih lebih tinggi. tinggi. Aturan Aturan sebuah sebuah proses proses turun turun ke antrian antrian yang yang lebih lebih rendah. rendah. Antrian Antrian yang yang akan dimasuki dimasuki tiap tiap proses proses yang baru baru datang. datang.
Contoh:
Terdapat tiga antrian; Q1=10 ms, FCFS Q2=40 ms, FCFS Q3=FCFS proses 11
yang masuk, masuk ke antrian Q1. Jika dalam 10 ms tidak selesai, maka proses tersebut dipindahkan ke Q2. Jika dalam 40 ms tidak selesai, maka dipindahkan lagi ke Q3. Berdasarkan hal-hal di atas maka algoritma ini dapat digunakan secara fleksibel dan diterapkan sesuai dengan kebutuhan sistem. Pada zaman sekarang ini algoritma multilevel feedback queue adalah salah satu yang paling banyak digunakan.
6. Shortest Job First (SJF)
Dala Dalam m Sist Sistem em Oper Operas asii dike dikena nall isti istila lah h multiprograming, yang bertujuan untuk memaksimalkan penggunaan CPU dengan cara mengatur alok alokas asii wakt waktu u yang yang digu diguna naka kan n oleh leh CPU, CPU, sehi sehing ngga ga pros proses es berj berjal alan an sepanjang waktu dan memperkecil waktu idle. idle. Oleh karena itu perlu adanya penjadwalan proses-proses yang ada pada sistem. Untuk sistem yang hanya mempunyai prosesortunggal (uniprosesor), hanya ada satu proses yang dapat berjalan setiap waktunya. Jika ada proses lebih dari satu maka proses yang lain lain haru haruss menu menung nggu gu samp sampai ai CPU CPU beba bebass dan dan siap siap untu untuk k dija dijadw dwal alka kan n kembali. Penjad Penjadwal walan an berka berkaita itan n dengan dengan permas permasala alahan han memutu memutuska skan n proses proses mana mana yang yang akan akan dila dilaks ksan anak akan an dala dalam m suat suatu u sist sistem em.. Pros Proses es yang yang belu belum m mendapat jatah alokasi dari CPU akan mengantri di ready queue. queue . Algoritma penjadwalan berfungsi untuk menentukan proses manakah yang ada di ready ready queue queue yang yang akan akan diek diekse seku kusi si oleh oleh CPU. CPU. Bagi Bagian an beri beriku kutt ini ini akan akan memberi memberikan kan ilustr ilustrasi asi algori algoritma tma penjad penjadwal walan an Shor Shorte test st Job Job Firs First t . Pad Pada algo algori ritm tmaa ini ini seti setiap ap pros proses es yang yang ada ada di ready ready queue queue akan dieksekus dieksekusii berdasarkan burst time terkecil. Hal ini mengakibatkan waiting time yang pendek untuk setiap proses dan karena hal tersebut maka waiting time rataratanya juga menjadi pendek, sehingga dapat dikatakan bahwa algoritma ini adalah algoritma yang optimal. Contoh 1:
12
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-r -rat ataa dan dan turn turnar arou ound nd time time dari dari keem keempa patt pros proses es ters terseb ebut ut deng dengan an mengunakan algoritma SJF. rata-rata untuk ketiga proses tersebut adalah sebesar (0 +6+3+7)/4=4 ms.
Gambar Shortest Job First (Non-Preemptive).
rata-rata untuk ketiga porses tersebut adalah sebesar (9+1+0+2)/4=3 ms. Algoritma ini dapat dibagi menjadi dua bagian yaitu : 1. Preemptive Penjadwalan Preemptive mempunyai arti kemampuan system operasi untu untuk k memb member erhe hent ntik ikan an seme sement ntar araa pros proses es yang yang seda sedang ng berj berjal alan an untu untuk k memberi ruang kepada proses yang prioritasnya lebih tinggi. Jika ada proses yang yang seda sedang ng diek diekse seku kusi si oleh oleh CPU CPU dan dan terd terdap apat at pros proses es di ready ready queue queue dengan burst time yang lebih kecil daripada proses yang sedang dieksekusi tersebut, maka proses yang sedang dieksekusi oleh CPU akan digantikan oleh proses yang berada di ready queue tersebut. Preemptive SJF sering disebut juga Shortest-Remaining-Time-Firstschedul Shortest-Remaining-Time-Firstscheduling. ing. 2. Non-preemptive Non-preemptive Penjadwalan Non Preemptive ialah ialah salah salah satu satu jenis jenis penjad penjadwal walan an dimana sistemoperasi tidak pernah melakukan context switch dari proses yang sedang berjalan ke proses yang lain. Dengan kata lain, proses yang sedang berjalan tidak bisa di- interupt . interupt . CPU tidak memperbolehkan proses yang ada di ready queue untuk menggeser proses yang sedang dieksekusi oleh CPU meskipun proses yang baru tersebut mempunyai burst time yang lebih kecil.
13
BAB II PENUTUP KESIMPULAN
Algoritma diperlukan untuk mengatur giliran proses-proses yang ada di ready queue yang mengantri untuk dialokasikan ke CPU. Terdapat berbagai macam algoritma, antara lain: 1. Highest Ratio Next (HRPN). Algoritma ini mendahulukan proses pendek daripada yang yang panjang. Kelemahannya, waiting time rata-rata cukup lama. 2. Round Robin. Algoritma ini menggilir proses-proses yang ada diantrian dengan jatah time quantum yang sama. Jika waktu habis, CPU dialokasikan ke proses selanjutnya 3. Priority Scheduling. Algoritma ini mendahulukan prioritas terbesar. Kelemahannya, prioritas kecil tidak mendapat jatah CPU Hal ini dapat diatasi dengan aging yaitu semakin lama lama menunggu, prioritas semakin tinggi. 4. GS (Guaranteed ( Guaranteed Schedulling). Penjadwalan ini merupakan penjadwalan non preemptive dan penjadwalan berprioritas dinamis. 5. Multilevel Feedback Queue. Pada dasarnya sama dengan Multilevel Queue, yang membedakannya adalah pada algoritma ini diizinkan untuk pindah antrian. 6. Shortest Job First. Algoritma ini mendahulukan proses dengan CPU burst terkecil sehingga akan mengurangi waiting time rata-rata Keenam algoritma penjadwalan memiliki karakteristik beserta keunggulan dan kelemahannya masing-masing. Namun, Multilevel Feedback Queue Scheduling sebagai algoritma yang paling kompleks, adalah algoritma yang paling banyak digunakan digunakan saat ini.
14
DAFTAR PUSTAKA
http://www.scribd.com/doc/13395162/Algoritma-Penjadwalan-Proseshttp://www.scribd.com/doc/13395162/A lgoritma-Penjadwalan-ProsesShortest-Job-First-SJF.. Shortest-Job-First-SJF http://www.1b4zdoc.blogspot.com/.../algoritma-penjadwalan-multip http://www.1b4zdoc.blogspot.com/.../ algoritma-penjadwalan-multiplelefeedback . http://www.files.myopera.com/sonival/blog/materi%207.. http://www.files.myopera.com/sonival/blog/materi%207 http://www.forum.i-tech.ac.id/.. http://www.forum.i-tech.ac.id/ http://www.en.wikipedia.org/.../High http://www.en.w ikipedia.org/.../Highest_response_ratio_n est_response_ratio_n . http://www.blog.unsri.ac.id/yunidwiherliana/welcome/algoritma. http://www.blog.unsri.ac.id/yunidwi herliana/welcome/algoritma...pada.../51 ..pada.../51 05/.. 05/ http://www.hilman.web.id/posting/blog/1098/algoritma-pen http://www.hilman.web.id/posting/b log/1098/algoritma-penjadwalan-padajadwalan-padacpu.html
15