Anda di halaman 1dari 9

PEMBAHASAN

A. MANAJEMAN MEMORY
manajemen memori adalah suatu kegiatan untuk mengelola memori komputer. Proses ini
menyediakan cara mengalokasikan memori untuk proses atas permintaan mereka, membebaskan
untuk digunakan kembali ketika tidak lagi diperlukan serta menjaga alokasi ruang memori bagi
proses. Pengelolaan memori utama sangat penting untuk sistem komputer, penting untuk
memproses dan fasilitas masukan/keluaran secara efisien, sehingga memori dapat menampung
sebanyak mungkin proses dan sebagai upaya agar pemogram atau proses tidak dibatasi kapasitas
memori fisik di sistem komputer. Memori sangat penting yang harus diatur secara hati-hati,
walaupun rata-rata komputer rumah sekarang ini mempunyai memori sepuluh kali lipat
dibandingkan dengan memori IBM 7094. Manajemen memori DOS merupakan mekanisme
pengaturan memori pada sistem operasi DOS. Sistem operasi berjalan dalam modus real dengan
arsitektur berbasis prosesor intel x86. Dalam modus real, hanya 20-bit pertama dari bus alamat
yang akan digunakan oleh sistem operasi untuk mengakses memori, sehingga menjadikan jumlah
memori yang dapat diakses hanya mencapai 22 0=1048576 bytes (1 MB) saja, dari yang
seharusnya 32-bit/40-bit pada prosesor-prosesor modern. Ada beberapa macam jenis memori
diantaranya :

a. Memori kerja
 ROM/PROM/EPROM/EEPROM
 RAM
 Cache memory
b. Memori dukung

 Floppy
 Hardisk
 CD, Dll.
Terdapat 2 (dua) manajemen memori yaitu : a. Manajeman memori statis Dengan pemartisian
statis, jumlah, lokasi dan ukuran proses dimemori tidak beragam sepanjang waktu secara tetap. b.
Manajemen memori dinamis Dengan pemartisian dinamis , jumlah, lokasi dan ukuran proses
dimemori dapat beragam sepanjang waktu secara dinamis. Manajemen memori berdasarkan
alokasi memori, Terdapat 2 (dua) cara menempatkan informasi ke dalam memori kerja, yaitu:
a.Alokasi Memori Berurutan (Contiguous Allocation) Pada alokasi memori berurutan, setiap
proses menempati satu blok tunggal lokasi memori yang berurutan. Kelebihan : sederhana, tidak
ada rongga memory bersebaran, proses berurutan dapat dieksekusi secara cepat. Kekurangan :
memori boros, tidak dapat disisip apabila tidak ada satu blok memori yang mencukupi
b.Alokasi Memori Tak Berurutan (Non Contiguous Allocation) Program/proses ditempatkan
pada beberapa segmen berserakan, tidak perlu saling berdekatan atau berurutan. Biasanya
digunakan untuk lokasi memori maya sebagai lokasi page-page. Kelebihan : sistem dapat
memanfaatkan _ memori utama secara lebih efesien, dan sistem opersi masih dapat menyisip
proses bila jumlah lubang-lubang memori cukup untuk memuat proses yang akan dieksekusi.
Kekurangan : memerlukan pengendalian yang lebih rumit dan memori jadi banyak yang
berserakan tidak terpakai.
 Alamat Memori
a. Alamat memori mutlak (alamat fisik)
b. Alamat memori relatif (alamat logika)
c. Hubungan antara alamat multak dan alamat relatif
d. Jenis memori dan alamat memori
 Isi Memori
a.Sistem bahasa penataolahan
b.Sistem Utilitas
c. Inti Sistem Operasi
d. Sistem Operasi
e. Pengendali alat (device drivers)
f. File pemakai
 Fungsi manajeman memory
