custom-header

Manajemen Memori

Manajemen Memori

Memori merupakan media penyimpanan yang berisi informasi-informasi pada sistem komputer. Terdapat berbagai macam jenis memori yaitu register, ROM, RAM, Cache memory, floppydisk, harddisk, CD, dan lain-lain. Manajemen memori itu sendiri berarti kegiatan mengelola dan mengatur memori pada komputer. Memori utama perlu kita atur dengan benar supaya menghasilkan kinerja yang maksimal, haI yang didapat ketika kita mengatur memori utama yaitu :

  1. Kegunaan CPU pada komputer akan meningkat.
  2. Akses data oleh CPU akan lebih maksimal.
  3. Mengefisiensikan penggunaan memori utama.
  4. Pemindahan data dari memori utama ke CPU atau sebaliknya Iebih cepat.

Keterkaitan antara manajemen memori dan memori utama yaitu perlunya untuk didistribusikan dan digunakan secara bersamaan antar sejumIah proses yang sedang aktif dan juga terkait dengan usaha supaya kapasitas memori tidak membatasi sejumlah program atau proses. Manajemen memori memiliki berbagai fungsi saat kita terapkan, seperti :

  1. Dapat mengatur memori dengan tepat, mana yang terpakai dan tidak terpakai.
  2. Dapat memindahkan suatu memori ke proses yang sedang berjalan
  3. Dapat memindahkan kembaIi ke memori setelah proses yang memerIukan memori telah seIesai bekerja.
  4. Dapat mengatur pertukaran memori utama dengan disk.

Suatu proses dapat berada di penyimpanan terlebih dahuIu sebeIum akan dipanggiI lagi ke memori untuk mengeksekusi suatu proses Iagi. Manajemen memori dibedakan berdasarkan letak swapping itu berada menjadi dua yaitu :

  1. Manajemen tanpa swapping
  2. Manajemen dengan swapping

Monoprogramming adalah salah satu contoh dari manajemen memori yang paling simple dengan hanya dapat menjalankan satu program dalam satu waktu. Monoprogramming ini memiliki beberapa ciri-ciri yaitu :

  1. Menjalankan satu program hanya dapat dalam satu waktu.
  2. Menjalankan satu proses dengan memakai seluruh memori yang ada.
  3. Pengguna memuat program dari disk ke dalam memori penuh
  4. Semua proses pada mesin dikendalikan oleh program

Distribusi memori dijalankan secara urut karena proses yang berjalan hanya satu dan menguasai semua sistem.

Selanjutnya ada multiprogramming, multiprogramming berarti dapat menjalankan proses yang banyak dalam waktu yang sama. Multiprogramming ini berbeda dengan monoprogramming, multiprogramming Iebih efektif dan efisien karena tidak memakan waktu yang banyak karena dapat menjalankan banyak proses dalam satu waktu. Terdapat banyak alasan multiprogramming digunakan yaitu :

  1. Pemrogram lebih mudah dalam menyelesaikan banyak proses.
  2. Multiprogramming memungkinkan kita dapat untuk berinteraktif dengan orang-orang secara bersamaan.
  3. Sumber daya yang ada digunakan secara efisien
  4. Terpecahnya proses besar menjadi proses yang lebih kecil menjadikan pemrogram lebih mudah dalam mengeksekusi.
  5. Dapat menjalankan beberapa pekerjaan dengan bersamaan.

Dalam partisi statis, beberapa partisi terbagi dari suatu memori, partisi itu menjadi tempat untuk sejumlah proses yang ada. Partisi ini digolongkan menjadi dua berdasar ukurannya yaitu :

  1. Pemartisian yang memiliki ukuran partisi sama.
  2. Pemartisian yang berbeda-beda ukurannya

Pada pemartisian yang memiliki ukuran partisi sama memiliki beberapa kelemahan seperti ketika program yang dijalankan memiliki ukuran lebih besar daripada ukuran partisi yang ada, maka program tersebut tidak bisa berjalan. Pemrogram perlu memiliki overlay. Overlay adalah pemecahan program menjadi beberapa bagian yang bisa diletakkan di memori, sehingga saling bergantian program dieksekusi, keIemahan selanjutnya yaitu bila ukuran program lebih kecil dari ukuran partisi yang ada, maka terdapat ruang yang kosong, sehingga memori menjadi boros.

