Virtual Memory - WordPress.com

52
Virtual Memory Virtual Memory Virtual Memory Virtual Memory (Pertemuan ke (Pertemuan ke 19 19) (Pertemuan ke (Pertemuan ke-19 19) November 2010

Transcript of Virtual Memory - WordPress.com

Virtual MemoryVirtual MemoryVirtual MemoryVirtual Memory(Pertemuan ke(Pertemuan ke 1919))(Pertemuan ke(Pertemuan ke--1919))

November 2010

Pokok Bahasan:Pokok Bahasan:• Hardware Virtual Memory

P Si t O i d Vi t l M• Peranan Sistem Operasi pada Virtual Memory– Fetch policy

Placement policy– Placement policy– Replacement policy

• Algoritma Optimalg p• Algoritma Least Recently used (LRU)• Algoritma First-in-first-out (FIFO)• Clock policyClock policy

– Clock policy 1 bit– Clock policy 2 bit

• Page buffering• Page buffering– Resident Set Management– Cleaning Policy– Load Control

#1Sistem Operasi/20101111

Placement PolicyPlacement Policy• Apakah placement policy itu ?

– Kebijaksanaan untuk menentukan lokasi di memori yang akan digunakan untuk menaruh potongan proses (page)(page)

• Hanya digunakan pada model segmentasi (first-fit best-fit next-fit dll)fit, best fit, next fit, dll)

• Paging atau kombinasi antara paging dengan segmentasi tidak perlu placement policy kenapasegmentasi tidak perlu placement policy, kenapa ?– Setiap frame berukuran sama sehingga penempatanSetiap frame berukuran sama sehingga penempatan

suatu page pada sembarang frame akan berakibat samaM i t k f d t dil k k– Mapping antara page ke frame dapat dilakukan secara hardware

#2Sistem Operasi/20101111

Pokok Bahasan:Pokok Bahasan:

• Hardware Virtual Memory• Peranan Sistem Operasi pada Virtual Memory

– Fetch policyPl t li– Placement policy

– Replacement policy• Algoritma Optimal• Algoritma Optimal• Algoritma Least Recently used (LRU)• Algoritma First-in-first-out (FIFO)• Clock policy• Clock policy

– Clock policy 1 bit– Clock policy 2 bit

• Page buffering• Page buffering– Resident Set Management– Cleaning Policya g o y– Load Control

#3Sistem Operasi/20101111

Replacement Policy Replacement Policy (1)(1)

• Apa tujuan replacement policy ?U t k ilih bi diti d– Untuk memilih page mana yang bisa ditimpa dengan page lain atau harus dikeluarkan dari memori

• Permasalahan pada replacement policy:• Permasalahan pada replacement policy:– Page frame yang mana yang perlu dikeluarkan dari

memori ?• Page yang dipindah biasanya page yang diperkirakan paling

lama akan diakses lagi• Perkiraan didasarkan pada kelakukan page-pagePerkiraan didasarkan pada kelakukan page page

sebelumnya– Berapa banyak page frame yang perlu dipindahkan ?

S ki t t d ki ih l t• Semakin tepat dan semakin canggih replacementpolicy yang digunakan dapat menimbulkan overhead yang tinggi baik dari segi hardwareoverhead yang tinggi baik dari segi hardwaremaupun software !

#4Sistem Operasi/20101111

Replacement Policy Replacement Policy (2)(2)

• Frame Locking– Tidak setiap frame di memori dapat dipindahkan jika

status frame tersebut adalah di-lock– Frame-frame yang tidak dapat dipindahkan:

• Kernel sistem operasi• Struktur kontrol• Buffer I/O• Area memori yang sensitif terhadap waktu

– Digunakan bit lock sebagai tanda suatu frame b t t di l k t tid kberstatus di-lock atau tidak

– Bit lock disimpan pada tabel frame atau tabel page

#5Sistem Operasi/20101111

Replacement Policy Replacement Policy (3)(3)

• Algoritma dasar yang digunakan pada replacement policy:– Optimalp– Least Recently Used (LRU)– First In First Out (FIFO)( )– Clock policy:

• Clock policy 1 bitp y• Clock policy 2 bit

– Page bufferingg g

#6Sistem Operasi/20101111

Pokok Bahasan:Pokok Bahasan:

• Hardware Virtual Memory• Peranan Sistem Operasi pada Virtual Memory

– Fetch policyPl t li– Placement policy

– Replacement policy• Algoritma Optimal• Algoritma Optimal• Algoritma Least Recently used (LRU)• Algoritma First-in-first-out (FIFO)• Clock policy• Clock policy

– Clock policy 1 bit– Clock policy 2 bit

• Page buffering• Page buffering– Resident Set Management– Cleaning Policya g o y– Load Control

#7Sistem Operasi/20101111

Algoritma OptimalAlgoritma Optimalgg• Mengganti page yang diperkirakan paling tidak segera

digunakan (digunakannya kembali masih lama) = page yang barudigunakan (digunakannya kembali masih lama) page yang baru saja digunakan ???

• Mempunyai page fault paling sedikitTid k ki dii l t ik k tid k ki i t• Tidak mungkin diimplementasikan, karena tidak mungkin sistem operasi mempunyai pengetahuan yang sempurna tentang eksekusi yang akan terjadi

• Hanya digunakan sebagai acuan performansi bagi algoritma yang lain

• Contoh:• Contoh:

#8Sistem Operasi/20101111

Pokok Bahasan:Pokok Bahasan:

• Hardware Virtual Memory• Peranan Sistem Operasi pada Virtual Memory

– Fetch policyPl t li– Placement policy

– Replacement policy• Algoritma Optimal• Algoritma Optimal• Algoritma Least Recently used (LRU)• Algoritma First-in-first-out (FIFO)• Clock policy• Clock policy

– Clock policy 1 bit– Clock policy 2 bit

• Page buffering• Page buffering– Resident Set Management– Cleaning Policya g o y– Load Control

#9Sistem Operasi/20101111

Algoritma Least Recently Used (LRU)Algoritma Least Recently Used (LRU)

• Mengganti page yang paling lama tidak digunakanS ti dib i l b l (t ) t t b t di k• Setiap page diberi label (tag) saat page tersebut diakses

• Kelebihan/kekurangan:(+) Performansinya hampir sama dengan algoritma optimal(+) Performansinya hampir sama dengan algoritma optimal( ̶ ) Implementasinya sukar( ̶ ) Overhead-nya tinggi karena harus mencatat waktu saat sebuah ( ) y gg

page diakses• Contoh:

#10Sistem Operasi/20101111

Pokok Bahasan:Pokok Bahasan:• Hardware Virtual Memory

P Si t O i d Vi t l M• Peranan Sistem Operasi pada Virtual Memory– Fetch policy

Placement policy– Placement policy– Replacement policy

• Algoritma Optimalg p• Algoritma Least Recently used (LRU)• Algoritma First-in-first-out (FIFO)• Clock policyClock policy

– Clock policy 1 bit– Clock policy 2 bit

• Page buffering• Page buffering– Resident Set Management– Cleaning Policy– Load Control

#11Sistem Operasi/20101111

Algoritma Algoritma FirstFirst--in firstin first--out (FIFO)out (FIFO)

• Page yang diganti adalah page yang paling lama berada di d l i ( d l d bi )di dalam memori (model round-robin)

• Frame-frame diperlakukan seperti circular bufferl b h /k k• Kelebihan/kekurangan:

(+) Algoritma sederhana, mudah diimplementasikan( ) P f lt l bih ti i dib di l it l i k( ̶ ) Page fault-nya lebih tinggi dibanding algoritma lainnya karena

sering terjadi page yang sudah dikeluarkan dari memori tidak lama kemudian diambil lagi

• Contoh:

#12Sistem Operasi/20101111

Pokok Bahasan:Pokok Bahasan:• Hardware Virtual Memory

P Si t O i d Vi t l M• Peranan Sistem Operasi pada Virtual Memory– Fetch policy

Placement policy– Placement policy– Replacement policy

• Algoritma Optimalg p• Algoritma Least Recently used (LRU)• Algoritma First-in-first-out (FIFO)• Clock policyClock policy

– Clock policy 1 bit– Clock policy 2 bit

• Page buffering• Page buffering– Resident Set Management– Cleaning Policy– Load Control

#13Sistem Operasi/20101111

Clock Policy Clock Policy 1 1 bitbit

• Digunakan sebuah bit (bit use) untuk setiapDigunakan sebuah bit (bit use) untuk setiap frame yang fungsinya untuk menyatakan apakah frame tersebut sedang diakses atau tidakg

• Memori diperlakukan sebagai circular buffer• Digunakan sebuah pointer yang menunjuk keDigunakan sebuah pointer yang menunjuk ke

frame berikutnya sesudah frame terakhir dimana page ditaruhp g

• Page yang diganti adalah page yang pertama kali ditemui dan nilai bit use-nya adalah 0y

• Contoh sistem operasi:– Multicsu t cs

#14Sistem Operasi/20101111

Prosedur Clock Policy Prosedur Clock Policy 1 1 bitbit

• Saat page pertama kali ditaruh di memori maka use bit-• Saat page pertama kali ditaruh di memori maka use bitnya diberi nilai 1

• Setiap kali page ditaruh di memori, maka bit use-nya juga p p g y j gdiberi nilai 1

• Pencarian page yang akan diganti dilakukan dengan cara menelusuri setiap framemenelusuri setiap frame

• Setiap kali ditemukan frame yang bit use-nya bernilai 1 akan diubah menjadi 0akan diubah menjadi 0

• Pencarian berhenti ketika telah ditemukan frame dengan bit use = 0

• Jika semua bit use pada memori tersebut bernilai 1, maka semuanya akan diubah menjadi 0 dan berarti seluruh memori telah ditelusurimemori telah ditelusuri

• Page yang diganti adalah page yang ditunjuk oleh pointer sebelum melakukan penelusuransebelum melakukan penelusuran

#15Sistem Operasi/20101111

Contoh Clock Policy 1 bitContoh Clock Policy 1 bit• Page 727 masuk:

#16Sistem Operasi/20101111

Perbandingan Algoritma Replacement Perbandingan Algoritma Replacement ((11))

#17Sistem Operasi/20101111

Perbandingan Algoritma Replacement Perbandingan Algoritma Replacement ((22))

• Kondisi eksperimen:– Alokasi frame untuk setiap proses adalah tetap

Uk 256 d– Ukuran page = 256 word– Hasil diperoleh dari pengaksesan page sebanyak 0,25x106

program Fortran• Apa analisis anda ?

#18Sistem Operasi/20101111

Pokok Bahasan:Pokok Bahasan:

• Hardware Virtual Memory• Peranan Sistem Operasi pada Virtual Memory

– Fetch policyPl t li– Placement policy

– Replacement policy• Algoritma Optimal• Algoritma Optimal• Algoritma Least Recently used (LRU)• Algoritma First-in-first-out (FIFO)• Clock policy• Clock policy

– Clock policy 1 bit– Clock policy 2 bit

• Page buffering• Page buffering– Resident Set Management– Cleaning Policya g o y– Load Control

#19Sistem Operasi/20101111

Clock Policy 2 bitClock Policy 2 bit

• Digunakan 2 buah bit (bit use u dan bit modify m) untuk g ( y )setiap frame yang fungsinya untuk menyatakan apakah frame tersebut sedang diakses, telah diubah, atau tidakMemori diperlakukan sebagai circular buffer• Memori diperlakukan sebagai circular buffer

• Digunakan sebuah pointer yang menunjuk ke frame berikutnya sesudah frame terakhir dimana page ditaruhberikutnya sesudah frame terakhir dimana page ditaruh

• Page yang mengalami perubahan tidak akan ditimpa sebelum di-copy-kan ke harddiskpy

• Contoh sistem operasi: Macintosh klasik• Empat kemungkinan yang bisa terjadi pada frame:

– Tidak sedang diakses dan tidak diubah (u = 0; m = 0)– Sedang diakses dan tidak diubah (u = 1; m = 0)– Tidak sedang diakses dan diubah (u = 0; m = 1)– Sedang diakses dan diubah (u = 1; m = 1)

#20Sistem Operasi/20101111

Prosedur Clock Policy Prosedur Clock Policy 2 2 bitbit

• Saat page pertama kali ditaruh di memori maka use bit-nya diberi p g p ynilai 1 dan bit m-nya diberi nilai 0

• Setiap kali page ditaruh di memori, maka bit use-nya juga diberi nilai 1 dan bit m-nya diberi nilai 0nilai 1 dan bit m nya diberi nilai 0

• Pencarian pertama:– Pencarian page yang akan diganti dilakukan dengan cara menelusuri

fp g y g g g

setiap frame. – Selama penelusuran tidak dilakukan perubahan bit apapun– Pencarian berhenti ketika telah ditemukan frame dengan bit u = 0 danPencarian berhenti ketika telah ditemukan frame dengan bit u 0 dan

m = 0 dan langsung isinya ditimpa• Pencarian kedua:

Bil tid k dit k i di l i t k i f d– Bila tidak ditemukan, pencarian diulangi untuk mencari frame dengan bit u = 0 dan m = 1.

– Setiap ditemui frame dengan bit u = 1 langsung diubah menjadi u = 0p g g g j• Pencarian ketiga:

– Ulangi langkah pencarian pertama. Bila masih gagal ulangi langkah pencarian kedua dan pasti akan– Bila masih gagal ulangi langkah pencarian kedua dan pasti akan ditemukan page yang dapat ditimpa

#21Sistem Operasi/20101111

Contoh Contoh Clock Policy Clock Policy 2 2 bitbit• Apa kelebihan clock

policy 2 bit ?policy 2 bit ?(+) Tidak perlu

dilakukan copy k ipage ke memori

(untuk u = 0 dan m = 0)

( ) l h(+) Page yang telah mengalami perubahan segera di i kdisimpan ke harddisk dan biasanya tidak segera digunakansegera digunakan karena efek locality(untuk u = 0 dan m = 1)= 1)