a.Mengelola informasi yang dipakai dan tidak dipakai
b. Mengalokasikan memori ke proses yang memerlukan.
c. Mendealokasikan memori dari proses telah selesai.
d. Mengelola swapping atau paging antara memori utama dan disk. Sistem operasi memberikan
tanggapan terhadap manajemen memori utama untuk aktivitas-aktivitas sebagai berikut: a.
Menjaga dan memelihara bagian-bagian memori yang sedang digunakan dan dari yang
menggunakan. b. Memutuskan proses-proses mana saja yang harus dipanggil kememori jika
masih ada ruang di memori. c. Mengalokasikan dan mendelokasikan ruang memori jika
diperlukan
Jenis-jenis manajeman memory
a. Manajeman memory untuk monoprograming
Bila program komputer yang dijalankan hanya satu jenis selama proses berlangsung maka
dikatakan mode kerja komputer itu adalah monoprogramming. Selama komputer itu bekerja
maka memory RAM seluruhnya di kuasai oleh program tersebut. Jadi RAM tidak dapat di
masuki oleh program lain. Mode serupa ini di temui pada komputer berbasis DOS. Penempatan
program di memory diatur sedemikain rupa sehingga (Eko, 2009) :
 BIOS selalu di ROM (BIOS)
 Sistem Operasi di RAM bawah (alamat rendah)
 Program Aplikasi di RAM tengah (alamat sesudah OS terakhir)
 Data Sementara di RAM atas (alamat sesudah Aplikasi terakhir).

Bila sistem operasi telah selasai dimuat maka tampillah prompt di layar monitor, dan itu adalah
tanda bahwa komputer siap menerima program aplikasi. Letakkan disk yang berisi program
aplikasi pada diskdrive yang aktif lalu eksekusi , sehingga program itu termuat seluruhnya ke
RAM. Dengan demikian program aplikasi siap digunakan menurut semestinya.Kita lihat ketika
komputer mula-mula dinyalakan maka proses yang dibaca pertama kali adalah apa yang tertulis
di dalam ROM. Setelah semua perintah di adalam ROM BIOS selesai dibaca maka komputer
meminta kita memasukkan DOS ke dalam RAM-nya.Ketika DOS dibaca maka diletakkan
sebagian dari program DOS yang terpenting saja ke dalam RAM, seperti : COMMAND.COM
dan INTERNAL COMMAND. Sedangkan program DOS yang lain masih tetap di dalam disk
dan apabila kita perlukan dapat di eksekusi. Hal itu berguna untuk mrnjaga agar RAM tidak
penuh oleh Sistem Operasi saja. Didalam sistem juga dapat kita lihat bahwa sistem operasi
terletak berdekatan dengan program lain di RAM sehingga kemungkinan sistem operasi ter
ganggu atau terubah oleh proses yang sedang berjalan sangat besar .Hal itu tidak boleh
terjadi.Untuk mencegah terganggu sitem operasi tersebut maka alamat tertinggi dari sistem
operasi dletakkan pada register batas dalam CPU. Jika ada proses yang mengacu ke alamat itu
atau yang lebih rendah dari itu maka proses di hentikan dan program akan menampilkan pesan
kesalahan.
b. Manajeman memory untuk multiprograming
Untuk sistem komputer yang berukuran besar (bukan small computers), membutuhkan
pengaturan memori, karena dalam multiprogramming akan melibatkan banyak pemakai secara
simultan sehingga di memori akan terdapat lebih dari satu proses bersamaan. Oleh karena itu
dibutuhkan sistem operasi yang mampu mendukung dua kebutuhan tersebut, meskipun hal
tersebut saling bertentangan, yaitu :
a). Pemisahan ruang-ruang alamat
b). Pemakaian bersama memory Multiprograming berfungsi untuk mempermudah dua program
aplikasi atau lebih dalam menggunakan prosesor. Motivasi yang lain agar penampilan komputer
lebih layak, yaitu bahwa komputer seringkali digunakan untuk pelayanan alternatif oleh beberapa
pemakai secara bersama-sama. Oleh karena itu komputer membutuhkan kemampuan yang lebih
baik daripada hanya sebuah proses didalam memory untuk sebuah order.

