Manajemen Memori...



MANAJEMEN MEMORI
Manajemen Memori :
Salah satu bagian sistem operasi yang mempengaruhi dalam menentukan proses mana yang diletakkan  pada antrian.
Tanda pengenal untuk pencarian letak memori adalah alamat, lintasan / trek, sector pada suatu disk.

Jenis Memori

  • Memori Kerja

Tugas utamanya adalah menampung pekerjaan itu pada saat sebelum dan sesudah pekerjaan itu dilaksanakan oleh prosesor dan menampung berbagai hal yang diperlukan prosesor, contohnya system operasi, system bahasa, catatan.
Contoh memori kerja untuk memori tetap adalah :
  • ROM : Read Only Memory ® memori baca saja
  • PROM : Programmable ROM ® dapat diprogram tetapi tidak dapat dihapus lagi
  • EPROM : Electrically PROM ® dapat diisi melalui listrik, dan dapat dihapus
  • EEPROM : Erasable EPROM ® dapat diisi dan dihapus dengan listrik
Contoh memori kerja untuk memori bebas adalah : 
  • RAM : Random Access Memory dapat diisi dan dapat dibaca, maka ciri utamanya adalah mengenal asas pemuktahiran yaitu dapat diisi dengan informasi terbaru dan isi akan hilang jika catu daya padam. Memori kerja terdiri dari sel memori yang berisi 1 kata sandi, misalnya sistem 8 bit menggunakan 8 bit kata sandi, sistem 1 kbyte menggunakan 1024 byte kata sandi.

  • Cache memory
Memori berkapasitas kecil tetapi berkecepatan tinggi, yang dipasang diantara prosesor dan memori utama. Instruksi dan data yang sering diakses oleh prosesor ditempatkan dalam chace sehingga dapat lebih cepat diakses oleh prosesor. Hanya bila data / instruksi yang diperlukan tidak tersedia dalam chacce barulah prosesor mencarinya dalam memori utama.
  • Memori Dukung / backing store

Contohnya : Floppy, Harddisk, CD, dll.
Untuk mendukung memori kerja, umumnya berbentuk disk sehingga berlaku juga asas pemuktakhiran. Setiap trek dan sektor dapat menyimpan sejumlah byte dari memori kerja. Memori kerja dicapai melalui alamat memori dan register data memori. Dan untuk mencapai informasi di memori dukung, isinya harus dipindahkan dulu ke memori kerja (memori dukung = memori semu = virtual memori).

1 pindahan = 1 blok, makin kecil ukuran memori kerja, makin sering terjadi pindahan.

Alamat Memori

-  Alamat memori mutlak (alamat fisik)

Sel memori pada memori kerja adalah sumber daya berbentuk fisik, sehingga untuk mencapai sel  memori ini digunakan kata pengenal. Maka disebutlah alamat fisik dan karena nomor alamat fisik ini  bersifat mutlak (nomor setiap sel adalah tetap), maka disebut juga alamat mutlak.

- Alamat memori relatif (alamat logika)

Alamat memori yang digunakan oleh program / data berurutan / berjulat. Jika kita menggunakan alamat 1, maka kitapun menggunakan alamat 2,3, … dan untuk 1 informasi jika alamat awalnya 0 dan alamat lainnya relatif terhadap alamat awal 0 ini, maka dinamakan alamat relatif. Dan alamat tersebut adalah logika dari untaian alamat yang menyimpan informasi maka dikenal alamat memori logika.
Contoh : alamat awal relatif 0, alamat awal fisik 14726, maka selisihnya = relokasinya = 14726-0 = 14726.

Alamat relatif
Alamat mutlak
Relokasi
0
14726
14726
1
14727
14726
2
14728
14726
3
14729
14726


Isi Memori

