Senin, 19 November 2012

ada yg GR (Guorenteed Schedulling) :P


3.     GR(Guorenteed Schedulling)


Penjadwalan ini memberikan janji yang realistis (memberi daya pemroses yang sama) untuk membuat dan menyesuaikan performance adalah jika ada N pemakai, sehingga setiap proses (pemakai) akan mendapatkan 1/N dari daya pemroses CPU.


Untuk mewujudkannya, sistem harus selalu menyimpan informasi tentang jumlah waktu CPU untuk semua proses sejak login dan juga berapa lama pemakai sedang login. Kemudian jumlah waktu CPU, yaitu waktu mulai login dibagi dengan n, sehingga lebih mudah menghitung rasio waktu CPU. Karena jumlah waktu pemroses tiap pemakai dapat diketahui, maka dapat dihitung rasio antara waktu pemroses yang sesungguhnya harus diperoleh, yaitu 1/N waktu pemroses seluruhnya dan waktu pemroses yang telah diperuntukkan proses itu.


Rasio 0,5 berarti sebuah proses hanya punya 0,5 dari apa yang waktu CPU miliki dan rasio 2,0 berarti sebuah proses hanya punya 2,0 dari apa yang waktu CPU miliki. 

Algoritma akan menjalankan proses dengan rasio paling rendah hingga naik ketingkat lebih tinggi diatas pesaing terdekatnya. Ide sederhana ini dapat diimplementasikan ke sistem real-time dan memiliki penjadwalan  dinamis.

sumber: blog.uin-malang.ac.id/sucis/.../Penjadwalan.docx 


pengertan PS (Priority Scheduling)


3.      PS(Priority Scheduling)

Setiap proses diberi prioritas dan proses yang berprioritas tertinggi mendapat jatah waktu lebih dulu (running). Diasumsikan bahwa masing-masing proses memiliki prioritas tertentu, sehingga akan dilaksanakan berdasar prioritas yang dimilikinya.

Penjadwalan berprioritas terdiri dari dua skema yaitu non preemptive dan preemptive. Jika ada proses P1 yang datang pada saat P0 sedang berjalan, maka akan dilihat prioritas P1. Seandainya prioritas P1 lebih besar dibanding dengan prioritas P0, maka pada non-preemptive, algoritma tetap akan menyelesaikan P0 sampai habis CPU burst-nya, dan meletakkan P1 pada posisi head queue. Sedangkan pada  preemptive, P0 akan dihentikan dulu, dan CPU ganti dialokasikan untuk P1.
Misalnya terdapat lima proses P1, P2, P3, P4 dan P5 yang datang secara berurutan dengan CPU burst dalam milidetik.


Waktu tunggu untuk P1 adalah 6, P2 adalah 0, P3 adalah 16, P4 adalah 18 dan P5 adalah 1 sehingga rata-rata waktu tunggu adalah (6 + 0 +16 + 18 + 1)/5 = 8.2 milidetik.
Dalam UNIX perintah untuk mengubah prioritas menggunakan perintah nice. Pemberian prioritas diberikan secara:
1)      Statis (Static Priorities) berarti prioritas tidak berubah.
Keunggulan :
• Mudah diimplementasikan.
• Mempunyai overhead relatif kecil.
Kelemahan :
• Tidak tanggap terhadap perubahan lingkungan yang mungkin menghendaki penyesuaian prioritas.
2)      Dinamis (Dynamic Priorities) merupakan mekanisme untuk menanggapi perubahan lingkungan system beroperasi. Prioritas awal yang diberikan ke proses mungkin hanya berumur pendek setelah disesuaikan ke nilai yang lebih tepat sesuai lingkungan.
Kelemahan :
Implementasi mekanisme prioritas dinamis lebih kompleks dan mempunyai overhead lebih besar. Overhead ini diimbangi dengan peningkatan daya tanggap sistem.
Contoh penjadwalan berprioritas :
Proses-proses yang sangat banyak operasi masukan/keluaran menghabiskan kebanyakan waktu menunggu selesainya operasinya masukan/keluaran. Proses-proses ini diberi prioritas sangat tinggi sehingga begitu proses. 
sumber: blog.uin-malang.ac.id/sucis/.../Penjadwalan.docx 




apa itu H R N ?___?



    HRN (Higest Rato New)

Adalah strategi penjadwalan dengan prioritas proses tidak hanya merupakan fungsi waktu layanan tetapi juga jumlah waktu tunggu proses. Begitu proses mendapat jatah pemroses, proses berjalan sampai \susunanpenjadwalan terselesaikan.

Prioritas dinamis HRN dihitung berdasarkan rumus :
Prioritas = (waktu tunggu + waktu layanan ) / waktu layanan

Karena waktu layanan muncul sebagai pembagi, maka job lebih pendek  berprioritas lebih baik, karena waktu tunggu sebagai pembilang maka proses yang telah menunggu lebih lama juga mempunyai kesempatan lebih bagus.

Disebut HRN, karena waktu tunggu ditambah waktu layanan adalah waktu tanggap, yang berarti waktu tanggap tertinggi yang harus dilayani.