Manajer memori harus memaksakan isolasi ruang-ruang alamat tiap proses agar mencegah
proses aktif atau proses yang ingin berlaku jahat mengakses dan merusak ruang alamat proses
lain. Manajer memori di lingkungan multiprogramming sekalipun melakukan dua hal, yaitu :
a). Proteksi memori dengan isolasi ruang-ruang alamat secara dis-joint.
b). Pemakaian bersama memori
Dalam sistem operasi multiprograming, pengaturan memori menjadi lebih kompleks atau rumit.
Sistem operasi akan terus mencari bagian dari memori yang kosong untuk memuat proses yang
baru kemudian mengambil kembali memori saat proses sudah selesai. Tujuan

tujuan dari alokasi memori di sistem multiprograming adalah:
a). Memungkinkan proses yang aktif berjalan sebanyak mungkin
b). Merespon dengan cepat permintaan memory yang diperlukan proses
c). Mencegah perubahan tidak berhak pada setiap lokasi memori proses
d). Membuat alokasi dan pengalamatan memori dengan efesien
Dalam proses penanganan multiprograming, sistem operasi menggunakan bagian memori yang
sudah terpartisi dengan seimbang, dan pada masing-masing bagian tersebut dapat menggunakan
oleh atau thread. Sistem operasi multiprograming membagi setiap bagian dari memori untuk
ditempati oleh proses,dan setiap proses
tersebut diatur sesuai dengan kebutuhan serta tidak diizinkan untuk saling interfensi satu dengan
yang lainnya.

 Swapping
swapping adalah Suatu metode pengalihan proses yang bersifat sementara dari memori utama ke
suatu tempat penyimpanan sementara (disk) dan dipanggil kembali ke memori jika akan
melakukan eksekusi.
Adapun proses pindahkan yaitu proses yang di blocked ke disk dan hanya memasukkan proses-
proses ready ke memory utama.
Klasifikasi manajemen memori didasarkan pada ada atau tidaknya swapping:
a.Manajemen memori tanpa swapping
manajemen memori tanpa pemindahan proses antara memori utama dan disk selama eksekusi.
— Monoprogramming
— Multiprogramming dengan partisi statis
b.Manajemen memori dengan swapping
manajemen memori dengan pemindahan proses antara memori utama dan disk selama eksekusi.
— Multi programming dengan partisi dinamis
MACAM-MACAM SWAPPING
1. Monoprograming
 Sistem komputer hanya mengijinkan satu proses berjalan pada satu waktu.
 Karena hanya terdapat 1 proses dalam 1 waktu maka alokasi memori dilakukan secara
berurutan.
2.Multiprogramming dengan partisi statis
 Multiprogramming dengan partisi statis dilakukan dengan cara membagi memori menjadi
beberapa partisi dengan ukuran tetap.
 Jika ada beberapa proses yg menggunakan memori utama secara bersamaan, maka
memori harus dibagi menjadi beberapa partisi dengan ukuran tertentu.
 Tiap-tiap partisi digunakan oleh satu program. Jika proses tersebut telah selesai, maka
lokasi partisi tsb akan digunakan oleh proses yg lain. Contohnya IBM OS2/360
3. Multiprogramming dengan Swapping
 Dengan swapping, multiprogramming sistem time-sharing dapat ditingkatkan kinerjanya