1. Sistem bahasa pemograman
Translator tergantung pada program yang digunakakan dan memiliki run time subroutine yang mengatur program dari bahasa pemogramannya untuk melakukan translator.
2. Sistem utilitas
Merupakan bagian dari sistem operasi komputer, biasanya berbentuk berkas dalam memori arsif.
3. Inti sistem operasi
Terdiri dari inti, kernel, nucleus adalah system operasi yang menetapkan dalam memori kerja. Contohnya adalah pada saat “boot / booting / bootstrap”.
4. Sistem operasi
Program sistem operasi diletakkan dalam memori, maka banyak kegiatan yang juga terletak dalam memori.
5. Pengendali alat
Terdiri dari penggerak alat / device controller dan pelaksana / device driver yang berbentuk program dan menempati ruang memori tertentu.
6. Berkas pemakai
Terdiri dari berkas program dan berkas data, yang ditampung dalam memori dan pada waktunya diteruskan ke prosesor untuk diolah.
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.
Pemuatan informasi ke memori:
 1. Pemuat / loader, menyalin informasi ke memori kerja.
a. pemuatan mutlak
jika 2 macam alamat memori dibuat sama antara yang tercantum dalam program dan yang ditempati dalam memori kerja. Contohnya pada program, alamat awal 5235 dan subroutine = 5468 diletakkan pada alamat fisik yang sama.
b. pemuatan relokasi
alamat program tidak selalu sama dengan alamat fisik.
Contohnya alamat pangkal / fisik = 14200, alamat relative program 327, maka alamat mutlaknya = 14200 + 327 = 14527

2. Lama muat, ditentukan oleh kecepatan baca pada memori dukung yang berbentuk disk.
Pengutipan / pembacaan isi memori :
1. Pengutipan oleh prosesor
Untuk melaksanakan pekerjaan yang dalam informasi itu, yang merupakan tugas dan proses dan dilakukan sel memori per sel memori.
2. Pengutipan oleh memori dukung / arsif
Untuk menyimpan informasi tersebut di dalam memori dukung / arsif sehingga mereka tidak hilang ketika catu daya dimatikan. Isi memori kerja disimpan ke dalam disk memori dukung / disket memori arsif. Kemudian di dalam disk / disket, informasi direkam ke dalam sector, setelah 1 sektor penuh, maka berpindah ke sektor lainnya. Pengutipan ini dilakukan blok demi blok yang biasanya merupakan kelipatan bulat dari ukuran sektor.
3. Pengutipan oleh pencetak / printer
Untuk mencetak isi memori ke atas kertas, pengutipan secara blok demi blok.
4. Pengutipan oleh alat peripheral lainnya
Contoh pada komunikasi data melalui jaringan, pengutipan mengikuti suatu protocol tertentu, misalnya protocol OSI (open system Interconnection) dari ISO (international standard organization) yang terdiri dari 7 lapis / layer.

Akses memori langsung / DMA (Direct Memory Access)
Melakukan pemindahan informasi dari dan ke memori kerja tanpa campur tangan langsung dari prosesor. Prosesor hanya diinterupsi saat akses tersebut dimulai dan selesai.

Pemenggalan memori kerja

Contohnya alamat pagar untuk pemenggalan memori kerja untuk wilayah program monitor, program dan data user.
v Pagar pada memori kerja
Wilayah memori telah kita penggal menjadi 2 bagian yaitu di atas alamat pagar dan di bawah alamat pagar yang letaknya terpisah.
v Pemenggalan memori kerja
Memenggal memori ke dalam banyak penggalan dan setiap penggalan dibatasi 2 pagar, yaitu batas bawah dan batas atas.
Untuk setiap penggalan memori kerja, memerlukan 2 register yaitu untuk mencatat batas atas dan untuk mencatat batas bawah. Dan setiap alamat memerlukan dua kali perbandingan untuk mencapai penggalan.

v Relokasi ke penggalan memori kerja
Dapat memilih penggalan yang menjadi tujuan relokasi dan harus diperiksa panjang informasi dan ukuran penggalan memorinya.
Karena jika masuk pada penggalan yang kecil, informasi tidak dapat tertampung.
Contoh : Jika alamat awalnya = 0, alamat pangkal P maka A = 0 dan P = BB. Sehingga R = P – A = BB

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 atau Paging

Ø Yaitu manajemen memori tanpa pemindahan citra proses antara memori utama dan disk selama eksekusi.
Ø Terdiri dari :
q 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
Contoh : IBM PC menggunakan cara ketiga di mana device driver ROM ditempatkan pada blok  8K tertinggi dari address space 1M. Program pada ROM disebut BIOS (Basic Input Output  System