- Pengelompokan memori untuk menampung beberapa proses
- Memori butuh untuk dialokasikan secara efesien untuk dikemas sebagai banyak proses dalam memori
Memory Management Requirement
- Relocation
- Programmer tidak tahu dimana program akan ditempatkan di memori ketika akan dieksekusi
- Selama program mengeksekusi, dapat bertukar ke disk dan kembali ke memori utama dilokasi yang berbeda (relocated)
- Referensi memori harus diterjemahkan dalam kode untuk alamat memori yang sebenarnya fisik
- Protection
- Proses seharusnya tidak dapat referensi lokasi memori proses tanpa izin
- Mustahil untuk cek alamat mutlak dalam program sejak program ini dapat direlokasikan
- Harus dicek selama eksekusi
- Sistem operasi tidak dapat mengantisipasi semua memori referensi program akan membuat
- Sharing
- Memungkinkan beberapa proses untuk mengakses bagian yang sama dari memori
- Lebih baik untuk memungkinkan setiap proses (orang) akses ke salinan yang sama dari program dari pada memiliki salinan mereka sendiri secara terpisah
- Logical Organization
- Program ditulis didalam modul - modul
- Modul dapat ditulis dan dikompile secara independen
- Tingkat perlindungan yang berbeda diberikan ke modul - modul
- Membagikan modul (Share modules)
- Physical Organization
- Memori yang tersedia untuk program plus data mungkin tidak cukup
- Overlaying memungkinkan berbagai modul - modul akan ditugaskan kedaerah atau tempat yang sama dari memori
- Programmer tidak tahu berapa besar ruang yang tersedia
Addressing
- Logical
- Referensi ke lokasi memori independen dari tugas saat ini dari data ke memori
- Terjemahan harus dilakukan untuk physical address
- Relative
- Alamat dinyatakan sebagai lokasi relativ untuk beberapa titik (point) yang diketahui
- Physical
- Alamat absolute atau alamat yang sebenarnya didalam memori utama
Memory Allocation Algorithm
- First Fit
- Next Fit
- Best Fit
- Worst Fit
- Quick Fit
- Buddy System
Buddy System
- Seluruh ruang yang tersedia diperlakukan sebagai single blok dari 2^u
- Jika permintaan dari ukuran s seperti 2^u-1 < s < = 2^u, seluruh blok akan dialokasikan seperti:
- Jika tidak blok akan displit kedalam 2 teman yang sama
- Proses akan berlanjut sampai blok terkecil lebih besar dari pada atau sama dengan s yang akan digenerate
No comments:
Post a Comment