#22Sistem Operasi/20101111

Pokok Bahasan:Pokok Bahasan:• Hardware Virtual Memory

P Si t O i d Vi t l M• Peranan Sistem Operasi pada Virtual Memory– Fetch policy

Placement policy– Placement policy– Replacement policy

• Algoritma Optimalg p• Algoritma Least Recently used (LRU)• Algoritma First-in-first-out (FIFO)• Clock policyClock policy

– Clock policy 1 bit– Clock policy 2 bit

• Page buffering• Page buffering– Resident Set Management– Cleaning Policy– Load Control

#23Sistem Operasi/20101111

Page BufferingPage Buffering

• Apa kekurangan algoritma LRU dan clock banding FIFO ?p g g g– Lebih kompleks sehingga overhead lebih tinggi– Mengganti page yang telah diubah biayanya lebih tinggi daripada

mengganti page yang belum diubahmengganti page yang belum diubah• Page buffering merupakan pengembangan algoritma FIFO• Tersedia sejumlah kecil alokasi frame yang statusnya selalu j y g y

bebas (difungsikan semacam cache page)• Page yang akan diganti tidak langsung ditimpa atau di-copy ke

harddisk tetapi:harddisk, tetapi:– Dimasukkan ke daftar page bebas untuk page yang belum diubah– Dimasukkan ke daftar page diubah untuk page yang telah