sumber: blog.uin-malang.ac.id/sucis/.../Penjadwalan.docx 

eS eR eF alias SRF bin Sortest Ratio First


3 SRF(Sortest Ratio First)
Pada SRF,  proses dengan sisa waktu jalan diestimasi terendah dijalankan, termasuk proses-proses yang baru tiba.Pada SJF, begitu proses dieksekusi, proses dijalankan sampai selesai.Pada SRF, proses yang sedang berjalan (running) dapat diambil alih proses baru dengan sisa waktu jalan yang diestimasi lebih rendah.

Kelemahan :


         Mempunyai overhead lebih besar dibanding SJF. SRF perlu penyimpanan waktu layanan yang telah dihabiskan job dan kadang-kadang harus menangani peralihan.

         Tibanya proses-proses kecil akan segera dijalankan.

         Job-job lebih lama berarti dengan lama dan variasi waktu tunggu lebih lama dibanding pada SJF.
SRF perlu menyimpan waktu layanan yang telah dihabiskan , menambah overhead. Secara teoritis, SRF memberi waktu tunggu minimum tetapi karena overhead peralihan, maka pada situasi tertentu SFJ bisa memberi kinerja lebih baik dibanding SRF.


sumber: blog.uin-malang.ac.id/sucis/.../Penjadwalan.docx 

M F Q . . . . . . .



MFQ(Multiple Feedback queue)
Merupakan  penjadwalan berprioritas dinamis, penjadwalan ini untuk mencegah (mengurangi) banyaknya swapping dengan proses-proses yang sangat banyak menggunakan pemroses (karena menyelesaikan tugasnya memakan waktu lama) diberi jatah waktu (jumlah kwanta) lebih banyak dalam satu waktu. Penjadwalan ini juga menghendaki kelas-kelas prioritas bagi proses-proses yang ada. Kelas tertinggi berjalan selama satu kwanta, kelas berikutnya berjalan selama dua kwanta, kelas berikutnya berjalan empat kwanta, dan seterusnya.
 
Ketentuan yang berlaku adalah sebagai berikut 


·         Jalankan proses pada kelas tertinggi.
proses ini dijalalnkak saat pertamakali,yakni dimuai dari kelas tertinggi.


·         Jika proses menggunakan seluruh kwanta yang dialokasikan, maka diturunkan kelas prioritasnya.




·         Proses yang masuk untuk pertama kali ke sistem langsung diberi kelas tertinggi.

Mekanisme ini mencegah proses yang perlu berjalan lama swapping berkali-kali dan mencegah proses-proses interaktif yang singkat harus menunggu lama.

sumber: dataword PENJADWALAN.

RR (Round-Robin) ...(bukan robinhood :D )




Algoritma Round Robin (RR) didisain untuk sistem time sharing. 

Algoritma ini mirip dengan penjadwalan FCFS (First Come First Served) , namun preemption ditambahkan untuk switch (peralihan proses) antara proses. Antrian ready diperlakukan atau dianggap sebagai antrian sirkular. CPU menglilingi antrian ready dan mengalokasikan masing-masing proses untuk interval waktu tertentu sampai satu time slice /quantum.

Algoritma ini bekerja dengan menggilir proses yang ada pada antrian. Setiap Proses akan mendapat jatah sebesar time quantum. Jika time quantum-nya habis atau proses sudah selesai, CPU akan dialokasikan ke proses berikutnya. Tentu proses ini cukup adil karena tak ada proses yang diprioritaskan, semua proses mendapat jatah waktu yang sama dari CPU yaitu (1/n), dan tak akan menunggu lebih lama dari (n-1)q dengan q adalah lama 1 quantum. 

Ketentuan algoritma round robin adalah sebagai berikut: 1. Jika quantum dan proses belum selesai maka proses menjadi runnable dan pemroses dialihkan ke proses lain. 2. Jika quantum belum habis dan proses menunggu suatu kejadian (selesainya operasi I/O), maka proses menjadi blocked dan pemroses dialihkan ke proses lain. 3. Jika quantum belum habis tapi proses telah selesai, maka proses diakhiri dan pemroses dialihkan ke proses lain.

Algoritma ini sepenuhnya bergantung besarnya time quantum. Jika terlalu besar, algoritma ini akan sama saja dengan algoritma first come first served. Jika terlalu kecil, akan semakin banyak peralihan proses sehingga banyak waktu terbuang.

Algoritma penjadwalan ini dapat diimplementasi sebagai berikut: – Mengelola senarai proses read (runnable) sesuai urutan kedatangan. – Ambil proses yang berada di ujung depan antrian menjadi running. – Bila quantum belum habis dan proses selesai maka ambil proses di ujung depan antrian proses ready. – Jika quantum habis dan proses belum selesai maka tempatkan proses running ke ekor antrian proses ready dan ambil proses di ujung depan antrian proses ready.

Berikut Algoritma penjadwalan Round Robin secara Keseluruhan :

