SYARAT MANAJEMEN MEMORI
Manajemen memori
mempunyai 5 syarat , yaitu :
1. Relocation
Dalam
sistem multi-progamming , memori utama yang tersedia di-sharing di antara
banyak proses.Programmer tidak mungkin tahu program lain mana yang akan menetap
di memori utama ketika programmer tersebut menjalankan programmnya.
Untuk
memaksimalkan pemanfaatan CPU , maka jumlah proses yang ada di memori juga
harus dimaksimalkan , sehingga jika memori utama berkapasitas terbatas , sistem
operasi akan sering mengganti proses yang ada di memori utama.
Ketika
proses di-swapping put dari memori utama ke disk , dan ketika proses tersebut
di-swapping in ke memori utama maka harus diletakkan di daerah yang sama
seperti sebelumnya di memori utama.Jadi , diperlukan pengalokasian alamat di
memori utama.
2. Protection
Setiap
proses seharusnya dilindungi dari gangguan yang tidak diinginkan dari
proses-proses yang lain , baik itu secara tidak sengaja ataupun
disengaja.Relocation menambah kerumitan dan kesulitan pada proteksi ini . Hal
ini disebabkan lokasi dari suatu program dalam memori utama tidak dapat
diperkirakan dan tidak mungkin untuk memeriksa alamat mutlak pada waktu
kompilasi untuk memastikan proteksinya.Dengan demikian diperluka mekanisme yang
mengandung relokasi dan sekaligus mendukung proteksi.
Seharusnya
proses pemakai tidak dapat mengakses bagian dari sistem operasi , program ,
atau data.Dan satu proses juga tidak dapat bercabang ke instruksi dalam proses
yang lain.Tanda adanya rencana khusus , program dalam satu proses tidak dapat
mengakses daerah data proses yang lain.CPU harus dapat menggagalkan
instruksi-instruksi yag melanggar hal tersebut pada titik eksekusinya.
3. Sharing
Mekanisme
proteksi harus mempunyai fleksibilitas untuk mengizinkan beberapa proses
mengakses bagian yang sama dari memori utama . Sebagai contoh , jika sejumlah
proses mengeksekusi program yang sama , akan menguntungkan jika setiap proses
diizinkan mengakses salinan program tersebut sendiri-sendiri sehingga manajemen
memori harus dapat mengontrol akses ke daerah memori yang di-share.
4. Logical
Organization
Memori
utama di sistem computer diorganisasikan dalam bentuk linear atau satu
dimensi.Alamat ruang terdiri dari urutan byte atau word . Memori sekunder dalam
tingkatan fisik , diorganisasikan ke dalam bentuk modul-modul.Beberapa tidak
dapat dimodifikasi (read only , executable) dan beberapa dapat dimodifikasi
jika terdiri dari data.Dengan demikian , pengorganisasian memori secara fisik
dengan pengorganisasian memori yang tidak fisik , yaitu secara logika yang menggunakan
pengorganisasian seperti pengorganisasian program , yaitu dengan modul-modul.
5.
Physical Organization
Seperti
sudah dijelaskan , memori diorganisasikan dalam dua tingkatan , yaitu memori
utama dan memori sekunder . Memori utama merupakan memori yang cepat dan mahal
sehingga kapasitasnya terbatas serta bersifat volatile (tidak permanen) ,
sementara memori sekunder merupakan memori yang lebih lambat dan murah daripada
memori utama sehingga kapasitasnya bisa jauh lenih besar dari memori sekunder ,
serta bersifat nonvolatile . Oleh karena
itu dibutuhkan pengorganisasian antara memori utama dengan memori sekunder agar
aliran informasi antara dua tingkatan memori ini dapat berjalan dengan lancar.
6. Ruang
alamat logika dan fisik
Secara
mendasar , instruksi-instruksi dan data-data suatu program akan diikatkan ke
suatu alamat memori dengan tahap-tahap sebagai berikut :
a)
Compile time : Suatu proses menetap di
memori dan menghasilkan suatu kode yang mutlak sehingga ketika lokasi di memori
berubah , maka perlu dilakukan kompilasi ulang terhadap kode tersebut.
b)
Load time : Jika pada saat compile time
tidak diketahui dimana suatu proses akan menetap di memori , maka compiler
harus dapat menghasilkan suatu kode yang reloctable.
c) Excecution
time : Suatu proses dapat dipindah alamatnya dari satu segmen yang lain pada
saat eksekusi
Suatu alamat yang dihasilkan CPU disebut dengan
alamat logika atau alamat maya virtual) . Sedangkan alamat fisik adalah alamat
yang berada di memori.
Compile
time dan load time akan menghasilkan suatu lingkungan dimana alamat logika dan
alamt fisik adalah sama , sementara pada execution time akan menghasilkan
alamat logika dan alamat fisik yang berbeda.
Tidak ada komentar:
Posting Komentar