l i b hmengalami perubahan• Secara fisik lokasi page masih tetap berada di memori• Contoh sistem operasi: VAX VMS• Contoh sistem operasi: VAX VMS• Kelebihan: mengurangi operasi I/O

#24Sistem Operasi/20101111

Pokok Bahasan:Pokok Bahasan:

• Hardware Virtual Memory• Peranan Sistem Operasi pada Virtual Memory

– Fetch policyPl t li– Placement policy

– Replacement policy• Algoritma Optimal• Algoritma Optimal• Algoritma Least Recently used (LRU)• Algoritma First-in-first-out (FIFO)• Clock policy• Clock policy

– Clock policy 1 bit– Clock policy 2 bit

• Page buffering• Page buffering– Resident Set Management– Cleaning Policya g o y– Load Control

#25Sistem Operasi/20101111

Resident Set ManagementResident Set Managementgg

• Resident set management menentukan jumlah page• Resident set management menentukan jumlah page suatu proses yang ditaruh di dalam memori

• Parameter-parameter pada resident setParameter parameter pada resident set management:– Jumlah page di dalam memori, ada 2 macam:

• Tetap atau Variabel– Area (scope) page yang harus diganti, ada 2 macam:

• Lokal atau Global• Lokal atau Global• Kombinasi antara jumlah page dan area pergantian