Setiap proses mendapat jatah waktu CPU (time slice/quantum) tertentu Time slice/quantum umumnya ntara 10 – 100 milidetik.
1.  Setelah time slice/quantum maka proses akan di-preempt dan dipindahkan ke antrian ready. 2.  Proses ini adil dan sangat sederhana.

Jikaterdapat n proses di “antrian ready ” dan waktu quantum q (milidetik), maka:
1.   Maka setiap proses akan mendapatkan 1/n dari waktu CPU. 2.   Proses tidak akan menunggu lebih lama dari: (n-1)q time units.

Performance dari algoritma ini tergantung dari ukuran time quantum
1.  Time Quantum dengan ukuran yang besar maka akan sama dengan FCFS 2.  Time Quantum dengan ukuran yang kecil maka time quantum harus diubah ukurannya lebih besar dengan respek                   pada context switch sebaliknya akan memerlukan ongkos yang besar.

Permasalahan utama pada Round Robin adalah menentukan besarnya time quantum. Jika time quantum yang ditentukan terlalu kecil, maka sebagian besar proses tidak akan selesai dalam 1 quantum. Hal ini tidak baik karena akan terjadi banyak switch, padahal CPU memerlukan waktu untuk beralih dari suatu proses ke proses lain (disebut dengan context switches time). Sebaliknya, jika time quantum terlalu besar, algoritma Round Robin akan berjalan seperti algoritma first come first served. Time quantum yang ideal adalah jika 80% dari total proses memiliki CPU burst time yang lebih kecil dari 1 time





SUMBER:


Apa Itu SJF ?????


Algortima SJF (Shortest Job First)

Algoritma ini digunakan ketika CPU bebas proses yang mempunyai waktu terpendek untuk menyelesaikannya mendapat prioritas. Seandainya dua proses atau lebih mempunyai waktu yang sama maka FCFS algoritma digunakan untuk menyelsaikan masalah tersebut.

Prinsip algoritma penjadwalan ini adalah, proses yang memiliki CPU burst paling kecil dilayani terlebih dahulu. Oleh karena itu, algoritma ini optimal jika digunakan, tetapi sulit untuk diimplementasikan karena sulit mengetahui CPU burst selanjutnya.
Ada dua skema dalam SJFS ini yaitu:

  1. Non premptive— ketika CPU memberikan kepada proses itu tidak bisa ditunda hingga selesai.
  2. premptive— bila sebuah proses datang dengan waktu proses lebih rendah dibandingkan dengan waktu proses yang sedang dieksekusi oleh CPU maka proses yang waktunya lebih rendah mendapatkan prioritas. Skema ini disebut juga Short – Remaining Time First (SRTF). Contoh :



Average waiting time = (0 + 6 + 3 + 7)/4 = 4
Contoh SJF Primtive
SJF algoritma mungkin adalah yang paling optimal, karena ia memberikan rata-rata minimum waiting untuk kumpulan dari proses yang mengantri.




Average waiting time = (9 + 1 + 0 +2)/4 = 3

Kesimpulan: PENTING PEMIRSA!!!

"Prinsip algoritma penjadwalan ini adalah, proses yang memiliki CPU burst paling kecil dilayani terlebih dahulu. Oleh karena itu, algoritma ini optimal jika digunakan, tetapi sulit untuk diimplementasikan karena sulit mengetahui CPU burst selanjutnya."

SUMBER:





Sedikit Tentang FIFO (first in first out)


ALGORITMA FIFO (FIRST IN FIRST OUT)

 
Algoritma ini adalah algoritma yang paling sederhana. Prinsip dari algoritma ini adalah seperti prinsip antrian (antrian tak berprioritas), halaman yang masuk lebih dulu maka akan keluar lebih dulu juga. Algoritma ini menggunakan struktur data stack. Apabila tidak ada frame kosong saat terjadi page fault, maka korban yang dipilih adalah frame yang berada di stack paling bawah, yaitu halaman yang berada paling lama berada di memori.



Pada awalnya, algoritma ini dianggap cukup mengatasi masalah tentang pergantian halaman, sampai pada tahun 70-an, Belady menemukan keanehan pada algoritma ini yang dikenal kemudian dengan anomali Belady. Anomali Belady adalah keadaan di mana page fault rate meningkat seiring dengan pertambahan jumlah frame , seperti yang bisa dilihat pada contoh di bawah ini.





Ketika jumlah frame ditambah dari 3 frame menjadi 4 frame, jumlah page fault yang terjadi malah bertambah (dari 14 page fault menjadi 15 page fault ). Hal ini biasanya terjadi pada kasus yang menginginkan halaman yang baru saja di-swap-out sebelumnya. Oleh karena itu, dicarilah algoritma lain yang mampu lebih baik dalam penanganan pergantian halaman seperti yang lainnya.

Intinya Jika susunan atu tumpukan paling dibawah diambila otomatis susnan yang diatasnya menjadi kacau, hingga FIFO sangat berguna karena sudah diatur. Oleh karena itu juga disebut First In, First Out..(pertama yg masuk,pertamagkeluar..emg apaan yah..hahaha  :D )


SUMBER: http://annasbawika.blogspot.com/2012/05/algoritma-fifo.html#axzz2CfqPQ39e