Post on 12-Jul-2015
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 1/33By: Esty Swandana & Mirza Sulthony
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 2/33
Latar Belakang
Demand Paging
Page Replacement Algorithm
Thrashing
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 3/33
Pada sebuah program, instruksi yang akandieksekusi harus berada di memori fisik/main
memory (RAM) Tidak seluruh bagian program diproses,
misal:
Error handling
Alokasi array/list/ tabel yang tidak terpakai
Option atau feature tertentu yang jarangdigunakan
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 4/33
Berarti, meskipun seluruh bagian programdiunggah ke main memory, tidak semuanyaterpakai.
Pada memori dengan kapasitas terbatas, hal
ini akan menurunkan optimalisasi utilitas dariruang memori fisik (memori utama).
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 5/33
Masalah:
Bagaimana menempatkan program yang
berukuran lebih besar dari kapasitas RAM.
Multiprogramming yang membutuhkan alokasimemory besar.
Solusi: menggunakan virtual memory
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 6/33
Virtual memory: mekanisme yangmemisahkan antara memori logis danmemori fisiknya.
Mekanisme ini menempatkan keseluruhanprogram di memori sekunder dan membawa page yang diperlukan ke memori fisiksehingga RAM hanya akan menyimpansebagian alamat proses yang seringdigunakan (dapat diambil sesuai kebutuhan).
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 7/33
Skema Virtual Memory
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 8/33
Keuntungan menggunakan virtual memory:
1. Lalu lintas I/O menjadi rendah2. Program tidak terbatas jumlah memori fisik
yang tersedia.
3. Dapat menjalankan beberapa program secarabersamaan.
4. Shared library (copy-on-write).
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 9/33
Virtual Memory diimplementasikan dengan 2cara:
Demand Paging
• Menerapkan konsep pemberian halaman/ page padaproses
Demand Segmentation
• Menerapkan konsep ukuran segmen yang bervariasi
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 10/33
Latar Belakang
Demand Paging
Page Replacement Algorithm
Thrashing
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 11/33
Merupakan implementasi Virtual Memoryyang paling umum digunakan.
Memiliki prinsip yang sama denganswapping. Perbedaannya adalah pada
demand paging, page tidak akan dibawa kememori fisik sampai benar-benardiperlukan (lazy swapper/pager ).
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 12/33
Proses demand paging:
1
• Seluruh page dari proses yang akan dieksekusi disimpandi memori sekunder (disk).
2
• Saat sebuah page diperlukan, proses akan mengakses page table untuk referensi page yang diinginkan.
3
• Jika valid-invalid bit = ‘valid’ page sudah ada dimemori utama.
• Jika valid-invalid bit = ‘invalid’ page tidak berada dimemori utama terjadi page fault
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 13/33
Valid-invalid Bit: digunakan untuk menentukan page mana yang sudah berada di memori utamadan mana yang tidak ada.
Jika bit = 0, akan terjadi page fault .
• Status = ‘valid’
• Page berada di memori utamaBit = 1
• Status = ‘invalid’
• Page berada di memori sekunder atau memang tidakada.Bit = 0
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 14/33
Skema Demand Paging
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 15/33
Page Fault: interupsi yang terjadi ketika page
yang dibutuhkan oleh suatu proses tidakberada di memori utama.
Ketika page fault terjadi, proses akan
dihentikan sementara page yang dimintadicari di dalam memori sekunder.
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 16/33
Terjadi page fault
Hardware
melakukan trap (proses terjebak
pada OS)
Referensi alamatdiberikan pada OS
Referensi alamat = legal pagediambil dari disk
Referensi alamat = ilegal proses dihentikan
Page dibawa kememori utama & page table diatur
ulang
Proses diulangkembali
Penanganan page fault :
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 17/33
Skema Penanganan
Page Fault
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 18/33
Latar Belakang
Demand Paging
Page Replacement Algorithm
Thrashing
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 19/33
Page replacement algorithm: algoritmauntuk menentukan page mana yang akan di
swap out ketika sebuah page barumembutuhkan frame.
Page replacement digunakan untukmengatasi over-allocating saat dilakukanswap in.
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 20/33
Skema page replacement
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 21/33
Kriteria page replacement algorithm yang baik:
Menyebabkan page fault yang rendah
Tidak menyebabkan thrashing
Tidak terlalu sulit diimplementasikan
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 22/33
Macam-macam page replacement algorithm:
1. Algoritma Optimal Prinsip: mengganti page yang tidak akan
terpakai lagi dalam jangka waktuterlama.
Algoritma dengan page fault terendah. Sulit diimplementasikan (sistem tidaktahu page apa saja yang akan digunakanselanjutnya).
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 23/33
2. Algoritma FIFO (First In, First Out) Prinsip: seperti prinsip antrian (antrian
tak berprioritas). Algoritma paling sederhana. Dianggap cukup baik sampai tahun
1970-an ketika Belady menemukananomali pada algoritma ini (AnomaliBelady).
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 24/33
3. Least Recently Used (LRU) Mengasumsikan page yang sudah
lama tidak digunakan tidak dibutuhkanlagi sehingga dapat di-swap out .
Performanya mendekati algoritmaoptimal dengan cost sedikit lebih
besar. Menggunakan linked list untuk
mendata page mana yang paling lamatidak terpakai.
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 25/33
4. Algoritma Second Chance Menggunakan circular queue dan
reference bit bernilai 1 atau 0. Page dengan reference bit = 1 (baru di-
load ) tidak akan langsung diganti
meski di antrian paling bawah. Berdasarkan pada algoritma FIFO yang
disempurnakan.
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 26/33
5. Algoritma Random Page yang akan di-swap out dipilih secara
acak. Relatif low cost , karena tidak
memerlukan stack , queue atau counter . Page fault -nya tinggi, tetapi lebih unggul
dalam hal memory looping reference dariAlgoritma LRU.
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 27/33
Latar Belakang
Demand Paging
Page Replacement Algorithm
Thrashing
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 28/33
Ialah kondisi dimana satu proses terlalu sibukmelakukan page swapping, sehingga waktu
processing lebih banyak untuk pagingdaripada untuk eksekusi.
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 29/33
Cara menghindari thrashing
Menambah real memory Memperbaiki desain aplikasi
Scheduling
Memperbaiki penggunaan memori
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 30/33
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 31/33
Efek thrashing dapat dibatasi denganmenggunakan algoritma local (priority)replacement.
Yaitu pengukuran yang menunjukkan bahwa
setiap program membutuhkan minimal sethalaman.
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 32/33
Untuk menghentikan thrashing, proses manayang harus di-non aktifkan?
Proses dengan prioritas paling rendah
Faulting process
Proses yang terakhir kali diaktifkan
Proses terkecil
Proses terbesar
5/11/2018 Virtual Memory Mirzest - slidepdf.com
http://slidepdf.com/reader/full/virtual-memory-mirzest 33/33