page yang bisa terjadi:page yang bisa terjadi:– Jumlah page tetap dengan area lokal– Jumlah page variabel dengan area lokalp g g– Jumlah page variabel dengan area global

#26Sistem Operasi/20101111

Jumlah Page Jumlah Page TetapTetap, Area , Area LokalLokal

• Jumlah page suatu proses yang berada di memori dari p g p y gwaktu ke waktu selalu tetap (fixed)

• Page yang dipilih untuk ditimpa hanyalah page-page k l i f l jkepunyaan proses yang mengalami page fault saja (lokal)

• Bagaimana cara menentukan jumlah page ?• Bagaimana cara menentukan jumlah page ?– Pada saat proses baru dibuat, atau– Berdasarkan jenis prosesnya (interaktif, batch, dll), atauj p y ( , , ),– Ditentukan oleh pembuat program

• Kekurangan:( ) k l h d l l d k( ̶ ) Jika jumlah page setiap proses yang di memori terlalu sedikit

akan berakibat banyak terjadi page fault, kinerja sistem menjadi lambat

( ̶ ) Jika jumlah page setiap proses yang di memori terlalu banyak akan berakibat jumlah program di memori hanya sedikit, utilitas CPU menurun

#27Sistem Operasi/20101111

Jumlah Page Jumlah Page VariabelVariabel, Area , Area Lokal Lokal (1)(1)

