IKI 20230 Sistem Operasi Konsep Page Replacement (Pemindahan Halaman)
Disusun oleh : Binsar Tampahan (1200000204) Risvan Ardiansyah (1202000869) Fakultas Ilmu Komputer Universitas Indonesia 2004
IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.
1/13
2/13
Pengantar Konsep Pemindahan Halaman
Sebelum dibahas mengenai pemindahan halaman, berikut akan dibahas mengenai konsep memori virtual dan demand paging yang merupakan dasar dari pemindahan halaman.
Definisi Memori Virtual Suatu metode yang memisahkan antara memori logis dan memori fisik dalam eksekusi suatu proses.
Implementasi Memori Virtual Dapat dilakukan dengan cara : 1. Demand Paging ( Permintaan Halaman ) 2. Demand Segmentation Metode segmentation tidak akan dibahas karena sulit diimplementasikan. IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.
3/13
Permintaan Halaman Definisi Permintaan Halaman Permintaan halaman adalah permintaan pemberian page ( halaman ) yang berarti halaman yang hanya dibutuhkan saja dimasukkan ke dalam memori fisik sehingga pemakaian memori fisik menjadi lebih efektif dan efisien.
Valid-Invalid Bit Bit ini digunakan untuk menandakan apakah halaman yang bersangkutan sedang berada di memori fisik atau tidak. Bit ini dapat dilihat pada page table. Ada 2 jenis bit yaitu : Valid
: 1 à halaman tersebut berada di memori fisik
Invalid : 0 à halaman tidak berada pada logical address space dari proses atau halaman itu masih berada di disk dan belum dimasukkan ke dalam memori fisik IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.
4/13
Page Fault Definisi Page Fault Page fault atau kesalahan halaman adalah sebuah interupsi yang disebabkan sebuah program mengakses halaman yang belum dimasukkan ke dalam memori fisik.
Mengapa kesalahan halaman bisa terjadi? Bila sebuah proses sedang berjalan dan mengakses halaman yang berada di memori (ditandai dengan valid bit) maka proses akan berjalan normal. Namun, apa yang terjadi ketika sebuah proses mengakses halaman yang tidak ada di memori fisik? Akan muncul sebuah keadaan yang disebut page-fault trap (perangkap kesalahan halaman) yang ditangani oleh Sistem Operasi.
IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.
5/13
Penanganan Kesalahan Halaman Langkah-langkah menangani kesalahan halaman : 1.
Periksa tabel internal atau PCB ( Process Control Blocks ) proses tersebut. Bila alamatnya invalid maka program tersebut tidak dijalankan ( abort )
2.
Bila alamatnya valid namun belum dimasukkan ke dalam memori fisik, maka masukkan.
3.
Cari frame yang kosong pada memori fisik. Bila frame penuh, lakukan pergantian halaman.
4.
Jadualkan operasi sebuah disk untuk membaca halaman tersebut ke frame yang baru dialokasikan.
5.
Saat pembacaan selesai, ubah validation bit menjadi “1” yang berarti halaman telah ada di memori fisik lalu ulangi lagi dari langkah 1.
IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.
6/13
Konsep Pergantian Halaman Frame pada memori fisik dapat penuh atau kosong pada suatu saat. Kalau kosong dapat digunakan langsung, tetapi kalau penuh gunakan algoritma pergantian halaman. Algortima pergantian halaman akan dibahas kemudian.
Dengan kata lain pergantian halaman adalah dasar dari permintaan halaman, yaitu ketika terjadi kesalahan halaman terjadi pergantian halaman dilakukan dengan cara mencari frame pada memori fisik yang akan dijadikan korban (victim). Kemudian swap out frame tersebut dan swap in halaman yang diinginkan ke dalam frame itu. Lalu ulangi dari langkah awal untuk menjalankan halaman proses yang baru dimasukkan ke dalam memori fisik.
IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.
Keadaan Yang Membutuhkan Pergantian Halaman
Sumber : Applied Operating System, Silberchatz, Galvin, Gagne, edisi VI tahun 2002. IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.
7/13
8/13
Langkah-langkah Pergantian Halaman (1): 1.
Cari lokasi yang diinginkan oleh halaman yang masih berada di disk
2.
Cari frame yang kosong : a.
Jika ada, maka gunakan frame tersebut
b.
Jika tidak ada, maka kita bisa mengosongkan frame yang sedang tidak dipakai. Gunakan algoritma pergantian halaman untuk menentukan frame yang akan dikosongkan.
c.
Tulis halaman yang telah dipilih ke disk, ubah page-table ( tabel halaman ) dan frame-table ( tabel frame ).
3.
Membaca halaman yang diinginkan ke dalam frame kosong yang baru sehingga frame diisi dengan halaman yang baru dan tabel frame diubah sesuai dengan halaman yang baru dan ulangi proses dari awal
IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.
9/13
Langkah-Langkah Pergantian Halaman
Sumber : Applied Operating System, Silberchatz, Galvin, Gagne, edisi VI tahun 2002.
IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.
10/13
Perbaikan pada Pergantian Halaman Pergantian halaman memerlukan dua langkah swap, yaitu swap-out dan swap-in halaman ke dalam frame pada memori fisik. Keadaan ini menyebabkan terjadinya overhead dimana service-time page fault menjadi lebih besar dan peningkatan effective access time (EAT). Overhead ini dapat diatasi dengan menggunakan modify bit ( dirty bit ).
Arti dari penggunaan modify bit : Ø Bila dirty bit di-set, maka halaman itu sudah pernah diubah dan harus ditulis ulang ke backing store sebelum dijadikan korban (victim) Ø Bila dirty-bit belum di-set, maka halaman itu belum pernah diubah sejak berada dalam memori fisik, sehingga tidak perlu ditulis ke backing store.
IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.
11/13
Algoritma Pemindahan Halaman (1) Ada beberapa macam algoritma pemindahan halaman yang dapat digunakan. Algoritma yang terbaik adalah yang memiliki tingkat kesalahan halaman terendah. Selama jumlah frame meningkat, jumlah kesalahan halaman akan menurun. Peningkatan jumlah frame dapat terjadi jika memori fisik diperbesar.
Evaluasi algoritma pemindahan halaman dapat dilakukan dengan menjalankan sejumlah reference string ( string acuan ) di memori dan menghitung jumlah kesalahan halaman yang terjadi. Sebagai contoh, suatu proses memiliki urutan alamat: 0100, 0432, 0101, 0612, 0102, 0103, 0104, 0101, 0611, 0102, 0103, 0104, 0101, 0610, 0102, 0103, 0104, 0101, 0609, 0102, 0105; per 100 bytes-nya dapat kita turunkan menjadi string acuan: 1, 4, 1, 6, 1, 6, 1, 6, 1, 6, 1.
IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.
12/13
Algoritma Pemindahan Halaman (2) •
Bertujuan untuk mendapatkan page fault rate terendah.
•
Ada beberapa algoritma pergantian halaman, yaitu : 1. Algoritma FIFO 2. Algoritma Optimal 3. Algoritma LRU 4. Algoritma Perkiraan LRU 5. Algoritma Counting 6. Algoritma Page Buffering
IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.
13/13
Rujukan •
[Silberschatz2002] Abraham Silberschatz, Peter Galvin, dan Greg Gagne, 2002, Applied Operating Systems, Sixth Edition, John Wiley & Sons.
•
[Tanenbaum1997] Andrew S Tanenbaum dan Albert S Woodhull, 1997, Operating Systems Design and Implementation, Second Edition, Prentice-Hall.
•
http://bebas.vlsm.org/v06/Kuliah/SistemOperasi/BUKU/SistemOperasi.pdf
•
http://www.iiitmk.ac.in/~courses/itm201/2003-inter/modules/8_virtualmemory.htm
•
http://www.cs.vu.nl/~ast/books/mos2/
IKI 20230 Sistem Operasi – Konsep Page Replacement oleh Binsar Tampahan dan Risvan A Silahkan menggandakan dan mengedarkan berkas ini, tanpa mengubah nota hak cipta ini.