Welcome

Selamat Datang Gan

Sabtu, 22 Juni 2013

MANAJEMEN MEMORY


Memori adalah pusat dari operasi pada sistem komputer modern.  Memori adalah array besar dari word atau byte, yang disebut alamat.  CPU mengambil instruksi dari memory berdasarkan nilai dari program counter.  Instruksi ini menyebabkan penambahan muatan dari dan ke alamat memori tertentu.
Instruksi eksekusi yang umum, contohnya, pertama mengambil instruksi dari memori.  Instruksi dikodekan dan mungkin mengambil operand dari memory.  Setelah instruksi dieksekusi pada operand, hasilnya ada yang dikirim kembali ke memory.  Sebagai catatan, unit memory hanya merupakan deretan alamat memory; tanpa tahu bagaimana membangkitkan (instruction counter, indexing, indirection, literal address dan lainnya) atau untuk apa (instruksi atau data).  Oleh karena itu, kita dapat mengabaikan bagaimana alamat memori dibangkitkan oleh program, yang lebih menarik bagaimana deretan alamat memori dibangkitkan oleh program yang sedang berjalan.
Ø  Jenis Memori
 - Memori Kerja
• ROM/PROM/EPROM/EEPROM
• RAM
• Cache memory
- Memori Dukung Floppy, harddisk, CD, dll. 
Ø  Alamat Memori
– Alamat memori mutlak (alamat fisik)
 – Alamat memori relatif (alamat logika)
Ø  Isi Memori
 – Sistem bahasa penataolahan
 – Sistem Utilitas
– Inti Sistem Operasi
 – Sistem Operasi
– Pengendali alat (device drivers)
 – File pemakai 
Manajemen Memory adalah Salah satu bagian sistem operasi yang mempengaruhi dalam menentukan proses mana yang diletakkan pada antrian. Proses ini menyediakan cara mengalokasikan memori untuk proses atas permintaan mereka, membebaskan untuk digunakan kembali ketika tidak lagi diperlukan serta menjaga alokasi ruang memori bagi proses. Pengelolaan memori utama sangat penting untuk sistem komputer.
Manajemen memori sangat penting untuk memproses dan fasilitas masukan/keluaran secara efisien, sehingga memori dapat menampung sebanyak mungkin proses dan sebagai upaya agar pemogram atau proses tidak dibatasi kapasitas memori fisik di sistem komputer
Fungsi manajemen memori :
• Mengelola informasi yang dipakai dan tidak dipakai.
 • Mengalokasikan memori ke proses yang memerlukan.
• Mendealokasikan memori dari proses telah selesai.
• Mengelola swapping atau paging antara memori utama dan disk
Manajemen memori berdasarkan keberadaan swapping atau paging terbagi dua yaitu :
1. Manajemen tanpa swapping atau paging
2. Manajemen dengan swapping atau paging  
Memori tanpa swapping or paging  Yaitu manajemen memori tanpa pemindahan citra proses antara memori utama dan disk selama eksekusi.
 Terdiri dari : ‰
Ø  Monoprogramming
 Ciri-ciri :
• Hanya satu proses pada satu saat
• Hanya satu proses menggunakan semua memori
• Pemakai memuatkan program ke seluruh memori dari disk atau tape
• Program mengambil kendali seluruh mesin
Ø  Multiprogramming Dengan Pemartisian Statis
 Terbagi dua :