• Jumlah page suatu proses yang berada di memori dari• Jumlah page suatu proses yang berada di memori dari waktu ke waktu bisa berubah-ubah (variabel)

• Page yang dipilih untuk ditimpa hanyalah page-page g y g p p y p g p gkepunyaan proses yang mengalami page fault saja (lokal)

• Prosedur:• Prosedur:– Jika proses baru ditambahkan, alokasikan jumlah page

frame berdasarkan jenis aplikasinya, permintaan program, j p y , p p g ,atau kriteria lainnya

– Jika terjadi page fault, pilih sebuah page kepunyaan proses yang mengalami page faultyang mengalami page fault

– Evaluasi alokasi page terus-menerus• Jika sering terjadi page fault (page fault rate tinggi), maka g j p g (p g gg ),

jumlah page di memori perlu ditambah• Jika page fault rate-nya rendah, maka jumlah page di memori

perlu dikurangi. Mengapa ?perlu dikurangi. Mengapa ?

#28Sistem Operasi/20101111

Jumlah Page Jumlah Page VariabelVariabel, Area , Area Lokal Lokal (2)(2)

• Apa kelebihan/kekurangannya ?(+) Dapat mengatur jumlah page di memori

secara optimum(+) Performansinya lebih baik( ̶ ) Sistem operasi harus selalu memantau page( ) Sistem operasi harus selalu memantau page

fault rate setiap proses, terjadi overhead( ̶ ) Implementasinya memerlukan dukungan( ) Implementasinya memerlukan dukungan

hardware prosesor

#29Sistem Operasi/20101111

Jumlah Page Jumlah Page VariabelVariabel, Area , Area GlobalGlobal ((11))

• Jumlah page suatu proses yang berada di memori• Jumlah page suatu proses yang berada di memori dari waktu ke waktu bisa berubah-ubah (variabel)

• Page yang dipilih untuk ditimpa dapat berasal dariPage yang dipilih untuk ditimpa dapat berasal dari sembarang page di dalam memori kepunyaan berbagai proses (global), kecuali page yang di-lock(k l)(kernel)

• Prosedur:Si t i i d ft j l h f– Sistem operasi mempunyai daftar sejumlah frame yang bebas (tidak digunakan)

