Minggu, 18 September 2016


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