|
MANAJEMEN
MEMORI
Manajemen
Memori merupakan salah satu bagian terpenting pada sistem
operasi. Sejak awal komputer digunakan untuk keperluan
komputasi, kebutuhan akan memori yang lebih besar dibandingkan
dengan keadaan fisik memori di dalam sistem terus meningkat.
Berbagai perhitungan dan strategi terus dilakukan untuk
mengatasi keterbatasan ukuran memori fisik.
Strategi
yang dikenal untuk mengatasi hal tersebut adalah memori maya.
Memori maya menyebabkan sistem seolah-olah memiliki banyak
memori dibandingkan dengan keadaan memori fisik yang
sebenarnya. Memori maya tidak saja memberikan peningkatan
komputasi, akan tetapi memori maya juga memiliki bberapa
keuntungan seperti :
Membuat
sistem operasi seakan-akan memiliki jumlah memori melebihi
kapasitas memori fisik yang ada. Dalam hal ini memori maya
memiliki ukuran yang lebih besar daripada ukuran memori fisik.
Setiap
proses di dalam sistem memiliki virtual address space.
Virtual address space tiap proses berbeda dengan proses
yang lainnya lagi, sehingga apapun yang terjadi pada sebuah
proses tidak akan berpengaruh secara langsung pada proses
lainnya. Demikian juga dengan mekanisme yang digunakan memori
maya pada perangkat keras yang akan melakukan proteksi sebuah
area di memori, sehingga tidak dapat dilakukan proses penulisan
ke area tersebut. Mekanisme ini dipakai untuk memproteksi kode
dan data agar tidak ditimpa (overwriten) oleh aplikasi
lainnya.
Memory
mapping digunakan untuk melakukan pemetaan image dan
file-file data ke dalam alamat proses. Pada pemetaan memori,
isi dari file akan di link secara langsung ke dalam
virtual address space dari proses.
Digunakan
oleh Manajemen Memori untuk membagi penggunaan memori fisik
secara "adil" ke setiap proses yang berjalan pada
sistem.
Meskipun
tiap proses menggunakan address space yang berbeda dari
memori maya, ada kalanya sebuah proses dihadapkan untuk saling
berbagi penggunaan memori. Sebagai contoh, jika terdapat
beberapa proses di dalam sistem yang menjalankan perintah shell
bash. Daripada harus memiliki beberapa salinan perintah
bash pada setiap virtual address space, akan
lebih baik jika hanya ada satu salinan perintah pada memori
fisik dan semua proses yang menjalankan bash akan
berbagi penggunaan sumber daya memori tersebut. Contoh lainnya
adalah dinamic library yang mengeksekusi kode dengan
membaginya ke beberapa proses.
Shared
memory juga dapat digunakan sebagai mekanisme pengaturan
komunikasi antar proses (IPC), dengan dua atau beberapa proses
yang menggunakan informasi melalui memori dan mengembalikan
informasi tersebut ke proses yang menggunakannya.
|