Manajemen Memori

1. Manajemen Memori

Manajemen memori adalah suatu kegiatan yang berkaitan dengan mengatur penggunaan memori agar bisa digunakan seefisien dan seefektif mungkin. Manajemen memori memiliki berbagai fungsi, yakni:

  • Mengatur memori

Dalam hal ini mencakup berbagai hal, seperti mengatur memori dari proses yang telah selesai atau tidak terpakai, ke proses yang akan berjalan (memerlukan memori).

  • Mengatur swapping antara memori utama dan disk pada perangkat komputer

Swapping adalah proses memindahkan memori yang sedang terpakai untuk keperluan proses, ke penyimpanan secara sementara. Memori yang dipindahkan secara sementara, akan dipanggil kembali ketika proses yang bersangkutan akan berjalan kembali. Dengan adanya swapping, manajemen memori bisa dibagi menjadi 2 (berdasarkan keberadaan swapping):

– Manajemen memori tanpa swapping

Manajemen memori ini dilakukan tanpa pemindahan memori yang sedang terpakai untuk keperluan proses, ke penyimpanan secara sementara. Sehingga, proses tersebut akan terus berjalan (karena tidak terjadi peindahan memori). Hal ini menyebabkan kemungkinan bahwa hanya ada satu proses yang berjalan.

– Manajemen memori dengan swapping

Manajemen memori ini dilakukan dengan proses pemindahan memori yang sedang terpakai untuk keperluan proses, ke penyimpanan secara sementara. Hal ini membuat perangkat yang kita gunakan, bisa menjalankan lebih dari satu proses.

2. Hirarki memori

Semakin kebawah, semakin lambat. Semakin kebawah, kapasitasnya semakin besar:

  • Register
  • Cache
  • RAM
  • ROM
  • EPROM
  • EEPROM
  • SSD
  • HDD
  • Floppy Disk

3. Monoprogramming

Monoprogramming adalah suatu sistem komputer yang hanya bisa menjalankan 1 proses saja. Hal ini menjadikan proses yang ada, akan berjalan secara berurutan (tidak bisa bersamaan.

4. Multiprogramming

Multiprogramming adalah suatu sistem komputer yang bisa menjalankan lebih dari 1 proses. Ini merupakan sistem komputer yang bagus, ketika kita bisa menjalankan proses secara bersamaan. Pekerjaan atau masalah yang kita miliki bisa diselesaikan dengan lebih cepat.

5. Partisi

  • Partisi statis

Partisi statis adalah pengalokasian memori ke dalam partisi tetap. Pada partisi inilah, ditempatkan proses-proses yang akan berajalan. Partisi statis dapat dibagi menjadi 2 (berdasarkan ukurannya):

– Partisi statis dengan ukuran sama

Hal ini dilakukan dengan mengalokasikan memori ke dalam partisi dengan ukuran yang sama.

– Partisi statis dengan ukuran berbeda

Hal ini dilakukan dengan mengalokasikan memori ke dalam partisi yang memiliki ukuran yang berbeda.

Dalam partisi statis, bisa terjadi yang namanya fragmentasi. Fragmentasi adalah penghambur-hamburan memori. Ada dua macam fragmentasi:

– Fragmentasi internal

Fragmentasi internal terjadi ketika partisi tidak terisi penuh ketika diisi oleh proses.

– Fragmentasi external

Fragmentasi external terjadi ketika ukuran partisi tidak mencukupi untuk ditempatkan oleh proses.

  • Partisi dinamis

Partisi dinamis adalah pengalokasian memori ke dalam partisi dinamis. Maksudnya adalah, partisi akan menyesuaikan dengan proses yang akan berjalan. Sehingga akan meningkatkan efisiensi dan keefektifitas dari penggunaan memori. Namun, hal ini akan menyulitkan proses pengalokasian, akan terjadi banyak perubahan ukuran partisi setiap kali menjalankan proses yang berbeda. Serta adanya ruang-ruang kosong di antara partisi yang tidak terpakai selama menjalankan proses. Hal ini bisa diatasi dengan cara memadatkan memori yang ada (memory compaction), yakni dengan menyatukan ruang-ruang kosong dengan mendekatkan proses-proses yang sedang berjalan.

Proses yang berjalan juga akan semakin berkembang, mengakibatkan masalah baru. Mengingkat partisi yang ada sudah disesuaikan dengan ukuran memori yang dibutuhkan proses saat proses pertama kali dialokasikan ke dalam partisi. Hal ini bisa diselesaikan menggunakan ruang-ruang kosong yang tidak terpakai.

6. Macam-macam prosedur alokasi memori

  • Algoritma first fit

Alokasi memori dilakukan dengan mencari partisi dari awal, partisi pertama sesuai dengan memori (tidak harus pas), bisa langsung ditempati. Misalkan ada beberapa partisi dengan ukuran 5 Kb, 7 Kb, dan 3 Kb. Apabila ada data sebesar 2 Kb, maka data tersebut akan langsung mengisi partisi berukuran 5 Kb, karena berada di awal pencarian dan ukurannya sesuai.

  • Algoritma next fit

Alokasi memori dilakukan dengan mencari partisi dari awal menemukan partisi yang sesuai. Misalkan ada beberapa partisi dengan ukuran 5 Kb, 7 Kb, dan 3 Kb. Apabila ada data sebesar 2 Kb, maka data tersebut akan mengisi partisi 3 Kb, karena melanjutkan pencarian sebelumnya.

  • Algoritma best fit

Alokasi memori dilakukan dengan mencari partisi yang paling sesuai dengan ukuran data. Misalkan ada beberapa partisi dengan ukuran 5 Kb, 7 Kb, dan 3 Kb. Apabila ada data sebesar 2 Kb, maka data tersebut akan mengisi partisi 3 Kb, karena memiliki ukuran yang paling sesuai.

  • Algoritma worst fit

Alokasi memori dilakukan dengan mencari partisi ukurannya paling besar. Misalkan ada beberapa partisi dengan ukuran 5 Kb, 7 Kb, dan 3 Kb. Apabila ada data sebesar 2 Kb, maka data tersebut akan mengisi partisi 7 Kb, karena partisi tersebut memiliki ukuran yang paling besar.

Leave a Reply

Your email address will not be published. Required fields are marked *

* Kode Akses Komentar:

* Tuliskan kode akses komentar diatas: