Anda di halaman 1dari 8

Nama : Wildan Septi Ramadhan

NIM : 2009085
Kelas : C2 - Ilmu Komputer

Hashed dan Inverted Paging pada pengelolaan Memori

Memory management atau Pengelolaan Memori adalah tindakan mengelola


memori komputer. Kebutuhan utama manajemen memori adalah untuk menyediakan cara
untuk secara dinamis mengalokasikan bagian-bagian dari memori untuk program atas
permintaan mereka, dan membebaskan untuk digunakan kembali ketika tidak lagi
diperlukan. Ini sangat penting untuk setiap sistem komputer canggih di mana lebih dari
satu proses mungkin berlangsung setiap saat. Fungsi Manajemen Memori adalah sebagai
berikut :
● Mengelola informasi yang dipakai dan tidak dipakai.
● Mengalokasikan memori ke proses yang memerlukan.
● Mendealokasikan memori dari proses telah selesai.
● Mengelola swapping atau paging antara memori utama dan disk

Perangkat Keras Paging


● Dikenal dengan Unit Manajemen Memori (MMU).
● Jika CPU ingin mengakses memori, CPU mengirim alamat memorinya ke MMU yang
akan menerjemahkannya ke alamat lain sebelum mengirim kembali ke unit memori.
- Alamat yang dihasilkan oleh CPU disebut alamat logis.
- Alamat yang didapat setelah melalui MMU disebut alamat fisik
Struktur Paging
.

1. Hashed Paging

Hashed Paging merupakan dalah teknik untuk menyusun tabel halaman


dalam memori. Dimana alamat fisik dari suatu halaman dalam memori virtual
akan dicari dengan menggunakan fungsi hash yang berisi alamat fisik yang sesuai.
Hashed paging berfungsi sebagai mekanisme pencocokan cepat antara alamat
virtual dan alamat fisik. Setiap elemen dalam tabel hash memiliki nomor halaman
virtual, nilai halaman yang dipetakan, dan penunjuk ke elemen berikutnya. Tabel
halaman yang di-hash biasanya digunakan di ruang alamat yang lebih besar dari
32 bit.Untuk setiap elemen dalam tabel hash, terdapat tiga bidang yang tersedia,
yaitu:
● Nomor Halaman Virtual (yang merupakan nilai hash).
● Nilai dari frame halaman yang dipetakan.
● Sebuah pointer ke elemen berikutnya dalam daftar berantai (linked list).
Gambar 1. Hashed Page (Sumber : www.javatpoint.com)

Cara Kerja Hashed Paging


1. Page number dari alamat logis diarahkan ke fungsi hash
2. .Lalu Fungsi hash menghasilkan nilai hash yang sesuai dengan nomor
halaman.
3. Nilai hash ini mengarah ke sebuah entri dalam tabel hash.
4. Setiap entri dalam tabel hash memiliki daftar berantai (Linked list). Di
sini,page number dibandingkan dengan entri pertama pada elemen
pertama. Jika ditemukan kecocokan, maka entri keduua diperiksa.

Dalam contoh ini, alamat logis mencakup page number P3 yang tidak cocok
dengan
elemen pertama dalam linked list karena elemen tersebut memiliki page number
P1. Maka kita akan melanjutkan dan memeriksa elemen berikutnya; elemen ini
memiliki entri page number yaitu P3, sehingga selanjutnya kita akan memeriksa
entri frame dari elemen tersebut, yaitu fr5. Kita akan menambahkan offset yang
disediakan dalam alamat logis ke nomor frame ini untuk mencapai alamat fisik
halaman. Lalu ada yang dinamakan clustered page tables.

Clustered page tables juga digunakan untuk membuat algoritma ini cocok
digunakan di ruang alamat 64-bit. Clustered page tables mirip dengan tabel
halaman ber-hash kecuali setiap entri dalam tabel hash merujuk pada banyak
halaman dari satu halaman tunggal (seperti pada tabel halaman ber-hash). Oleh
karena itu, satu entri dalam clustered page tables dapat menyimpan pemetaan
untuk beberapa frame halaman fisik. Clustered page tables berguna untuk ruang
alamat yang jarang terisi, di mana referensi memori tersebar di seluruh ruang
alamat (non-kontigu).

Karakterisitik Hashed Pading


Hashed Paging memiliki beberapa karakteristik kunci yang mempengaruhi cara
kerjanya, antara lain:
● Penggunaan Tabel Hash
Hashed Paging menggunakan tabel hash untuk pemetaan alamat
virtual ke halaman fisik. Setiap entri dalam tabel hash berisi nomor
halaman, bingkai halaman, dan penunjuk ke entri berikutnya. Hal ini
memungkinkan pencocokan cepat antara alamat virtual dan nomor
halaman dalam tabel hash.
● Hash function
Hashed paging menggunakan fungsi hash untuk mengalokasikan
halaman ke frame fisik.
● Kecepatan pencarian
Salah satu keunggulan hashed paging adalah kecepatan pencarian
yang cepat.
● Pencegahan Fragmentasi Eksternal
Salah satu keunggulan Hashed Paging adalah kemampuannya
untuk mencegah terjadinya fragmentasi eksternal yang umumnya terjadi
pada teknik pengelolaan memori lainnya. Dengan menggunakan tabel
hash, pengelolaan memori dapat dilakukan dengan lebih efisien.