1. Pemartisian menjadi partisi-partisi berukuran sama, yaitu ukuran semua partisi memori adalah sama
2. Pemartisian menjadi partisi-partisi berukuran berbeda, yaitu ukuran semua partisi memori adalah berbeda.
Multiprogramming dengan swapping  adalah pemindahan proses dari memori utama ke disk dan kembali lagi.
1. Multiprogramming dengan Pemartisisan Dinamis 
Jumlah , lokasi dan ukuran proses di memori dapat beragam sepanjang waktu secara dinamis. Kelemahannya adalah dapat terjadi lubang-lubang kecil memori di antara partisi- partisi yang dipakai dan Merumitkan alokasi dan dealokasi memori.
2. Strategi Alokasi Memori
§  First fit algorithm : memory  manager men-scan list untuk menemukan hole yg cukup untuk menampung proses yg baru. Proses akan menempati hole pertama yg ditemuinya yg cukup untuk dirinya.
§  Next fit algorithm : sama dengan first fit, tetapi pencarian hole dimulai dari hole ditemuinya dari scan sebelumnya.
§  Best fit algorithm : dicari hole yang akan menghasilkan sisa paling sedikit setelah dimasuki proses.
§  Worst fit algorithm : kebalikan dari best fit.
§  Quick fit algorithm : mengelompokkan hole-hole dan membuat listnya sendiri. Misalnya, ada list untuk hole 4K, satu list untuk 8K, dst
Dari berbagai cara alokasi tersebut, sebuah hole yg ditempati proses akan terbagi menjadi bagian yang dipakai proses dan memori yang tidak terpakai (fragmen). Timbulnya memori yang tidak terpakai disebut fragmentasi. Ada dua macam fragmen :
• Internal : sisa hole yang tidak terpakai setelah terisi proses.
• Eksternal : hole yang secara utuh terlalu kecil untuk dipakai oleh proses manapun.
Alokasi Ruang Swap pada Disk (Penempatan proses pada disk setelah di-swap-out dari memori) yaitu :
§  Ruang disk tempat swap dialokasikan begitu diperlukan
§  Ruang disk tempat swap dialokasikan lebih dahulu.
Algoritma untuk pengaturan ruang swap pada disk sama dengan untuk memori utama. Perbedaannya adalah ruang pada disk harus dialokasikan sebagai kelipatan bilangan bulat dari disk block.
Memori maya adalah kemampuan mengalamati ruang memori melebihi memori utama yang tersedia.Gagasan memori maya adalah ukuran gabungan program, data dan stack melampaui jumlah memori fisik yang tersedia. Memori maya dapat dilakukan dengan tiga cara, yaitu Paging, SegmentasiKombinasi paging dan segmentasi.
Demand Paging atau permintaan pemberian halaman adalah salah satu implementasi dari memori virtual yang paling umum digunakan. Sistem Demand Paging pada prinsipnya hampir sama dengan sistem permintaan halaman yang menggunakan swapping, hanya saja pada sistem demand paging, halaman tidak akan dibawa ke dalam memori fisik sampai ia benar-benar diperlukan.
               Sistem operasi dapat memindahkan suatu proses dari memori fisik, lalu menghapus semua bingkai yang semula digunakannya, dan mengurangi level of multiprogramming (dengan mengurangi jumlah proses yang berjalan) dengan cara penggantian halaman (page replacement).
               Terdapat macam-macam variasi untuk strategi sederhana ini, kita bisa meminta sistem operasi untuk mengalokasikan seluruh buffer dan ruang tabel-nya dari daftar frame bebas. Saat ruang ini tidak digunakan oleh sistem operasi, ruang ini bisa digunakan untuk mendukung paging dari user. Kita juga dapat menyimpan tiga frame bebas yang dari daftar frame bebas, sehingga ketika terjadi page fault, ada frame bebas yang dapat digunakan untuk paging. Saat pertukaran halaman terjadi, penggantinya dapat dipilih, kemudian ditulis ke disk, sementara proses user tetap berjalan.
Variasi lain juga ada, tetapi ide dasarnya tetap yaitu proses pengguna diberikan frame bebas yang mana saja. Masalah lain muncul ketika demand paging dikombinasikan dengan multiprogramming. Hal ini terjadi karena multiprogramming menaruh dua (atau lebih) proses di memori pada waktu yang bersamaan.




Tidak ada komentar:

Posting Komentar

Entri Populer