Manajemen memori
Oleh
Novan Alkaf Bahraini Saputra, S.Kom., M.T
Latar Belakang
• Memori merupakan pusat kegiatan pada sebuah komputer.
• Setiap proses yang akan dijalankan harus melalui memori.
• CPU mengambil instruksi dari memori sesuai yang ada pada program counter.
• Instruksi memerlukan proses memasukkan/menyimpan ke alamat di memori.
• Tugas sistem operasi adalah mengatur peletakan proses pada suatu memori.
• Memori harus dapat digunakan dengan baik, sehingga dapat memuat banyak proses pada suatu waktu.
Execution of a user program
Address Binding
• Sebuah program ditempatkan dalam disk dalam bentuk berkas biner
• Sebelum dieksekusi, sebuah program harus ditempatkan di memori.
• Prosedur penempatan adalah dengan memilih salah satu proses di input queue, kemudian proses tersebut ditempatkan ke memori.
• Sebuah kompilator akan memetakan simbol-simbol ini ke alamat relokasi.
• Pengikatan alamat adalah cara instruksi dan data (yang berada di disk sebagai file yang dapat dieksekusi) dipetakan ke alamat memori
Multistep processing of a user
program
Teknik Manajemen Memori
• Fixed Partitiioning
• Dynamic Partitioning
• Simple Paging
• Simple Fragmentation
CPU – Memory (Komputer Lama)
Partisi -> Tetap dan Dinamis
Fixed Partitioning
• Membagi memori dalam
partisi-partisi dengan ukuran yang tetap (statis)
• Banyaknya partisi tetap
Penempatan
Internal Fragmentation
Dynamic Partitioning
• Ukuran dan banyaknya partisi
menyesuaikan kebutuhan
External Fragmentation
• Akan terjadi lubang-lubang kecil diantara partisi yang tidak bisa digunakan
• Compaction : proses yang dilakukan OS dengan menggeser proses- proses sehingga memori tidak berlubang-lubang (di windows
bernama defragment)
Algoritma penempatan
• Best-fit: memilih blok yang paling sesuai
• First-fit: memilih blok pertama yang sesuai
• Next-fit: memilih blok yang sesuai dari penempatan terakhir