Kelebihan Hashed Paging


Hashed Paging memiliki beberapa Kelebihan antara lain:
● Fast Search : Dengan menggunakan fungsi hash yang efisien, hashed
paging memungkinkan pencarian frame fisik yang sesuai dengan halaman
yang diminta oleh proses dapat dilakukan dengan cepat.
● Efficient memory utilization : Hashed paging memungkinkan alokasi
halaman yang lebih fleksibel dan efisien. Dikarenakan halaman-halaman
yang tidak perlu secara berurutan dalam memori fisik, melainkan dapat
tersebar di berbagai frame fisik yang tersedia. Hal ini dapat
mengoptimalkan penggunaan memori dan mengurangi fragmentasi.
Kekurangan Hashed Paging
Hashed Paging memiliki beberapa Kekurangan antara lain:
● Penggunaan memori tambahan : Hashed paging membutuhkan
penggunaan memori tambahan untuk menyimpan tabel hash. Jumlah
memori yang dibutuhkan akan meningkat seiring dengan jumlah entri
dalam tabel hash.
● Penanganan tabrakan : Jika terjadi tabrakan dalam tabel hash, yaitu dua
halaman virtual dengan nilai hash yang sama, diperlukan teknik
penanganan tabrakan yang membutuhkan waktu dan sumber daya
tambahan untuk mengelola entri yang bertabrakan.
● Kompleksitas implementasi : Implementasi hashed paging yang efisien
membutuhkan perhitungan dan manajemen fungsi hash yang baik. Hal ini
dapat mempengaruhi kompleksitas implementasi dan kinerja sistem.

2. Inverted Paging
Inverted paging adalah teknik pengelolaan memori yang digunakan dalam
sistem operasi komputer untuk mengatur ruang memori yang dialokasikan kepada
proses secara efisien. Ini merupakan pendekatan alternatif dari sistem paging
tradisional. Dalam sistem paging tradisional, setiap proses memiliki tabel halaman
sendiri yang memetakan halaman logis ke frame fisik dalam memori. Entri tabel
halaman menyimpan informasi pemetaan untuk setiap halaman dalam ruang
alamat proses tersebut.
Pada konsep normal paging, setiap proses memiliki tabel halaman sendiri
yang berisi entri dari semua halaman yang dimiliki oleh proses tersebut. Tabel
halaman ini dapat memakan banyak ruang memori, terutama jika terdapat
beberapa proses besar berjalan secara bersamaan. Hal ini mengakibatkan
pemborosan memori. Untuk mengatasi pemborosan memori tersebut,
digunakanlah inverted page table. Konsep inverted page table terdiri dari satu
entri tabel halaman untuk setiap frame dalam memori fisik. Jadi, jumlah entri
dalam inverted page table hanya sejumlah frame dalam memori fisik. Dengan
demikian, satu tabel halaman tunggal mewakili informasi paging dari
semua proses yang berjalan.

Karakteristik Interved Paging


Berikut adalah beberapa karakteristik dari inverted paging :
1. Tabel Halaman Global: Dalam inverted paging, digunakan sebuah tabel halaman
global tunggal yang menyimpan informasi pemetaan antara frame fisik dan
halaman logis. Tabel ini digunakan oleh semua proses yang berjalan di sistem.
2. Pemetaan dari Frame Fisik ke Halaman Logis: Berbeda dengan sistem paging
tradisional yang memetakan halaman logis ke frame fisik, inverted paging
memetakan frame fisik ke halaman logis. Setiap entri dalam tabel halama terbalik
menyimpan informasi tentang proses mana yang menggunakan frame tersebut dan
nomor halaman logis yang terkait.
3. Pengurangan Overhead Memori: Salah satu keuntungan utama inverted paging
adalah mengurangi overhead memori yang terkait dengan menyimpan tabel
halaman individu untuk setiap proses. Dengan menggunakan satu tabel halaman
global, memori yang diperlukan untuk menyimpan informasi pemetaan dapat
dikurangi secara signifikan.
4. Kompleksitas Pencarian: Pada inverted paging, pencarian dalam tabel
halamanterbalik dapat menjadi lebih kompleks dibandingkan dengan sistem
paging tradisional. Karena entri-entri tabel halaman terbalik tidak diorganisasi
secara langsung, diperlukan struktur data tambahan seperti tabel hash atau pohon
pencarian biner untuk meningkatkan efisiensi pencarian.
5. Perubahan Pada Proses Kontrol Memori: Penggunaan inverted paging
memerlukan perubahan pada mekanisme kontrol memori dalam sistem operasi.
Pengelola memori harus diperbarui untuk mengakomodasi tabel halaman terbalik
dan memastikan pemetaan yang konsisten antara frame fisik dan halaman logis.
6. Penggunaan Struktur Data Tambahan: Untuk meningkatkan efisiensi
pencarian dalam tabel halaman terbalik, struktur data tambahan seperti tabel hash
atau pohon pencarian biner seringkali digunakan. Struktur data ini membantu
mempercepat pencarian dan pengambilan informasi pemetaan.
7. Pemeliharaan Tabel Halaman: Dalam inverted paging, pemeliharaan tabel
halaman menjadi lebih kompleks karena semua proses menggunakan tabel
halaman global yang sama. Ketika sebuah proses berakhir atau mengalami
perubahan pemetaan, tabel halaman harus diperbarui secara tepat agar informasi
pemetaan tetap akurat.

