Memori Virtual (Virtual Memory) Heri Kurniawan OS-Genap 2007/2008

dokumen-dokumen yang mirip
Memori Virtual. Program membutuhkan kapasitas yang lebih besar dari kapasitas memori fisik gunakan Virtual Memory! Virtual memory

Bab 8. Memori Virtual POKOK BAHASAN: TUJUAN BELAJAR: 8.1 LATAR BELAKANG

Pertemuan #5: Memori dan Memori Virtual

Sistem Operasi 9. Virtual Memory. Antonius Rachmat C, S.Kom, M.Cs

MEMORI VIRTUAL. Sistem Operasi TIKB1023 Munengsih Sari Bunga. Politeknik Indramayu. TIKB1023/Sistem Operasi/MSB 1

Bab 9: Virtual Memory. Latar Belakang

Sistem Operasi Komputer

Keuntungan Virtual Memory

IKI Sistem Operasi Konsep Page Replacement (Pemindahan Halaman)

Memori pada Sistem Linux. Heri Kurniawan OS-Gasal 2009/2010

Virtual Memory. Sistem Operasi

MEMORI VIRTUAL. Kelompok Franky Sadar Baskoro S. Yemima Aprilia

Virtual Memory. Latar Belakang Demand Paging Pembuatan Proses Page Replacement Alokasi Frame Thrashing Contoh Sistem Operasi

MANAJEMEN MEMORI SISTEM OPERASI

Tidak bisa dynamic loading Memori virtual perl r u lebih besar disharing

Virtual Memory Ch. 9. Virtual Memory. SISTIM OPERASI (Operating System) IKI Johny Moningka

Konsep dasar memori virtual

MANAJEMEN MEMORI. Manajemen Memori 1

DASKOM & PEMROGRAMAN. Dani Usman

Bab 8: Manajemen Memori. Latar Belakang

Virtual Memory. Latar Belakang. Latar Belakang (cont.) Virtual Memori

Studi Kasus Kernel Linux

Tujuan Pembelajaran. Memahami proses swapping Memahami proses alokasi memori berurutan (Contiguous Memori Allocation)

Tujuan Pembelajaran. Memahami pengalamatan dengan menggunakan paging

Sekolah Tinggi Teknologi Adisutjipto Yogyakarta

Algoritma Pergantian Page (Page Replacement) Heri Kurniawan OS-Gasal 2009/2010

Sistem Operasi Komputer. Pertemuan VIII Manajemen Memori

Praktikum 13. Manajemen Memori 1 ALOKASI MEMORI POKOK BAHASAN: TUJUAN BELAJAR: DASAR TEORI:

RESUME SISTEM OPERASI MAIN MEMORI

Memory Management. Memory Ch. 8. Latar Belakang. Main-Memory Management

MANAJEMEN MEMORI. Kelompok : Agung Widiyarto( ) Fahrurrozi( ) Reynaldo( Y)

Operating System: An Overview. Ch. 8: Virtual Memory. Page Replacement Algorithms. Chapter Objectives. Agenda. Page Replacement Algorithms

VIRTUAL MEMORY. Gambar 1. Struktur Umum Overlay

SISTEM OPERASI Makalah Tentang Virtual Memory

BAB V VIRTUAL MEMORY. Tujuan: 1. Menggetahui penggunaan virtual memori dalam komputer 2. Mengetahui peran virtual memori dalam sistem operasi

1. Helga Hiwy 2. Erni Gombo 3. Imelda Florensia 4. Claudio Wayong 5. Vedra Simbala. Published By Stefanikha69

3/30/2016. Manajemen Memori. Manajemen Memori. Manajemen memori pada sistem Monoprogramming Manajemen memori pada sistem Multiprogramming

Manajemen Memori. Latar Belakang Ruang Alamat Logika dan Ruang Alamat Fisik Swapping Alokasi berurutan Paging Segmentasi Segmentasi dengan Paging

Understanding Operating Systems Fifth Edition