yaitu dengan memindah proses blocked ke disk dan hanya memasukan proses ready ke
memori utama.
Masalah yang harus diatasi multiprogramming dengan swapping, yaitu :
a. Pemartisian secara dinamis
b. Strategi pengelolaan memori bebas
c. Algoritma penempatan proses ke memori
d. Srtrategi penempatan ruang swap pada disk
VIRTUAL MEMORY
Memori virtual adalah suatu teknik yang memisahkan antara memori logis dan memori fisiknya.
Memori logis merupakan kumpulan keseluruhan halaman dari suatu program. Tanpa memori
virtual, memori logis akan langsung dibawa ke memori fisik (memori utama). Disinilah memori
virtual melakukan pemisahan dengan menaruh memori logis ke secondary storage (disk
sekunder) dan hanya membawa halaman yang diperlukan ke memori utama (memori fisik).
Teknik ini menempatkan keseluruhan program di disk sekunder dan membawa halaman-halaman
yang diperlukan ke memori fisik sehingga memori utama hanya akan menyimpan sebagian
alamat proses yang sering digunakan dan sebagian lainnya akan disimpan dalam disk sekunder
dan dapat diambil sesuai dengan kebutuhan. Jadi jika proses yang sedang berjalan membutuhkan
instruksi atau data yang terdapat pada suatu halaman tertentu maka halaman tersebut akan dicari
di memori utama. Jika halaman yang diinginkan tidak ada maka akan dicari ke disk sekunder.
Virtual Memory (VM) memiliki tiga fungsi penting :
1. Sebagai perangkat cache
2. Sebagai perangkat manajemen memori
 VM menyederhanakan manajemem memori dengan melakukan teknik pengalamatan
yang seragam untuk setiap proses
 Pengalamatan disk, memori, cache dilakukan secara uniform
3. Sebagai perangkat untuk memproteksi memori
 VM melindungi alokasi alamat setiap proses terhadap gangguan
 Suatu proses tidak dapat diganggu oleh proses lain.

B. KONSEP DASAR MEMORI VIRTUAL


Pelaksanaan manajemen memori pada intinya adalah dengan menempatkan semua bagian proses
yang akan dijalankan ke dalam memori sebelum proses dapat mulai dieksekusi. Dengan
demikian semua bagian proses tersebut harus memiliki alokasi sendiri di dalam memori fisik.

C. CARA KERJA VIRTUAL MEMORI


Virtual Memory digunakan dengan membuat suatu file khusus yang disebut swapfile atau paging
file. Virtual memory digunakan pada saat operating system kehabisan memory, dimana o.s. akan
memindahkan data yang paling terakhir diakses ke dalam swapfile di hardisk. Hal ini
mengosongkan/ membebaskan beberapa ruang kosong pada memory untuk aplikasi yang akan
digunakan selanjutnya. Operating system akan melakukan hal ini secara terus menerus ketika
data baru diisi pada ram. Kemudian, pada saat data yang tersimpan di swapfile diperlukan, data
tersebut ditukar (swap) dengan data yang paling terakhir dipakai di dalam memory (ram). Hal ini
mengakibatkan swapfile bersifat seperti ram, walaupun program tidak dapat secara langsung
dijalankan dari swapfile. Satu hal yang perlu dicatat bahwa karena operating system tidak dapat
secara langsung menjalankan program dari swapfile, beberapa program mungkin tidak akan
berjalan walau dengan swapfile yang besar jika kita hanya memiliki ram yang kecil.

D.IMPLEMENTASI MEMORI VIRTUAL


a. Demand Paging
Demand paging adalah sistem paging dengan swapping. Page diletakkan di memori hanya jika
diperlukan. Hal ini menyebabkan kebutuhan I/O lebih rendah, kebutuhan memori lebih rendah,
respon lebih cepat dan lebih banyak user yang menggunakan.