Kelebihan Inverted Paging

● Pengurangan Overhead Memori: Dalam inverted paging, penggunaan


satu tabel halaman global mengurangi overhead memori yang terkait
dengan menyimpan tabel halaman individu untuk setiap proses.
● Efisiensi Memori: Dengan mengurangi overhead memori, inverted
paging membantu meningkatkan efisiensi penggunaan memori.
● Skalabilitas: Inverted paging memiliki keunggulan dalam menghadapi
pertumbuhan jumlah proses atau ukuran memori yang lebih besar.

Kekurangan Inverted Paging


● Kompleksitas Penanganan Page Fault: Ketika terjadi page fault dalam
metode Inverted Paging, penanganannya dapat menjadi lebih kompleks.
Sistem operasi perlu mencari frame kosong atau frame yang dapat
digantikan untuk membawa halaman yang diminta ke dalam memori fisik.
Pencarian frame kosong atau frame yang akan digantikan dapat
membutuhkan waktu yang lebih lama dan kompleksitas yang lebih tinggi
dibandingkan dengan sistem paging tradisional.
● Keterbatasan Informasi Paging: Dalam metode Inverted Paging, setiap
entri dalam inverted page table hanya dapat menyimpan informasi
pemetaan frame ke halaman. Informasi seperti atribut hak akses, bit akses,
atau atribut lainnya mungkin tidak dapat disimpan langsung dalam entri
tersebut. Oleh karena itu, sistem operasi perlu melakukan akses tambahan
atau menggunakan mekanisme lain untuk memperoleh informasi ini, yang
dapat mempengaruhi kinerja keseluruhan sistem.
● Peningkatan Waktu Pencarian: Meskipun Inverted Paging dapat
mengurangi overhead tabel paging, metode ini dapat mengakibatkan
peningkatan waktu pencarian pemetaan halaman. Ketika sistem perlu
mencari entri dalam inverted page table, pencarian harus dilakukan
melalui seluruh entri yang mungkin sesuai dengan nomor frame yang
dicari. Jika jumlah entri dalam tabel cukup besar, pencarian ini dapat
memakan waktu yang lebih lama dan berdampak pada performa sistem.

Cara Kerja Inverted Paging


CPU menghasilkan alamat logis untuk halaman yang perlu diakses.
Alamat logis atau logical address terdiri dari tiga entri: process id, nomor
halaman, dan offset, seperti yang ditunjukkan di bawah ini.

Gambar 2. Inverted Page (Sumber : www.javatpoint.com)


1. Pid mengidentifikasi proses yang membutuhkan halaman, nomor halaman
menunjukkan halaman mana dari proses tersebut yang diminta, dan offset
menunjukkan perpindahan yang diperlukan di dalam halaman.
2. Pencocokan pid dan nomor halaman dilakukan dalam inverted page table.
Inverted page table terdiri dari satu entri per frame dalam memori fisik.
Setiap entri dalam inverted page table mencakup informasi tentang alamat
fisik dan alamat virtual dari halaman yang sesuai.
3. Jika pencocokan pid dan nomor halaman ditemukan pada entri ke-i dalam
inverted page table, maka i dan offset digabungkan untuk menghasilkan
alamat fisik yang sesuai untuk halaman yang diminta oleh CPU.
4. Pengindeksan dalam inverted page table dilakukan berdasarkan alamat
fisik halaman, bukan alamat logis. Oleh karena itu, untuk mencari entri
yang cocok dengan alamat logis, terkadang seluruh inverted page table
harus dicari.
5. Penggunaan inverted page table mengurangi pemborosan memori yang
terjadi dalam konsep normal paging, di mana setiap proses memiliki tabel
halaman sendiri. Dalam Inverted Page Table, hanya satu entri per halaman
fisik yang diperlukan, sehingga menghemat ruang memori.

Anda mungkin juga menyukai