VIRTUAL MEMORI. Gambar 1 Memori virtual lebih besar ukurannya dari memori fisik

memuat banyak proses dalam suatu waktu Sebelum masuk ke memori, suatu proses harus menunggu dalam antrian

Sistem Operasi. Memory Management. Part 1 of 2

Rahmady Liyantanto liyantanto.wordpress.com

Latar Belakang Ruang Alamat Logika dan Ruang Alamat Fisik Swapping Alokasi berurutan Paging Segmentasi Segmentasi dengan Paging

Hubungan CPU dengan Memory

MANAJEMEN MEMORI VIRTUAL

ARSITEKTUR DAN ORGANISASI KOMPUTER

Alokasi Memori Kernel. Heri Kurniawan OS-Gasal 2009/2010

SMK MUHAMMADIYAH 4 JAKARTA TEKNIK KOMPUTER DAN JARINGAN SISTEM OPERASI MENEJEMEN MEMORI

Memori Linux. Anggota Kelompok : Jani RR Siregar Martin Leonard T Y Muhamad Mulki A

Bab 3. Pemberian Halaman

Struktur Sistem Komputer

IMPLEMENTASI SISTEM PAGING

Operating System. Manajemen Memori. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

PENGELOLAAN MEMORY AGUS PAMUJI. SISTEM OPERASI - Pengelolaan Memory

1. Address Binding. Sebuah program ditempatkan dalam disk dalam bentuk berkas biner Sebelum dieksekusi, sebuah program harus ditempatkan di memori.

1/3/2013. Konsep Dasar memori

Bab 5. Memori Virtual

KONSEP MULTIPROGRAMMING

Memory Management Memori Latar Belakang Alamat Binding

Memory Management. Latar Belakang Swapping Contiguous Allocation Paging Segmentation Segmentation dengan Paging

PERMINTAAN HALAMAN PEMBUATAN PROSES

3. Apa kekurangan paging sederhana dibandingkan dengan paging pada virtual memory?

Segmentasi dan Paging Pada Intel Pentium. Heri Kurniawan OS-Genap 2007/2008

Dukungan Sistem Operasi :

Kelompok 55.1: Nilam Fitriah ( ) Nova Eka Diana ( ) Kritik :

I. Struktur Sistem Operasi

MANAJEMEN MEMORI PEMARTISIAN STATIS

Algoritma Pergantian Halaman

Arsitektur Sistem Komputer. Operasi Sistem Komputer. Struktur Sistem Komputer. Review:

Struktur Sistem Komputer

Manajemen Memori Virtual

Ch t ap 7 er Operating System (OS)

Sistem Operasi 8. Memory Management. Antonius Rachmat C, S.Kom, M.Cs

Struktur Sistem Komputer

Alokasi Memori. Kelompok Rakhmat Adhi Pratama X 2. Akhda Afif Rasyidi Muhamad Ilyas

SISTEM OPERASI ISG2B3 MANAJEMEN MEMORI. Agus Setiawan Program Studi Sistem Informasi Fakultas Rekayasa Industri Telkom University

SISTIM OPERASI (Operating System) IKI Memory Management. Memory: Part 2 Ch. 8. Johny Moningka

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

STRATEGI ALOKASI FRAME

Alamat Logika dan Fisik

Struktur Sistem Komputer. Abdullah Sistem Informasi Universitas Binadarma

MANAJEMEN MEMORI MAKALAH SISTEM OPERASI

segmentasi dan kombinasi paging-segmentasi Kelompok Rujianto : Arif Setiawan : Muslikan :

Latar Belakang. Memori adalah pusat kegiatan pada sebuah komputer, karena setiap proses yang akan dijalankan, harus melalui memori terlebih dahulu.

Processes. Processes. SISTIM OPERASI (Operating System) IKI-20230

Sekolah Tinggi Teknologi Adisutjipto Yogyakarta

Sistem Operasi. Divais Input/Output 2016

