Tugas Pertemuan 5 (Manajemen Memory)
Memory
MEMORY MANAGEMENT
Definisi Memory Management
Memori manajemen 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.
Alamat Memori
a) Alamat memori mutlak (alamat fisik)
Sel memori pada memori kerja adalah sumber daya berbentuk fisik, sehingga untuk mencapai sel memori ini digunakan kata pengenal. Maka disebutlah alamat fisik dan karena nomor alamat fisik ini bersifat mutlak (nomor setiap sel adalah tetap), maka disebut juga alamat mutlak.
b) Alamat memori relatif (alamat logika)
Alamat memori yang digunakan oleh program / data berurutan / berjulat. Jika kita menggunakan alamat 1, maka kitapun menggunakan alamat 2,3, … dan untuk 1 informasi jika alamat awalnya 0 dan alamat lainnya relatif terhadap alamat awal 0 ini, maka dinamakan alamat relatif. Dan alamat tersebut adalah logika dari untaian alamat yang menyimpan informasi maka dikenal alamat memori logika. Contoh : alamat awal relatif 0, alamat awal fisik 14726, maka selisihnya = relokasinya = 14726-0 = 14726.
Fungsi Manajemen Memori
- 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.
Partisi Memori
Partisi memori adalah pembagian harddisk menjadi beberapa bagian yang digunakan untuk mempermudah manajemen file.
Terdapat 2 jenis partisi memori, yaitu :
- Fixed Partitioning
Ciri-ciri :
–Pembagian memori ditentukan di awal dan tidak dapat dirubah
–Ukuran partisi bisa sama (equal-size) atau berbeda (unequal-size)Kesulitan yang dihadapi :
–Ukuran program > ukuran partisi
–Penggunaan memori yang tidak efisien
– Internal Fragmentation
Contoh OS yang menggunakan : IBM OS/MFT (Multiprogramming with a Fixed Number of Tasks)
- Dynamic Partitioning
Dalam dynamic memory partitioning,,memori dipartisi menjadi bagian-bagian dengan jumlah dan besar yang tidak tentu.Ciri-ciri :
– Alokasi memori ditentukan saat runtime
– Setiap proses diberikan alokasi sesuai yang dibutuhkan
Kesulitan yang dihadapi :
– External Fragmentation
– Ruang kosong di memori banyak, tetapi terbagi-bagi
Syarat Pengelolaan Memori
- Relokasi
Prosesor dan sistem operasi harus dapat mentransfer memory referensi ( dalam bentuk kode program ) ke alamat fisik yang mengalokasikan program dalam memory utama. - Proteksi
User tidak boleh mengakses beberapa bagian dari wilayah sistem operasi.
- Sharing
Memory skunder pada manajemen memory dapat mengontrol sharing area pada memory utama.
- Organisasi Logika
Sistem oerasi dan hardware berusaha untuk dapat berhubungan dengan user program dalamsatu modul.
- Organisasi fisik
Harus ada pengaturan yang jelas antara memory utama dngan memory skunder pada Longterm scheduling.
A.) Manajemen Memori di Linux
Manajemen Memori Fisik
Bagian ini menjelaskan bagaimana linux menangani memori dalam sistem. Memori manajemen merupakan salah satu bagian terpenting dalam sistem operasi. Karena adanya keterbatasan memori, diperlukan suatu strategi dalam menangani masalah ini. Jalan keluarnya adalah dengan menggunakan memori virtual. Dengan memori virtual, memori tampak lebih besar daripada ukuran yang sebenarnya.
Demand Paging
Cara untuk menghemat memori fisik adalah dengan hanya meload page virtual yang sedang digunakan oleh program yang sedang dieksekusi. Tehnik dimana hanya meload page virtual ke memori hanya ketika program dijalankan disebut demand paging.
Ketika proses mencoba mengakses alamat virtual yang tidak ada di dalam memori, CPU tidak dapat menemukan anggota tabel page. Contohnya, dalam gambar, tidak ada anggota tabel page untuk proses x untuk virtual PFN 2 dan jika proses x ingin membaca alamat dari virtual PFN 2, CPU tidak dapat menterjemahkan alamat ke alamat fisik. Saat ini CPU bergantung pada sistem operasi untuk menangani masalah ini. CPU menginformasikan kepada sistem operasi bahwa page fault telah terjadi, dan sistem operasi membuat proses menunggu selama sistem operasi menagani masalah ini.
CPU harus membawa page yang benar ke memori dari image di disk. Akses disk membutuhkan waktu yang sangat lama dan proses harus menunggu sampai page selesai diambil. Jika ada proses lain yang dapat dijalankan, maka sistem operai akan memilihnya untuk kemudian dijalankan. page yang diambil kemudian dituliskan di dalam page fisik yang masih kosong dan anggota dari virtual PFN ditambahkan dalam tabel page proses. Proses kemudian dimulai lagi pada tempat dimana page fault terjadi. Saat ini terjadi pengaksesan memori virtual, CPU membuat penerjemahan dan kemudian proses dijalankan kembali.
Demand paging terjadi saat sistem sedang sibuk atau saat image pertama kali diload ke memori. Mekanisme ini berarti sebuah proses dapat mengeksekusi image dimana hanya sebagian dari image tersebut terdapat dalam memori fisik.
Swaping
Jika memori fisik tiba-tiba habis dan proses ingin memindahkan sebuah page ke memori, sistem operasi harus memutuskan apa yang harus dilakukan. Sistem operasi harus adil dalam mambagi page fisik dalam sistem diantara proses yang ada, bisa juga sistem operasi menghapus satu atau lebih page dari memori untuk membuat ruang untuk page baru yang dibawa ke memori. Cara page virtual dipilih dari memori fisik berpengaruh pada efisiensi sistem.
Linux menggunakan tehnik page aging agar adil dalam memilih page yang akan dihapus dari sistem. Ini berarti setiap page memiliki usia sesuai dengan berapa sering page itu diakses. Semakin sering sebuah page diakses, semakin muda page tersebut. Page yang tua adalah kandidat untuk diswap.
B. Manajemen Memori di Microsoft (Windows)
Memory Virtual
Memory bisa dibagi ke dalam dua bagian: non-page dan page (juga dikenal dengan page pool). Untuk memahami perbedaannya, kita perlu melihat dulu konsep paging, dengan menjelaskan memori virtual. Karena sedikit PC yang menggunakan RAM fisik sampai 4 GB penuh, Windows mengambil sisanya dan menggunakannya sebagai memory virtual.
Secara singkat, memory virtual adalah bagian ruang harddisk yang Windows simpan dan perlakukan seolah-olah itu adalah memory fisik (sampai batas 4 GB). Memory fisik dan virtual bisa diperlakukan sama seperti semua program yang berjalan pada PC, karena memory manajer dalam kernel Windows menangani semua permintaan akses.
Comments
Post a Comment