– Bila terjadi page fault, sebuah frame bebas diberikan keBila terjadi page fault, sebuah frame bebas diberikan ke proses yang mengalami page fault, sehingga alokasi page untuk proses tersebut semakin banyakBila frame bebas habis ambil page dari proses lain untuk– Bila frame bebas habis, ambil page dari proses lain untuk ditimpa

#30Sistem Operasi/20101111

Jumlah Page Jumlah Page VariabelVariabel, Area , Area GlobalGlobal ((22))

• Kelebihan:• Kelebihan:(+) Mudah diimplementasikan(+) Banyak diterapkan di berbagai sistem operasi(+) Banyak diterapkan di berbagai sistem operasi

• Kekurangan:( ̶ ) Proses yang alokasi page-nya berkurang dapat( ̶ ) Proses yang alokasi page-nya berkurang dapat

mengalami penurunan performansiSolusi:Solusi:

• Gunakan page buffering, agar page yang akan ditimpa masih berada di dalam memori, sehingga mudah diambil saat diperlukan lagidiperlukan lagi

#31Sistem Operasi/20101111

Pokok Bahasan:Pokok Bahasan:• Hardware Virtual Memory

P Si t O i d Vi t l M• Peranan Sistem Operasi pada Virtual Memory– Fetch policy

Placement policy– Placement policy– Replacement policy

• Algoritma Optimalg p• Algoritma Least Recently used (LRU)• Algoritma First-in-first-out (FIFO)• Clock policyClock policy

– Clock policy 1 bit– Clock policy 2 bit

• Page buffering• Page buffering– Resident Set Management– Cleaning Policy– Load Control

#32Sistem Operasi/20101111

Cleaning PolicyCleaning Policy (1)(1)

• Apakah Cleaning Policy itu ?– Kebijaksanaan untuk menentukan kapan suatu page

akan ditulis ke memori sekunderMerupakan kebalikan dari Fetch policy– Merupakan kebalikan dari Fetch policy

• Ada 2 jenis cleaning policy:Demand cleaning– Demand cleaning:

• Suatu page ditulis ke memori sekunder hanya jika frame yang ditempati oleh page tersebut akan diisi dengan page lainp p g g p g

– Precleaning:• Suatu page ditulis ke memori sekunder meskipun tidak ada

page lain yang menginginkan frame tempat page tersebutpage lain yang menginginkan frame tempat page tersebut

#33Sistem Operasi/20101111

Cleaning PolicyCleaning Policy ((22))

• Apa kekurangan demand cleaning ?( ) P l i f lt h( ̶ ) Proses yang mengalami page fault harus menunggu

selama transfer data sebanyak 2 page (keluarkan page lama dan masukkan page baru)page lama dan masukkan page baru)

( ̶ ) Utilisasi prosesor turun• Apa kekurangan precleaning ?Apa kekurangan precleaning ?

( ̶ ) Memori masih ditempati oleh page yang sudah di-copy ke memori sekunder

( ̶ ) Terjadi pengaksesan I/O yang sebenarnya belum diperlukan

#34Sistem Operasi/20101111

Cleaning PolicyCleaning Policy ((33))

• Bagaimana solusinya ?– Gunakan page buffering

• Pembersihan page hanya diterapkan pada page d h b dyang sudah bisa ditimpa

• Pembersihan dan penulisan kembali tidak dilakukan bersama samabersama-sama

• Page yang dibersihkan selanjutnya dimasukkan ke satu dari 2 daftar berikut:satu dari 2 daftar berikut:

– Daftar page yang telah dimodifikasi (modified)» Page akan ditulis ke memori sekunder secara periodikf b l d d f k ( d f d)– Daftar page yang belum dimodifikasi (Unmodified)» Page dapat digunakan lagi atau dapat langsung

ditimpa dengan page lainp g p g

#35Sistem Operasi/20101111

Pokok Bahasan:Pokok Bahasan:

• Hardware Virtual Memory• Peranan Sistem Operasi pada Virtual Memory

– Fetch policyPl t li– Placement policy

– Replacement policy• Algoritma Optimal• Algoritma Optimal• Algoritma Least Recently used (LRU)• Algoritma First-in-first-out (FIFO)• Clock policy• Clock policy

