Please enable JavaScript.
Coggle requires JavaScript to display documents.
Manajemen Memori 3 (Optimalisasi Utilitas Memori), Nikolaus Thomas…
Manajemen Memori 3
(Optimalisasi Utilitas Memori)
Overlay
Definisi:
Overlay adalah suatu teknik pemrograman yg membagi program yg besar menjadi bagian-bagian yang lebih kecil sehingga dapat dimuat secara partial (sebagian) ke dalam partisi memori yang berukuran kecil.
Cara Kerja:
Dengan overlay, hanya bagian instruksi dan data yang sedang dijalankan akan di-load ke memori utama, sedangkan bagian lain dari program tetap disimpan di disk.
Kegunaan:
Overlay berguna pada sistem operasi dengan model manajemen memori partisi statis. Terutama jika partisi memori yg ada terlalu kecil untuk memuat seluruh isi dari suatu program.
Virtual Memory
Definisi:
Virtual memory (memori maya) adalah teknik pemetaan memori yg melibatkan memori sekunder (disk) sehingga ukuran memori sistem secara logika bisa lebih besar dari ukuran memori utama secara fisik.
Cara Kerja:
Butuh pengalamatan logika dan mekanisme swapping
Keuntungan:
Lebih sedikit operasi I/O yang dilakukan, karena swapping dilakukan per page.
Lebih sedikit memori utama yang diperlukan per proses
Tanggapan sistem menjadi lebih cepat
Lebih banyak proses yang dapat dijalankan secara konkuren oleh sistem komputer, atau dengan kata lain meningkatkan tingkat konkurensi atau tingkat multiprogramming dari sistem.
Swapping:
proses pemindahan sebagian atau seluruh bagian proses dari memori utama ke memori sekunder/disk (swap out) atau dari disk ke memori utama (swap in). Proses swapping merupakan bagian dari mekanisme di dalam virtual memory.
Implementasi:
Demand paging:
Prinsipnya sama dengan pengalamatan dan alokasi dengan sistem paging namun menambahkan mekanisme swapping didalamnya.
Demand segmentation:
Prinsipnya mirip dengan pengalamatan dan alokasi dengan sistem segmentation namun menambahkan mekanisme swapping didalamnya.
Dynamic Loading
Definisi:
Dynamic loading adalah teknik pemrograman yang memungkinkan hanya bagian-bagian program yang sedang dibutuhkan pada saat runtime saja yang akan disalinkan ke memori utama, sehingga pemakaian memori menjadi lebih efisien
Cara Kerja:
Pada dynamic loading, jika suatu rutin dipanggil, maka rutin pemanggil mengecek apakah rutin tersebut sudah pernah dipanggil. Jika belum maka rutin tersebut diambil dan dialokasikan ke memori utama.
Kegunaan:
Dynamic loading berguna terutama untuk program yang besar. Rutin program yang tidak dipanggil pada saat runtime tidak akan pernah di-load ke memori.
Implementasi:
Teknik dynamic loading diimplementasikan dalam program pengguna (user) dan tidak memerlukan campur tangan sistem operasi saat beroperasi. Sistem operasi hanya menyediakan rutin-rutin library pendukung dynamic loading untuk membantu programmer mengimplementasikannya.
Dynamic Linking
Keuntungan:
Dynamic Linking menghemat penggunaan memori utama karena jika sejumlah aplikasi menggunakan library yang sama, maka library tsb. Hanya akan disalinkan sekali saja ke memori utama, namun dapat direferensi dan digunakan bersama oleh aplikasi-aplikasi tsb.
Definisi:
Dynamic Linking adalah teknik yang memungkinkan linking rutin-rutin library ke program aplikasi dilakukan secara dinamis pd saat runtime.
Cara Kerja:
Pada dynamic linking, rutin-rutin suatu library yang sudah di-load ke memori akan di-share oleh beberapa program aplikasi yg akan melakukan linking kepada library tersebut pada saat program dieksekusi. Hal ini membutuhkan campur tangan dari OS. Contoh file yang sering di-share secara dynamic linking adalah file dengan ekstensi .dll, .sys, atau .drv
Latar Belakang:
Pada sistem multiprogramming, diusahakan sebanyak mungkin proses bisa dimuat ke memori sehingga tingkat multiprogramming meningkat. Dengan kapasitas memori utama yang serba terbatas, ini berarti butuh strategi dan teknik khusus untuk mengoptimalkan pemakaian memori utama.
Strategi:
Overlay
Dynamic Loading
Dynamic Linking
Virtual Memory & Swapping
Nikolaus Thomas Ariyanto
190710063