Proses disimpan di memori sekunder (disk). Jika proses akan dieksekusi, maka dipindah (swap)
ke memori. Menggunakan lazy swapper untuk melakukan swapping bila page tersebut akan
digunakan yang berarti sebuah page tidak pernah ditukar ke memori kecuali page diperlukan.
Jika page diperlukan, dilakukan acuan ke page tersebut, tetapi jika acuan invalid maka dilakukan
penghentian. Untuk membedakan antara page pada memori dengan page pada disk digunakan
valid-invalid bit. Tabel page untuk page yang berada di memori diset "valid', sedangkan tabel
page untuk page yang tidak sedang di memori (ada pada disk) diset "invalid". Seperti Gambar
dibawah ini:
Apabila tidak ditemukan frame bebas makadilakukan page replacement yaitu mencari
beberapapage di memori yang tidak digunakan kemudian dilakukan swap outke backing store.
Terdapat beberapa algoritma page replacement dimana performansi algoritma diharapkan
menghasilkan jumlah page faultminimum. Beberapa page kemungkinan dibawa ke memori
beberapa kali. Perangkat keras yang dibutuhkan untukmendukung demand paging sama dengan
perangkat keras untuk sistem paging dengan swapping yaitu:
 ü Tabel page : tabel mempunyai kemampuan untuk memberi entry bit valid-invalid atau
nilai khusus untuk bit proteksi.
 ü Memori sekunder : digunakan untuk membawa page yang tidak di memori dan
biasanya adalah disk kecepatan tinggi yang disebut swap device.

b. Page Replacement
Page replacement diperlukan pada situasi dimana proses dieksekusi perlu frame bebas tetapi
tidak tersedia frame bebas. Sistem harus menemukan satu frame yang sedang tidak digunakan
dan membebaskannya. Untuk membebaskanframe dengan cara menulis isinya untuk ruang swap
dan mengubah tabel page (dan tabel lain) yang menunjukkan page tidak lagi di memori.
Kebutuhan akan page replacement dapat dilihat pada Gambar dibawah ini:
Langkah-langkah untuk page fault yang memerlukan page replacement seperti
Gambar dibawah iniadalah sebagai berikut :
1. Carilah lokasi pageyang diharapkan pada disk.
2.Carilah framekosong dg cara :
 ü Bila ada frame kosong, gunakan.
 ü Bila tidak ada, gunakan algoritma page replacement untuk menyeleksi frame yang
akan menjadi korban.
 ü Simpan page korban ke disk, ubah tabel page.
3. Baca page yang diinginkan ke frame kosong yang baru, ubah tabelpage.
4. Mulai kembali proses user.

c. Algoritma Page Replacement


Terdapat beberapa algoritma page replacement setiap sistem operasi mempunyai skema yang
unik. Algoritma page replacement secara umum diinginkan yang mempunyai rata-rata page fault
terendah. Algoritma dievaluasi dengan menjalankannya pada string tertentu dari memory
reference dan menghitung jumlah page fault String yang mengacu ke memori disebut reference
string (string acuan). String acuan dibangkitkan secara random atau dengan menelusuri sistem
dan menyimpan alamat dari memori acuan. Terdapat beberapa algoritma page replacement
antara lain algoritma first in first our (FIFO), optimal dan least recently use (LRU).
 Algoritma FIFO
Algoritma FIFO merupakan algoritma paling sederhana. Algoritma FIFO diasosiasikan dengan
sebuah Page bila Page tersebut dibawa ke memori. Bila ada suatu Page yang akan ditempatkan,
maka posisi Page yang paling lama yang akan digantikan. Algoritma ini tidak perlu menyimpan
waktu pada saat sebuah Page dibawa ke memori. Algoritma page replacement FIFO :

 Algoritma Optimal
Algoritma optimal merupakan hasil penemuan dari Belady’s anomaly. Algoritma ini mempunyai
rata-rata page fault terendah. Algoritma optimal akan mengganti page yang tidak akan digunakan
untuk periode waktu terlama. Algoritma ini menjamin rata-rata page fault terendah untuk jumlah
frame tetap tetapi sulit implementasinya.

 Algoritma Least Recently Use (LRU)


Algoritma LRU merupakan perpaduan dari algoritma FIFO dan optimal. Prinsip dari algoritma
LRU adalah mengganti page yang sudah tidak digunakan untuk periode waktu terlama.

Anda mungkin juga menyukai