– Clock policy 1 bit– Clock policy 2 bit

• Page buffering• Page buffering– Resident Set Management– Cleaning Policya g o y– Load Control

#36Sistem Operasi/20101111

Load ControlLoad Control• Apa fungsi load control ?

M t k j l h b d di d l– Menentukan jumlah proses yang berada di dalam memori (menentukan derajat multiprogramming)

• Apa akibat jika jumlah proses di memori terlalu• Apa akibat jika jumlah proses di memori terlalu sedikit ?– Akan terdapat banyak proses terblok dan banyakAkan terdapat banyak proses terblok dan banyak

waktu digunakan untuk swapping• Apa akibat jika jumlah proses di memori terlalu p j j p

banyak ?– Alokasi frame untuk setiap proses hanya sedikit

hi i t j di f lt d th hisehingga sering terjadi page fault dan thrashing• Apa yang dikendalikan oleh load control ?

D j t lti i– Derajat multiprogramming– Penundaan proses

#37Sistem Operasi/20101111

Derajat MultiprogrammingDerajat Multiprogrammingj g gj g g

• Apa analisis anda ?Apa analisis anda ?– Semakin tinggi

derajatderajat multiprogramming akan menyebabkan utilisasi prosesor naik tetapinaik, tetapi

– Jika derajat multiprogrammingmultiprogramming terlalu tinggi akan berakibat utilisasiberakibat utilisasi prosesor kembali turun

#38Sistem Operasi/20101111

Penundaan Proses (Suspension) Penundaan Proses (Suspension) ((11))

• Jika derajat multiprogramming diturunkan akan berakibat satu atau beberapa proses harus di-suspend (swapped out)

• Proses mana yang di-suspend ?– Proses dengan prioritas paling rendah, atauProses dengan prioritas paling rendah, atau

• Dilakukan oleh bagian penjadualan sistem operasi– Proses yang mengalami page fault, atauProses yang mengalami page fault, atau

• Alasannya karena jumlah working set yang dimiliki proses tersebut tidak cukup untuk dieksekusi

– Proses yang baru saja diaktifkan (dibuat), atau• Alasannya karena proses tersebut belum mempunyai working

set cukupset cukup

#39Sistem Operasi/20101111

Penundaan Proses (Suspension) Penundaan Proses (Suspension) ((22))

• Proses mana yang di-suspend ? (lanjutan)– Proses yang paling sedikit mempunyai resident

set, atau• Alasannya karena proses tersebut masih banyak

membutuhkan usaha untuk melengkapi resident set nyaset-nya

– Proses paling besar, atauAlsannya karena akan dihasilkan banyak frame• Alsannya karena akan dihasilkan banyak frame bebas

– Proses yang masih memerlukan banyak waktuProses yang masih memerlukan banyak waktu untuk dapat selesai

#40Sistem Operasi/20101111

UNIX and Solaris Memory ManagementUNIX and Solaris Memory Management

• Paging Systemg g y– Page table

Disk block descriptor– Disk block descriptor– Page frame data table– Swap-use table

#41Sistem Operasi/20101111

#42Sistem Operasi/20101111

#43Sistem Operasi/20101111

#44Sistem Operasi/20101111

UNIX and Solaris Memory ManagementUNIX and Solaris Memory Management

• Page Replacementg p– Refinement of the

clock policy p y

#45Sistem Operasi/20101111

Kernel Memory AllocatorKernel Memory Allocator

• Lazy buddy system

#46Sistem Operasi/20101111

Linux Memory ManagementLinux Memory Managementgg

• Page directoryg y• Page middle directory

P t bl• Page table

#47Sistem Operasi/20101111

#48Sistem Operasi/20101111

#49Sistem Operasi/20101111

Windows Memory ManagementWindows Memory Management

• Pagingg g– Available

Reserved– Reserved– Committed

#50Sistem Operasi/20101111

ReferensiReferensi

[STA09] Stallings, William. 2009. Operating System: I t l d D i P i i l 6th ditiInternal and Design Principles. 6th edition. Prentice Hall

#51Sistem Operasi/20101111