Dukungan Perangkat Keras Pemberian Halaman

3.5. Tabel Halaman Bertingkat

Hierarchical paging atau pemberian halaman secara bertingkat merupakan sebuah metode pemberian halaman dengan cara membagi sebuah page table menjadi beberapa page table yang berukuran lebih kecil. Metode ini merupakan solusi dari permasalahan alokasi page table berukuran sangat besar pada main memory yang umumnya dihadapi pada sistem komputer modern yang memiliki ruang alamat logika yang besar sekali mencapai 2 pangkat 32 sampai 2 pangkat 64. Konsep dasar metode ini yaitu menggunakan pembagian tingkat setiap segmen alamat logika. Setiap segmen menunjukkan indeks dari sebuah page table, kecuali segmen terakhir yang menunjuk langsung ke frame pada memori fisik. Segmen terakhir ini disebut offset d. Dapat disimpulkan bahwa segmen yang terdapat pada alamat logika menentukan berapa level paging yang digunakan yaitu banyak segmen dikurang 1. Gambar 3.4. Translasi Alamat pada Two-Level Paging Dengan metode ini, isi pada indeks page table pertama akan menunjuk pada page table kedua yang indeksnya bersesuaian dengan isi dari page table pertama tersebut. Sedangkan isi dari page table kedua menunjukkan tempat dimana page table ketiga bermula, sedang segmen alamat logika kedua adalah indeks ke-n setelah starting point page table ketiga dan seterusnya sampai dengan segmen terakhir. 20 Sebagai contoh, pada suatu sistem komputer 32 bit dengan ukuran page 4 KB, alamat logika dibagi ke dalam nomor page yang terdiri dari 20 bit dan page offset-nya 12 bit. Karena page table-nya di- paging-kan lagi, maka nomor page-nya dibagi lagi menjadi 10 bit nomor page dan 10 bit page offset, sehingga dapat digambarkan sebagai berikut: Gambar 3.5. Contoh Two-level paging Metode Hierarchical paging ini memang dapat menghemat ruang memori yang dibutuhkan dalam pembuatan page table-nya sendiri, namun waktu akses yang diperlukan menjadi lebih besar karena harus melakukan akses berkali-kali untuk mendapatkan alamat fisik yang sebenarnya.

3.6. Tabel Halaman Dengan Hash

Metode ini umumnya digunakan untuk menangani masalah ruang alamat logika yang besarnya mencapai 64 bit karena struktur page table pada metode ini bisa menghemat ruang memori dalam jumlah yang cukup besar. Hashed page table menggunakan tabel hash sebagai page table-nya dengan ukuran yang terbatas untuk menghemat ruang memori dan sebuah hash function untuk mengalokasikan alamat virtual pada page table tersebut. Setiap entriblok pada page table berisi linked list yang menghubungkan elemen-elemen yang di- hash ke lokasi yang sama. Tiap elemen tersebut terdiri dari 3 field, yaitu virtual page number, nomor frame dimana alamat virtual tersebut dipetakan, dan pointer yang menunjukkan elemen berikutnya dalam linked list. Fungsi linked list disini adalah untuk mengatasi collision yang terjadi pada saat pengalokasian alamat virtual ke hash table yang ukurannya sangat terbatas. Mekanisme paging pada metode ini yaitu:

1. Alamat logika dipetakan ke suatu lokasientri di page table dengan menggunakan hash function.

2. Page number tersebut kemudian di simpan sebagai field pertama pada sebuah elemen dalam entri yang teralokasikan. 3. Page number tersebut lalu dipasangkan dengan frame number yang available yang disimpan pada field kedua di elemen yang sama . 21