BAB VII
MANAJEMEN MEMORY
Jenis Memori
Media penyimpanan data di dalam komputer disebut sebagai memori atau storage.
Dalam hal ini, pengertian memory terbagi menjadi 2, yaitu internal memory dan
eksternal memory. Ada 2 pengaruh dari manajemen memori dalam pembuatannya, yaitu
:
- Diinginkan bahwa memory management harus sesederhana mungkin
- Ada kehendak supaya pemakai bisa fleksibel dalam penggunaannya.
1. Internal memori
Adalah suatu memori yang terletak di dalam CPU atau disebut juga internal storage.
Pada dasarnya memori ini mempunyai sifat volatile memori, di mana hanya dapat
bekerja bila ada arus listrik.
Internal memori terbagi lagi menjadi 2, yaitu :
a. Random Access Memory (RAM), yaitu bagian memori yang bisa dipakai user
untuk menyimpan program dan data. Ram terbagi menjadi : input area,
program area, working area, dan output area.
b. Read Only Memory (ROM), contohnya antara lain ROM, PROM, EPROM,
EEPROM.
2. Eksternal memori
Disebut juga external storage atau secondary storage, yaitu suatu tempat atau sarana
yang bisa dipakai komputer untuk menyimpan data atau program. Contoh : Hard disk,
disket, compact disk, magnetic tape. Sifat dari memori utama adalah non-volatile
memory.
Manajemen Memori
Mengapa memori perlu diatur ? Menurut Von Neumann, memori perlu diatu agar proses
dapat berjalan dengan efisien, di mana data dan program harus disimpan dalam lokasi
yang sama untuk memori.
Secara umum, memori utama harus diatur sebaik mungkin supaya :
1. Meningkatkan utilitas CPU yang sebesar-besarnya
2. Data dan instruksi dapat diakses dengan cepat oleh CPU
3. Memori utama memiliki kapasitas yang sangat terbatas sehingga pemakaiannya
harus seefisien mungkin
4. Transfer data dari atau ke memori utama ke atau dari CPU dapat efisien
1
Ada beberapa syarat dalam manajemen memori, yaitu :
1. Relokasi. Prosessor dan sistem operasi harus dapat mentranslasikan memori
refensi (dalam bentuk kode program) ke alamat fisik yang mengalokasikan
program dalam memori utama
2. Proteksi. User tidak boleh mengakses beberapa bagian dari wilayah sistem
operasi
3. Sharing. Manajemen memori harus dapat mengontro sharing area pada memori
utama
4. Organisasi Logika. Sistem operasi dan hardware diusahakan untuk dapat
berhubungan dengan user program dalam suatu modul
5. Organisasi Fisik. Harus ada pengaturan yang jelas antara memori utama dengan
memori sekunder pada longterm schedulling.
8 Cara manajemen memori :
1. Single Contignous Allocation Memory Management (SCMM)
Memori ini setiap saat hanya dipakai untuk 1 job saja. Sifat-sifatnya antara lain :
a. Sederhana, untuk mengatur penggunaan memori
b. Memori dibagi 2 bagian, yaitu untuk sistem operasi dan sisanya untuk job
c. Tidak ada multiprogramming
d. Job dikerjakan satu demi satu sampai selesai
SCMM
SCMM memiliki beberapa keunggulan, antara lain :
a. operating systemnya sangat mudah, kira-kira membutuhkan 1 kbyte
b. di dalam pemakaiannya, tidak diperlukan pengetahuan yang terlalu rumit
c. tidak memerlukan perangkat keras khusus
Kelemahan :
a. Memori yang ada kadang-kadang hanya dipergunakan sebagian, jadi tidak efisien
b. Kalau programnya sedang menunggu I/O, maka memori tidak dipakai sama sekali
c. Setiap proses yang dijalankan bersarnya harus maksimum dengan memori yang ada
d. Pemakai prosesor tidak efisien
e. Besarnya user’s job maksimum sebesar memori yang ada
2
2. Partitioned Allocation Management Memory
PAMM mempunyai sifat antara lain :
1. Pengelolaan sederhana untuk multiprogramming
2. Tersimpan beberapa job untuk job lain, sementara ia menunggu operasi I/O
devices bagi sebuah job
3. Bekerja dengan cara membagi-bagi memori dalam sejumlah partisi dan
mempunyai tugas yang berbeda-beda.
Tipe partisi :
a. Partisi statis
Dilakukan dengan cara membagi memori menjadi beberapa partisipasi dengan
ukuran tetap namun besar partisi dapat berbeda-beda. Cara ini dipakai oleh
komputer yang telah mengetahui ukuran rata-rata dari job, sehingga tidak banyak
memori yang diboroskan.
Kerugian dari partisi statis ini adalah timbulnya banyak area-area kosong di dalam
job atau sering terjadi fragmentasi.
Beberapa proses yang hendak masuk dapat diletakkan ke sembarang partisi kosong
sehingga suatu proses yang memiliki ukuran yang lebih besar dari partisi yang
disediakan tidak dapat dialokasikan ke partisi yang disediakan. Dan karena ukuran
partisi yang tidak sama, maka ada 2 strategi pengelolaan, yaitu :
- metode banyak antrian
Proses ditempatkan pada partisi dengan ukuran terkecil yang dapat memuatnya.
Kelemahannya, di mana ada partisi tertentu yang panjang antriannya, di lain
pihak ada partisi yang kosong
- metode satu antrian untuk seluruh partisi
Proses diantrikan pada satu antrian tunggal. Model ini memiliki kelemahan,
yaitu jika proses yang memiliki ukuran kecil diletakkan pada partisi yang
ukurannya sangat besar, maka akan timbul pemborosan.
b. Partisi dinamis
Karena dengan partisi statis masih kurang efisien, maka dibuat suatu konsep partisi
dinamis, di mana partisi akan dibuat setelah suatu proses masuk ke memori utama.
Kerugiannya yaitu timbulnya fragmentasi karena penempatan (pengalokasian) tidak
urut, adanya dealokasi job.
Keunggulannya, memudahkan multiprogramming dan piranti I/O lebih efisien dan
algoritmanya serta operating systemnya sangat mudah.
3
3. Relocation Partitioned MM
Merupakan alokasi yang menghindari terjadinya fragmentasi. Caranya memindahkan isi
dari bagian-bagian untuk dikelompokkan menjadi satu, dengan demikian didapat satu
bagian memori bebeas yang cukup besar. Proses perapatan ini dilakukan berkali-kali
apabila dibutuhkan. Namun resiko yang dihadapi adalah seringkali terjadi perubahan
pengalamatan akibat pemindahan.
4. Paged AllocationMM
Yaitu suatu memori yang secara fisik terdiri dari halaman-halaman dari 0 sampai n.
Dilihat dari penempatan job dalam memori, terdapat 2 hal, yaitu :
a. Dari segi user, job-job tersebut terletak pada suatu memori secara berurutan
b. Dari segi sistem (fisik), job-job tersebut dalam memori akan menempati bagian-
bagian memori yang belum tentu berurutan
Keuntungannya adalah tidak diperlukan perapatan-perapatan lokasi. Sedang
kerugiannya adalah masih terjadi internal fragmentation pada page breakage (bagian
memori yang tidak terpakai dalam satu blok)
5. Page Map Table MM
Yaitu suatu tabel yang digunakan untuk membantu menempatkan job-job dalam
memori, yang mana bail dilihat dari segi user maupun dari segi sistem job-job tersebut
berurutan.
6. Demand Page Allocation MM
Pada dasarnya sama dengan page allocation, hanya tidak semua page pada job yang
dijalankan berada di dalam memori, karena sebenarnya sesaat hanya dapat dilaksanakan
sebuah instruksi saja. Perangkat keras pemetaan alamat memeriksa halaman yang
dibutuhkan dalam memori. Apabila halaman belum ada, maka timbul kendala page
interupt.
Cara mengatasi page interupt adalah :
a. menunggu job lain membebaskan memori
b. menggantikan page yang ada di dalam PMT dipindahkan ke memori
4
7. Segmented MM
Yaitu suatu ruang alamat garapan mempunyai beberapa bagian yang sebenarnya
terpisah. Misalnya program utama, program subroutin, data-data larik, dsb. Bagian
tersebut disebut segment. Alamat-alamat tiap segment di memori disimpan dalam tabel
yang disebut tabel peta segment (segment table map)
Keuntungannya adalah menghilangkan fragmentasi, memberikan memori semu dan
adanya fasilitas masuk yang terkontrol. Sedangkan kelemahannya adalah kesulitan
mengatur segmen-segmen yang tertentu ukurannya. Ukuran maksimum tiap segmen
masih terbatas pada ukuran.
Konsep Binding
Binding adalah proses penempatan suatu item ke dalam lokasi memori tertentu. Binding
dapat terjadi pada saat compile, load, dan eksekusi.
Pada saat compile, dimungkinkan alamat memori diketahui sebelum dieksekusi. Namun
bila alamat tersebut belum diketahui maka dapat ditunda saat load. Pada saat eksekusi,
dimungkinkan suatu proses berpindah alamatnya sewaktu dieksekusi.
Ruang alamat logika dan fisik
Alamat logika ialah alamat yang diturunkan oleh CPU, sedangkan alamat yang terdapat
dalam memori disebut dengan alamat fisik. Pada saat compile dan loan alamat logika
dan fisik menunjukkan nilai yang sama, sedangkan pada saat eksekusi dapat terjadi
perbedaan.
Alamat fisik yang berhubungan dengan alamat logika disebut dengan ruang alamat fisik.
Swapping
Suatu proses dialihkan sementara dari memori ke suatu tempat penyimpanan, dan
dipanggil kembali ke memori jika akan melanjutkan eksekusi. Proses ini disebut dengan
swapping.