Assalamu'alaikum.....

Selasa, 19 Juni 2012

PREFACE MANAJEMEN MEMORI

 PREFACE MANAJEMEN MEMORI
Proses merupakan suatu bagian aktif dari KOMPUTASI
•Suatu komputasi / setiap proses yang akan dijalankan harus melalui memori terlebih dahulu
•CPU mengambil instruksi dari memori sesuai yang ada pada Program Counter
•Memori komputer merupakan salah satu resource komputer yang berharga dan perlu dikelola dengan baik oleh Sistem Operasi karena kapasitasnya yang terbatas
•Kerumitan pengelolaan bertambah seiring dengan adanya fitur multiprogramming, multitasking dll dimana lokasi memori tidak hanya diakses oleh satu proses tetapi akan diakses oleh beberapa proses secara konkuren
•Pengelolaa memori merupakan salah satu komponen penting dari Sistem Operasi
Sebagian besar komputer memiliki hirarki memori yang terdiri atas tiga level, yaitu:
Register di CPU, berada di level teratas. Informasi yang berada di register dapat diakses dalam satu clock cycle CPU.
Primary Memory (executable memory), berada di level tengah. Contohnya, RAM. Primary Memory diukur dengan satu byte dalam satu waktu, secara relatif dapat diakses dengan cepat, dan bersifat volatile (informasi bisa hilang ketika komputer dimatikan). 
Secondary Memory, berada di level bawah. Contohnya, disk atau tape. Secondary Memory diukur sebagai kumpulan dari bytes  (block of bytes), waktu aksesnya lambat, dan bersifat non-volatile (informasi tetap tersimpan ketika komputer dimatikan). 
   
•Bagian dari sistem operasi yang mengatur hirarki memori disebut dengan memory manager.Di era multiprogramming ini, memory manager digunakan untuk mencegah satu proses dari penulisan dan pembacaan oleh proses lain yang dilokasikan di primary memory, mengatur swapping antara memori utama dan disk ketika memori utama terlalu kecil untuk memegang semua
•Setiap proses mempunyai memory allocator
Memory allocator mengalokasikan ruang kosong dari memori kepada suatu proses .
•Ketika suatu proses kekurangan memori, memory allocator ini yang berperan untuk meminta kepada sistem operasi untuk diberikan space memori kosong dari proses lain.
 
Tujuan dari manajemen ini adalah untuk :
•Meningkatkan utilitas CPU
•Data dan instruksi dapat diakses dengan cepat oleh CPU
•Efisiensi dalam pemakaian memori yang terbatas
•Transfer dari/ke memori utama ke/dari CPU dapat lebih efisien
Manajemen Memori mempunyai 5 syarat :
1. Relocation 
  e.g : swap in swap out
2. Protection 
  e.g : interference by other processes
  Perlindungan atau proteksi ini disediakan oleh perangkat keras. Perangkat keras menyediakan dua register, yaitu base register dan limit register.
  Base register memegang alamat fisik terkecil yang dilegalkan, sedangkan limit register menentukan ukuran dari jarak alamat tersebut.
  Contohnya jika base register memegang alamat 5500 dan limit register 4650 , maka program bisa mengakses secara legal di semua alamat dari 5500 sampai 10150
3. Sharing
  e.g : allow several processes to access the same portion of main memory
4. Logical Organization
  e.g : pengorganisasian program antara memori logic dan memori fisik (Lebih jelasnya akan dibahas pada bagian Segmentasi)
5. Physical Organization
  memori diorganisasikan dalam dua tingkatan : memori utama dan memori sekunder

Address Binding

 
Address binding yang dilakukan terhadap suatu program dapat dilakukan di 3 tahap yang berbeda, yaitu:
1.Compilation Time : jika lokasi memori telah diketahui sebelumnya, , maka alamat absolut atau alamat fisik dapat dibuat. Kita harus mengkompilasi ulang kode jika lokasi awal berubah.
2.Load Time : harus membangkitkan alamat relocatable (alamat yang dapat dialokasikan ulang) jika lokasi memori tidak diketahui pada saat kompilasi
3.Execution Time : Alamat bersifat relatif, binding akan dilakukan pada saat run time. Pada saat run time dibutuhkan bantuan hardware yaitu MMU (Memory Management Unit)
Ruang Alamat Logika dan Fisik
Alamat yang dihasilkan oleh CPU berupa alamat logika, disebut juga alamat virtual
Alamat fisik adalah alamat memori yang sebenarnya.
Pada saat compile time dan  load time, alamat fisik dan logika identik.
Sebaliknya, perbedaan alamat fisik dan logika terjadi pada execution time.
Kumpulan semua alamat logika yang dihasilkan oleh program adalah ruang alamat logika/ruang alamat virtual.
Kumpulan semua alamat fisik yang berkorespondensi dengan alamat logika disebut ruang alamat fisik.
Pada saat program berada di CPU, program tersebut memiliki alamat logika, kemudian oleh MMU (memori manajemen unit)memetakan menjadi alamat  fisik yang akan disimpan di dalam memori.
Memory Management Unit (MMU) : Untuk mengubah alamat virtual ke alamat fisik.
Register utamanya disebut register relokasi.
Nilai pada register relokasi akan bertambah setiap alamat  dibuat oleh proses pengguna dan pada waktu yang sama alamat ini dikirimkan ke memori.
Ilustrasinya sebagai berikut, nilai pada register ini akan ditambah dengan setiap alamat yang dibuat oleh user process yang  kemudian dikirim ke memori. Contohnya register relokasi berada di 14000, alamat logika di 346, maka langsung dipetakan menjadi alamat fisik di 14346.
 
 Dynamic Loading (Pemanggilan Dinamis)
Seluruh proses dan data berada di memori fisik ketika dieksekusi.
Ukuran dari memori fisik terbatas.  Untuk mendapatkan penggunaan ruang memori yang baik, kita melakukan pemanggilan secara  dinamis.
Dengan pemanggilan dinamis, sebuah rutin tidak akan dipanggil jika tidak diperlukan.
Semua rutin diletakkan dalam disk dengan format yang dapat dialokasikan ulang (relocatable )
Mekanisme Dasar :
Progam utama ditempatkan dalam memori dan dieksekusi.
Jika sebuah rutin memanggil rutin lainnya, maka akan diperiksa terlebih dahulu apakah rutin tersebut ada di dalam memori atau tidak, jika tidak ada maka akan dipanggil untuk menempatkan rutin-rutin yang diinginkan ke memori.
Keuntungan dari pemanggilan dinamis adalah rutin yang tidak digunakan tidak pernah dipanggil.
Tidak ada dukungan khusus dari OS yg diperlukan; diimplementasikan melalui rancangan program
 
Kesimpulan 
Memori merupakan sumber daya yang paling penting untuk dijaga sebaik-baiknya karena merupakan pusat dari kegiatan di komputer.
Terdapat proteksi perangkat keras yang dilakukan dengan menggunakan dua register, yaitu base dan  limit register sehingga proses hanya bisa mengakses di alamat yang dilegalkan.
Alamat yang dihasilkan oleh CPU disebut alamat logika yang kemudian dipetakan oleh MMU menjadi alamat fisik yang disimpan di memori.
Untuk mendapatkan utilitas memori yang baik, maka diperlukan metode pemuatan dinamis, linking dinamis, dan overlay.
 
 

Tidak ada komentar:

Posting Komentar