Algoritma Penggantian Page FIFO (Paging) – Sama halnya dengan artikel yang sebelumnya, Alogritma Penggantian Page FIFO ini merupakan satu kesatuan dalam sebuah Paging. Berbeda dengan Page Optimal, Page FIFO ini menggunakan dasarmekanisme First-In-First-Out dalam pengeksekusian programnya.
Algoritma Pengganti Page FIFO
Mekanisme dari algoritma ini yaitu memerlukan pengelolaan list page di memory. Elemen terdepan adalah page tertua dan ujungbelakang adalah page paling terakhir datang. Bila terjadi fault, page elemen terdepan digantikan dan page baru ditambahkan diujung belakang list. Algoritma ini jarang digunakan tetapi dapat dikombinasikan.
Contoh FIFO :
String pengacuan yang dilakukan pada saat mengeksekusi program adalah : (3 Page)
2 3 2 1 5 2 4 5 3 2 5 2
Solusi
F | F |
Algoritma Penggantian Page Modifikasi dari FIFO
Kelemahan FIFO adalah algoritma dapat memilih untuk memindahkan page yang sering digunakan lama yang berada di dalam memory. Kemungkinan ini menjadi kelemahan karena ini dapat dihindari dengan hanya memindahkan page yang tidak diacu. Page ditambahkan kedalam bit R untuk mencatat apakah page sedang diacu atau tidak. Variasi dari FIFO adalah :
1. Alogritma penggantian page Second Chance
Mekanismenya :
a. Saat terjadi fault, algoritma memilih page elemen terdepan untuk diganti bila R bernilai 0
b. Bila R bernilai 1, maka bit page terdepan list direset menjadi 0 dan diletakkan diujung belakang list.
Mekanismenya :
a. Saat terjadi fault, algoritma memilih page elemen terdepan untuk diganti bila R bernilai 0
b. Bila R bernilai 1, maka bit page terdepan list direset menjadi 0 dan diletakkan diujung belakang list.
2. Alogritma penggantian page clockMekanismenya :
a. Pada algoritma ini semua page merupakan list melingkar yang membentuk pola jam. Terdapat penujuk pointer ke page tertua.
b. Bila R = 0, maka page digantikan. Page baru ditempatkan di page yang telah digantikan dan penunjuk dimajukan satu posisi ke page berikutnya.
c. Bila R = 1, maka bit R direset menjadi 0 dan penunjuk dimajukan satu posisi ke page berikutnya.
a. Pada algoritma ini semua page merupakan list melingkar yang membentuk pola jam. Terdapat penujuk pointer ke page tertua.
b. Bila R = 0, maka page digantikan. Page baru ditempatkan di page yang telah digantikan dan penunjuk dimajukan satu posisi ke page berikutnya.
c. Bila R = 1, maka bit R direset menjadi 0 dan penunjuk dimajukan satu posisi ke page berikutnya.
Kedua algoritma sama, hanya saja berbeda pada implementasiannya, yaitu :
1. Algoritma penggantian page Second Chance menggunakan list lurus melingkar
2. Alogritma penggantian page Clock menggunakan list melingkar.
1. Algoritma penggantian page Second Chance menggunakan list lurus melingkar
2. Alogritma penggantian page Clock menggunakan list melingkar.
Menarik bukan? Algoritma Penggantian Page FIFO ini umumnya sangat mudah dipahami. Karena mekanisme algoritma ini sederhana dan sering kali kita digunakan. Algoritma FIFO ini juga merupakan salah satu cara pengindentifikasian fault dalam sebuah Paging. Sekian dari saya… Salam IT ^_^
Sumber :bierpinter.com