Pemartisian dengan Partisi Berukuran Sama

Pemartisian dengan Partisi Berukuran Berbeda

 

Penyimpanan yang mengalami pemborosan memori disebut fragmentasi, fragmentasi pada partisi statis ini dibagi menjadi fragmentasi internaI dan eksternaI. Untuk fragmentasi internal ini prosesnya tidak memenuhi semua partisi yang tersedia untuk proses tersebut, sedangkan fragmentasi eksternal itu tidak bisa dijalankan ketika ukuran partisi lebih kecil daripada ukuran proses yang akan dijalankan.

Terjadi banyak pemborosan pada partisi statis, dengan adanya partisi dinamis, maka proses yang ada dalam memori dengan beragam ukuran dan jumlah dapat dijalankan secara dinamis, dengan ini penggunaan memori dapat meningkat dan tidak mengalami banyak pemborosan pada memori.

Selain efektif, partisi dinamis ini tetap memiliki beberapa kelemahan seperti dapat adanya lubang kecil disebelah partisi yang terpakai dan dalam mendistribusi memori menjadi susah.

Proses dapat menjadi tumbuh dan berkembang pada partisi dinamis, hal itu dapat diselesaikan dengan menggunakan lubang memori tidak terpakai untuk proses tumbuhnya tersebut dan masalah lainnnya yaitu saat antar proses terjadi secara bersebelahan.

Alokasi proses ke lubang kosong perlu yang namanya algoritma, algoritma ini dapat menetapkan lubang-lubang yang sesuai dengan proses yang akan dijalankan. Algoritma ini seperti algortima First fit, Next fit, Best fit, dan Worst fit. Algoritma First fit ini mengalokasikan memori proses pada lubang pertama, saat lubang pertama ditemukan, maka pencarian selesai. Lalu ada algoritma Next fit, pencarian dimulai dari setelah segmen yang sesuai dan selesai ketika menemukan ukuran yang cukup untuk tempat prosesnya. Kemudian ada algoritma Best fit, algoritma ini memulai pencariannya hingga menemukan yang benar-benar sesuai dengan ukuran partisi. Yang terakhir ada algoritma Worst fit, algoritma ini memberi tempat untuk proses dengan mencari partisi yang memiliki ukuran paling besar.

Algoritma lainnya juga ada yang bernama Buddy system, Buddy system ini merupakan algoritma yang pendistribusian memorinya dilakukan melalui pembelahan satu kesatuan memori kerja sesuai dengan pangkat biner.

Virtual Memory dan Overlay berjalan dari dipecahnya suatu program menjadi beberapa bagian yang dapat ditempatkan di memori. Virtual memori bekerja saat memori mengalami kehabisan pada sistem operasi. Cara kerja virtual memori dengan mengirimkan data ke hard drive dari RAM, beberapa data akan dikirim ke hard drive dari virtual memori dan komputer mengutamakan seperti RAM fisik. Untuk overlay merupakan program yang dibagi menjadi beberapa bagian yang dapat ditempatkan di memori dan belum digunakan, ketika digunakan, overlay ini akan ditempatkan di memori.

Virtual memori dapat dijalankan dengan dua cara yaitu :

  1. Paging
  2. Segmentasi

Paging itu sendiri merupakan skema dari manajemen memori yang membisakan sebuah proses yang tersimpan dengan cara berjauhan, hal ini dapat menyelesaikan masalah fragmentasi eksternal. Penerapannya dengan memiliki memori yang dipecah menjadi beberapa blok dengan ukuran tetap yang sama.

Lalu ada segmentasi, segmentasi merupakan skema dari manajemen memori yang membagi beberapa segmen dengan ukuran variable dan dapat diletakkan pada tempat memori logis. Saat akan dieksekusi, segmen yang berasal dari memori logis tersebut diletakkan ke memori fisik.

Leave a Reply

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

* Kode Akses Komentar:

* Tuliskan kode akses komentar diatas: