Manajemen Memory
MANAJEMEN MEMORY
Pemrosesan terhadap segala kinerja komputer perlu untuk diperhatikan agar bisa berjalan dengan baik. Pengaruh kelancaran dalam menjalankan program dipengaruhi olehperangkat-perangkat yang saling berkaitan dalam pengoperasiannya. Penggunaan CPU pada komputer akan sangat dipengaruhi oleh perangkat yang bernama memori, di mana memori tersebut sebagai penyimpan data-data yang dibutuhkan oleh kita dan saling memiliki keterikatan antar proses ketika menjalankannya. Oleh karena itu kita harus bisa mengelola CPU dengan cara sebaik mungkin.
Performa CPU pada memori akan sangat berpengaruh ketika kita dapat mengolahnya
dengan baik, jika kita bisa mengolah suatu CPU dengan maksimal kinerja pada komputer akan lebih lancar dan semakin nyaman untuk digunakan. Untuk mebuat CPUsemakin baik maka kita perlu mengelola memory dengan terstruktur agar penggunaanya lebih efisien.
Mengapa demikian?. Mengingat pada komputer CPU memiliki fungsinya masing-masing untuk dapat menyelesaikan suatu program. CPU bekerja dengan memperoleh instruksi dari sebuah memori yang menyimpan suatu data, instruksi ini akan mengakibatkan penambahan muatan dari alamat satu memori menuju memori yang lain dan terjadi eksekusi dari data yang diperoleh dari memori tersebut. Oleh karena itu memori akan selalu terpakai penggunaannya ketika komputer menjalankan programnya. Fungsi pada CPU perlu ditingkatkan agar tidak mengakibatkan suatu proses berjalan dengan suatu kesalahan sehingga mengakibatkan kekeliruan proses yang mengakibatkan program berjalan dengan tidak maksimal. Transfer data yang dilakukan pada suatu memori utamake CPU akan berjalan dengan efisien jika kita melakukan manajemen memory dengan baik. Manajemen memori selalu berhubungan dengan memori utama sebagai pusat untuk menyimpan data yang selalu digunakan bersama dengan beberapa proses yang aktif.
Manajemen memori perlu dilakukan agar program atau pemrosesan tidak terbatasi oleh suatu memori yang seharusnya dapat kita gunakan dengan baik namun karena salah dalam menggunakan langkahnya suatu proses tersebut akan menjadi terhambat.
FUNGSI MANAJEMEN MEMORY
Manajemen memori bukan semata-mata kita lakukan dalam penggunaan komputer,
banyak faktor yang dapat diperhatikan dari manajemen memori tersebut. Dengan
manajemen memori kita dapat mempermudah suatu pemrosesan. Pengelolaan informasi pada suatu memory yang terpakai akan dilakukan dalam manajemen memori. Jika manajemen memori dilakukan maka memori yang tidak sedang digunakan akan bekerja dengan baik seperti memindahkan memori ke proses yang memerlukan agar suatu memori selalu bekerja, memori yang baik akan selalu bekerja dengan melengkapi proses yang memerlukannya. Proses yang telah selesai pada CPU akan dihentikan penggunaan memorinya dan memori tersebut berpindah ke memori yang lain untuk saling melengkapi. Jika memori tidak dihentikan ketika suatu pemrosesan pada CPU maka akan terjadi
pemborosan memori, jika proses telah selesai berarti memori tersebut sudah selesai
menjalankan tugasnya dan segera mengosongkannya kemudian mencari proses yang lain
pada CPU. Pada proses manajemen memori, dilakukan pertukaran antara memori utama
dengan disk atau biasa disebut dengan swapping.
SWAPPING
Sesuai namanya swapping dapat diartikan sebagai pertukaran adalah pertukaran memori.
Jika memori yang akan digunakan telah habis maka penyimpanan data akan dipindahkan
kepada disk sebagai memory virtual, namun proses pada disk akan terasa lebih lambat
jika dibandingkan dengan memory utama. Proses saling menukar data tersebut berguna
pada program yang sedang tidak dijalankan dan dapat disimpan pada disk sampai
program tersebut dijalankan lagi.
Swaping memiliki dua tipe untuk melakukan pengelolaan.
– Manajemen tanpa swapping
– Manajemen dengan swapping
MONOPROGRAMING
Monoprograming merupakan manajemen memori pada sistem komputer, cara kerja
monoprograming yaitu dengan menjalan suatu program yang digunakan dalam satu
waktu, artinya tidak ada program lain yang berjalan pada manajemen memori
monoprograming. Sumber daya yang diguakan pada monoprograming akan digunakan
sepenuhnya oleh proses yang sedang berjalan saat itu, seluruh proses yang akan
dijalankan selalu menunggu giliran ketika proses pada suatu program yang sedang
berjalan sudah selesai.
Ciri-ciri manajemen pada monoprograming:
– Pemrosesan hanya terjadi pada suatu saat
– Pada satu prosesnya digunakan semua memori pada CPU
– Semua program terpusat pada seluruh memori dan disk
Monoprograming menggunakan memori utama yang terdiri dari
– System operasi yang terdapat pada RAM
– Program yang terpakai pada RAM
– Memori yang tidak digunakan
Pada proses monoprograming suatu program yang diproses akan menjadi cepat karena
program hanya terfokus pada satu pekerjaan dan tidak dibagi sehingga RAM yang
tersedia akan lebih banyak.
MULTIPROGRAMING
Multiprograming merupakan suatu proses yang berkaitan dengan monoprograming mono
yang berarti satu sedangkan multi berarti banyak, sehingga dapat diartikan jika
multiprogramming adalah kemampuan melakukan banyak proses secara bersamaan pada
memori utama yang terdapat pada CPU. Multiprograming digunakan jika diperlukan
untuk menjalankan tugas-tugas lain untuk keperluan menjalankan suatu tugas.
Multiprograming digunakan untuk berbagai tujuan.
– Program akan dapat dibagi menjadi beberapa bagian sehingga akan memudahkan
untuk melakukan klasifikasi.
– Penggunaan sumber daya atau memori akan digunakan secara efisien karena
masing-masing memory akan selalu berjalan dengan masing-masing program
yang digunakan.
– Multiprograming bermanfaat untuk mengerjakan beberapa pengerjaan sekaligus
– Memori yang digunakan tidak akan terlalu besar karena sudah ada pembagian memori secara dipartisikan untuk mengelompokan masing-masing tugasnya.
Partisi memori dilakukan untuk memudahkan pengguna dalam melakukan manajemen
memory sesuai kebutuhan. Jika ada suatu memori yang tidak terpakai maka memori
tersebut akan mencari tugasnya sesuai yang diperintahkan sesuai pengelompokan
partisinya, biasanya partisi dibagi menjadi dua bagian, yaitu pembagian memori pada
system operasi di komputer dan memori yang digunakan untuk menyipan data-data file.
Partisi Statis
Memory pada partisi statis akan dibagi menjadi beberapa bagian. Pemartisian dibagi
menjadi beberapa pengelompokan berdasarkan ukurannya. Partisi dilakukan dengan
membagi suatu memory dengan jumlah yang sama besarnya, kemudian pemartisian juga
dapat dilakukan dengan membagi suatu memori dengan ukuran yang berbeda pada
masing-masing memori sesuai dengan kebutuhannya.
Partisi dengan ukuran sama memiliki suatu kelemahan yaitu jika program yang akan
dijalankan lebih besar maka program tersebut tidak akan bisa berjalan. Program tersebut
memerlukan utnuk dipecah menjadi beberapa bagian untuk bisa masuk ke dalam sebuah
partisi memori, sehingga suatu program tersebut tidak akan berjalan dengan maksimal
karena sebenarnya masing-masing partisi diperuntukan untuk tugas yang berbeda.
Jika ada program yang memiliki ukuran lebih kecil daripada partisi yang tersedia maka
menyisakan ruang pada memori komputer akan terjadi pemborosan memori, namun ini
lebih baik jika dibandingkan suatu program lebih besar dari partisi yang tersedia. Program
akan tetap bisa berjalan dengan normal jika suatu partisi yang tersedia lebih besar
daripada program yang akan dieksekusi.
Fragmentasi Pada Partisi Statis
Fragmentasi bisa disebut dengan pemborosan memori karena sebuah proses tidak mengisi
penuh memori partisi yang ditetapkan, partisi tersebut dikenal dengan fragmentasi
internal. Sedangkan fragmentasi eksternal adalah kondisi di mana sebuah partisi lebih
kecil ukurannya dibandingkan ukuran suatu proses di dalam antrian.
Partisi Dinamis
Partisi dinamis menyebabkan borosnya memori dengan proses yang lebih kecil dibanding
partisi yang ditempatinya. Partisi dinamis membuat jumlah, lokasi, dan ukuran proses
dapat beragam secara dinamis.Proses yang masuk ke dalam memori akan akan mencari
partisi sesuai dengan kebutuhan.
Kelemahan pada partisi dinamis yaitu pada terjadinya lubang kecil memori diantara
partisi yang dipakai. Partisi dinamis dinilai lebih rumit untuk mengalokasikan kepada
memori.
Sebagai contoh pada proses partisi dinamis. Ada empat proses dalam proses pengolahan,
urutan prosesnya adalah proses 0,1,2,3. Jika proses pada proses 1 selesai sudah selesai
maka memory pada partisi akan mencari proses berikutnya yaitu proses 2, namun pada
proses 1 yang sudah berakhir masih tersisa riwayat sudah dgigunakan yang meninggalkan
lubang pada proses yang sudah tidak terpakai tersebut,. Jika proses 2 sudah selesai pun
partisi akan selalu mencari proses selanjutnya namun tetap meninggalkan memori yang
tidak terpakai pada proses 2 ketika melanjutkan menuju proses 3. Lubang-lubang tersebut
dapat diatasi dengan cara melakukan pemadatan memori, penggabungan lubang yang
kecil tersebut secara berdekatan sehingga menjadi lubang yang besar dengan
memindahkan semua proses. Namun pemdatan memori memiliki beberapa kelemahan
seperti waktu tunggu yang sangat lama, system operasi harus menghentikan semua proses
pemadatan ketika berjalannya pemadatan. Pemadatan memori pada partisi dinamis juga
menyebabkan proses dapat tumbuh berkembang.
Cara menyelesaikannya:
Bila masih terdapat lubang besar yang memuat proses, maka dipindahkan ke lubang
memori yang mampu untuk menampungnya.
Satu proses atau lebih melakukan swap ke disk untuk memberi lubang yang besar dalam
proses yang berkemang.
Alokasi pada sekumpulan blok juga diperlukan untuk membuat suatu proses bisa
menempatkan sesuai ukuran yang dibutuhkan pada suatu memori. Kesesuaian itu
diperlukan untuk berjalannya proses dengan baik. Pada penempatan memori suatu proses
akan mencari memori dengan berbagai cara
Algoritma First Fit
Pada proses ini suatu proses akan mencari memori sesuai urutan partisi dan sesuai dengan
ukuran proses yang akan menempati partisi tersebut. Jika ada suatu urutan partisi 4Kb,
3Kb, 2Kb, 6Kb. Maka data yang akan masuk berukutan 3Kb akan menempati partisi yang
berukuran 4Kb.
Algoritma Next Fit
Proses ini merupakan kebalikan dari algoritma First Fit namun pada kondisi ini data yang
akan dimuat akan dimulai dari bagian partisi pada urutan terakhir namun dengan
memperhatikan ukuran partisi yang sesuai.
Algoritma Best Fit
Algoritma ini memulai pencarian partisi pada suatu proses data dan akan menempati
partisi yang paling kecil sesuai dengan urutan. Semisal terdapat partisi dengan ukuran dan
urutan 4Kb,7Kb,2Kb. Jika suatu data berukuran 2Kb maka suatu data tersebut akan
menempati partisi memori yang berukuran 2Kb.
Algoritma Worst Fit
Pencarian proses untuk menemukan partisi ditempatkan di tempat yang memiliki partisi
terbesar. Jika terdapat partisi berukuran 4Kb,6Kb,8Kb. Jika ada data yang ukurannya 5Kb
maka akan menempati partisi yang berukuran 8Kb.