Manajemen Memori (P ( ertemuan ke ert -12) Oktober 2014

Managemen Memori 2016

MANAJEMAN MEMORI PEMARTISIAN DINAMIS

Sistem Operasi Pertemuan 3 Deskripsi & Kendali Proses. H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

Kelompok Pemberian Halaman

Organisasi Sistem Komputer. Virtual Memory. Sekolah Teknik Elektro dan Informatika ITB

17/04/2015 SISTEM OPERASI

Sistem Operasi Pertemuan 7 Pengelolaan Memory. H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ. Trunojoyo

BAB IV PENJADWALAN MEMORI MATERI

ARSITEKTUR DAN ORGANISASI KOMPUTER Aditya Wikan Mahastama

Struktur Sistem Operasi

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA

Transkripsi:

Memori Virtual (Virtual Memory) Heri Kurniawan OS-Genap 2007/2008

T u j u a n P e m b e l a j a r a n Memahami manfaat virtual memori Memahami bagaimana demand paging bekerja Memahami penggunaan copy-on-write Memahami dasar-dasar pemberian halaman (page replacement)

M e m o r i V i r t u a l Program membutuhkan kapasitas yang lebih besar dari kapasitas memori fisik gunakan Virtual Memory! Virtual memory Ruang logical address dapat lebih besar dari pada ruang physical address Proses yang dieksekusi tidak harus seluruhnya berada dimemori. Fakta program di memori: Kode untuk menangani error jarang dieksekusi Alokasi memori untuk variable array, list dan table tidak proporsional Feature dan routine jarang digunakan

M e m o r i V i r t u a l Memori virtual lebih besar dibanding memori fisik

M e m o r i V i r t u a l Eksekusi program secara parsial dimemori: Memudahkan programmer Menambah utilisasi dan throughput CPU Aktifitas I/O berkurang Melalui memori virtual, page dapat dishare oleh beberapa proses Shared System Library Proses dapat membuat shared Memory Page dapat dishare selama fork() berlangsung Virtual address space Proses pada ruang alamat logika dapat berurutan Pada memori fisik page nya tersebar (melalui MMU)

M e m o r i V i r t u a l Shared library dengan menggunakan memori virtual

V i r t u a l a d d r e s s s p a c e Hole / large bank space dapat digunakan jika ruang logika stack dan heap bertambah > dynamic memory allocation Virtual address space yang mempunyai hole disebut sparse address space hole / large bank space

D e m a n d P a g i n g Page diload ke memory hanya ketika dibutuhkan Aktifitas I/O lebih sedikit Ruang memori yang dibutuhkan lebih sedikit Repons menjadi lebih cepat Lebih banyak proses user dalam memori Lazy swapper tidak melakukan swapping page ke memori hingga page dibutuhkan. Swapper yang berurusan dengan page disebut pager

D e m a n d P a g i n g Proses swapping program ke dalam memori

V a l i d - I n v a l i d B i t Cek page ada di memori atau tidak? gunakan Valid-Invalid bit Setiap entri page table diasosiasikan dengan valid dan invalid bit. v (valid) ada di memori i (invalid) punya arti dua : 1. alamat logika tidak sesuai dengan proses 2. page ada di disk tapi tidak ada dimemori Jika nilai bit I tidak pernah diakses, tidak ada pengaruh Jika nilai bit I diakses, terjadi page fault-trap, sistem operasi mengambil page dari disk ke memory

V a l i d - I n v a l i d B i t Beberapa page berada dalam disk

P a g e F a u l t Alur penanganan page fault

D e m a n d P a g i n g Pure demand paging eksekusi proses tanpa ada satu pun page dimemori page di pindah kememori hanya saat dibutuhkan Hardware untuk demand paging: Page Table Secondary Memory (high-speed disk) Hal penting dalam demand paging Restart intruksi setelah page fault terjadi Restart pada lokasi dan state yang sama

K i n e r j a D e m a n d P a g i n g Page Fault Rate 0 p 1.0 jika p = 0, tidak ada page fault Jika p = 1, page fault disemua lokasi Effective Access Time (EAT) EAT =((1 p) x memory access) + (p x page fault time) Jika P=0 Effective Access Time = Memori Access Time

E A T D e m a n d P a g i n g Waktu akses memory = 200 nanosecond Rata-rata waktu page-fault service time = 8 milliseconds 1 ms=10 6 ns EAT = ((1 p) x 200) + (p x (8 milliseconds)) = ((1 p) x 200) + (p x 8,000,000) = 200 + (p x 7,999,800) Jika 1 dari 1.000 kali akses terjadi fault, maka EAT = 8.2 microseconds. EAT bertambah menjadi 40 kali lipat dari waktu akses memory!

E A T D e m a n d P a g i n g Jika ingin EAT dibawah 220ns (lebih 10 % dari waktu akses memori) maka : 220 > 200+7.999.800 x p 20 > 7.999.800 x p p < 0,0000025, artinya minimal hanya ada 1 kali page fault dari 399.990 kali akses Komponen utama waktu page fault service page fault interrupt (1-100 microseconds) baca page/page switch time (8 millisecond) restart proses (1-100 microseconds)

C o p y - o n - W r i t e Copy-on-Write (COW) Teknik yang memfasilitasi proses parent dan child untuk share page yang sama dalam memory Page diset copy-on-write agar dapat dimodifikasi Jika modifikasi dilakukan, page di duplikasi dan ditempatkan pada posisi berbeda dimemori fisik. Sistem operasi mencari lokasi page yang kosong Page dapat bertambah bila: stack atau heap suatu proses berkembang terjadi copy-on-write

C o p y - o n - W r i t e Alokasi page baru menggunakan teknik zerofill-on-demand vfork() (Virtual Memory fork()) proses parent dihentikan, proses child menggunakan alamat logika parent. tidak menggunakan copy-on-write tidak mengubah alamat logika parent ganti proses dengan exec() berjalan di varian unix

C o p y - o n - W r i t e Sebelum proses 1 melakukan modifikasi page c

C o p y - o n - W r i t e Setelah proses 1 melakukan modifikasi page c

P e r g a n t i a n P a g e ( P a g e R e p l a c e m e n t ) Fakta : Dari 10 page proses A 5 page yang digunakan 40 Frame diisi 8 Proses (1 proses @ 5 frame) 40 Frame diisi 6 Proses (1 proses @ 10 frame)? over-allocating! Over-allocating page-fault all memory in use, no space available Solusi? Hapus proses user Swap out proses Pergantian page (Page replacement)

P e r g a n t i a n P a g e ( P a g e R e p l a c e m e n t ) Pergantian page cari frame dalam memory yang sedang tidak digunakan kemudian lakukan swap out Frame A dipindahkan ke swap space Page A tidak lagi berada dimemori ubah page table Gunakan frame kosong A untuk page yang baru Algoritma Pergantian page diinteragrasikan pada page-fault service routine

P e r g a n t i a n P a g e ( P a g e R e p l a c e m e n t ) alur pergantian page (page replacement)

P e r g a n t i a n P a g e ( P a g e R e p l a c e m e n t ) Langkah page fault service routine dengan pergantian page 1. Cari lokasi page dalam disk 2. Cari frame kosong di memori a) Gunakan frame kosong Jika ada b) Jika tidak ada, gunakan algoritma pagereplacement untuk memilih victim frame yang akan dikeluarkan c) Pindahkan victim frame ke disk; ubah page dan frame table 3. Pindahkan page baru dari disk ke frame; ubah page dan frame table 4. Restart proses user

P e r g a n t i a n P a g e ( P a g e R e p l a c e m e n t ) page fault service routine dua kali page transfer (swap out & swap in) Agar satu kali transfer? gunakan page table dengan modify bit! Modify bit (dirty bit) Jika bit diset, page telah berubah page di memori!= page didisk page harus dipindah ke disk Jika bit tidak diset, page tidak berubah page dimemori == page didisk page tidak dipindah ke disk, langsung dihapus!