Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen...

83
Manajemen Memori Manajemen Memori

Transcript of Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen...

Page 1: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Manajemen MemoriManajemen Memori

Page 2: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

PembahasanPembahasan

• BackgroundBackground• Address Space : Logic & FisikAddress Space : Logic & Fisik• Swapping Swapping • Contiguous AllocationContiguous Allocation• PagingPaging• SegmentationSegmentation• Segmentation dengan PagingSegmentation dengan Paging

Page 3: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

BackgroundBackground• Untuk dieksekusi program harus berada/dibawa Untuk dieksekusi program harus berada/dibawa

ke dalam memori dan dieksekusi sebagai proses ke dalam memori dan dieksekusi sebagai proses yang menggunakan ruang untuk data.yang menggunakan ruang untuk data.

• Input queueInput queue – kumpulan proses dalam disk yang – kumpulan proses dalam disk yang menunggu dibawa ke dalam memori untuk menunggu dibawa ke dalam memori untuk dijalankan.dijalankan.

• Program user harus melalui beberapa tahapan Program user harus melalui beberapa tahapan sebelum di-run.sebelum di-run.

• Memori adalah ruang yang berukuran terbatas Memori adalah ruang yang berukuran terbatas yang memerlukan manajemen dalam utilisasinyayang memerlukan manajemen dalam utilisasinya– Akibat program berukuran besar atau Akibat program berukuran besar atau

multiprogrammingmultiprogramming

Page 4: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Hirarkhi StorageHirarkhi Storage

• Trade-off : cost & speedTrade-off : cost & speed

Page 5: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Address BindingAddress Binding• Sebelum eksekusi program berada di dalam Sebelum eksekusi program berada di dalam

disk, dan pada saat dieksekusi ia perlu berada disk, dan pada saat dieksekusi ia perlu berada pada suatu lokasi dalam memori fisik.pada suatu lokasi dalam memori fisik.

• Address binding Address binding adalah menempatkan address adalah menempatkan address relatif program ke dalam address fisik memori relatif program ke dalam address fisik memori (real memory address).(real memory address).– Dapat berlangsung dalam salah satu tahapan : Dapat berlangsung dalam salah satu tahapan :

kompilasi, load atau eksekusikompilasi, load atau eksekusi

Page 6: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Tahapan Running ProgramTahapan Running Program• Tahapan Kompilasi : source program Tahapan Kompilasi : source program (source (source

code) code) dikompilasi menjadi object module dikompilasi menjadi object module (object code).(object code).

• Tahapan link & load : object module di-link Tahapan link & load : object module di-link dengan object module lain menjadi load dengan object module lain menjadi load module module (execution code)(execution code) kemudian di-load ke kemudian di-load ke memori untuk dieksekusi.memori untuk dieksekusi.

• Tahapan eksekusi : mungkin juga dilakukan Tahapan eksekusi : mungkin juga dilakukan dynamic linkingdynamic linking dengan dengan resident libraryresident library..

Page 7: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Multistep Processing User ProgramMultistep Processing User Program

Page 8: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Address Binding Saat KompilasiAddress Binding Saat Kompilasi

• Jika lokasi dari proses sudah diketahui Jika lokasi dari proses sudah diketahui sebelumnya maka saat kompilasi address-sebelumnya maka saat kompilasi address-address instruksi dan data ditentukan dengan address instruksi dan data ditentukan dengan alamat fisik.alamat fisik.

• Jika terjadi perubahan pada lokasi tersebut Jika terjadi perubahan pada lokasi tersebut maka harus di rekompilasi.maka harus di rekompilasi.

Page 9: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Address Binding Saat LoadAddress Binding Saat Load

• Code hasil kompilasi masih menunjuk address-Code hasil kompilasi masih menunjuk address-address secara relatif, saat di-load address-address secara relatif, saat di-load address-address disubstitusi dengan alamat fisik address disubstitusi dengan alamat fisik berdasar relokasi proses yang diterima.berdasar relokasi proses yang diterima.

• Jika terjadi perubahan relokasi maka code di-Jika terjadi perubahan relokasi maka code di-load ulang.load ulang.

Page 10: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Address Binding Saat EksekusiAddress Binding Saat Eksekusi

• Binding bisa dilakukan ulang selama prosesBinding bisa dilakukan ulang selama proses– Hal ini untuk memungkinkan pemindahan proses Hal ini untuk memungkinkan pemindahan proses

dari satu lokasi ke lokasi lain selama run.dari satu lokasi ke lokasi lain selama run.• Perlu adanya dukungan hardware untuk Perlu adanya dukungan hardware untuk

pemetaan addresspemetaan address– Contoh : base register dan limit registerContoh : base register dan limit register

Page 11: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Dynamic LoadingDynamic Loading

• Rutin (bagian dari program) tidak akan diload Rutin (bagian dari program) tidak akan diload sampai ia dipanggil.sampai ia dipanggil.

• Keuntungan :Keuntungan :– Rutin yang tak berguna tidak akan di-loadRutin yang tak berguna tidak akan di-load– Utilisasi ruang memori lebih baik; rutin yang tidak Utilisasi ruang memori lebih baik; rutin yang tidak

digunakan tidak di-loaddigunakan tidak di-load– Berguna bila code untuk menghandle kasus-kasus Berguna bila code untuk menghandle kasus-kasus

yang jarang berukuran besaryang jarang berukuran besar• Tidak perlu dukungan khusus dari OSTidak perlu dukungan khusus dari OS

– Diimplementasikan via rancangan pemrogramanDiimplementasikan via rancangan pemrograman

Page 12: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Dynamic LinkingDynamic Linking

• Linking ditunda sampai saat eksekusiLinking ditunda sampai saat eksekusi– Code menjadi berukuran kecilCode menjadi berukuran kecil

• Program-program user tidak perlu Program-program user tidak perlu menduplikasi system librarymenduplikasi system library– System library dipakai bersamaSystem library dipakai bersama

• Mekanisme menggunakan skema Mekanisme menggunakan skema stubstub– Stub : suatu potongan kecil code menggantikan Stub : suatu potongan kecil code menggantikan

referensi rutin; digunakan menglokasikan library referensi rutin; digunakan menglokasikan library rutin rutin resident memory resident memory yang tepatyang tepat

Page 13: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Stub untuk Dynamic LinkingStub untuk Dynamic Linking

• Skema referensi dengan “stub”Skema referensi dengan “stub”– Saat stub dieksekusi ia memeriksa apakah rutin ybs Saat stub dieksekusi ia memeriksa apakah rutin ybs

sudah berada dalam memori (diakses oleh proses sudah berada dalam memori (diakses oleh proses lain yang run), kalau belum ada maka rutin tersebut lain yang run), kalau belum ada maka rutin tersebut di-load.di-load.

– Stub diganti oleh address dari rutin tersebut.Stub diganti oleh address dari rutin tersebut.– Setelah itu program run dengan referensi rutin-rutin Setelah itu program run dengan referensi rutin-rutin

secara normal dengan address yang benar.secara normal dengan address yang benar.

Page 14: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

OverlaysOverlays

• Jika seluruh code di-load ke dalam memori Jika seluruh code di-load ke dalam memori maka terbatas oleh ukuran memori.maka terbatas oleh ukuran memori.

• Overlay memungkinkan ukuran code lebih Overlay memungkinkan ukuran code lebih besar dari ukuran memori.besar dari ukuran memori.

• Yang tetap tinggal dalam memori hanya Yang tetap tinggal dalam memori hanya instruksi dan data yang diperlukan.instruksi dan data yang diperlukan.

Page 15: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Implementasi OverlaysImplementasi Overlays

• Diimplementasikan oleh user, tidak perlu Diimplementasikan oleh user, tidak perlu dukungan OSdukungan OS

• Rancangan pemrograman dari struktur overlay Rancangan pemrograman dari struktur overlay adalah kompleks.adalah kompleks.

Page 16: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Contoh OverlayContoh Overlay

• Misalnya pada Two-pass AssemblerMisalnya pada Two-pass Assembler– Pass-1 70K, Pass-2 80K, Symbol Table 20K, Pass-1 70K, Pass-2 80K, Symbol Table 20K,

Common Routine 30K, Total 200KCommon Routine 30K, Total 200K• Jika memori hanya 150K, semua tidak dapat Jika memori hanya 150K, semua tidak dapat

diload karena memori kurangdiload karena memori kurang– Pass-1 dan pass-2 di overlayPass-1 dan pass-2 di overlay

Page 17: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Overlay dari 2-pass AssemblerOverlay dari 2-pass Assembler

Page 18: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Address Space : Logic vs FisikAddress Space : Logic vs Fisik

• Konsep ruang address logic terhadap ruang Konsep ruang address logic terhadap ruang address fisik merupakan pokok dalam address fisik merupakan pokok dalam manajemen memori.manajemen memori.

• Address logic : address yang di-generate oleh Address logic : address yang di-generate oleh CPU (disebut juga CPU (disebut juga virtual addressvirtual address))

• Address fisik : address yang dikenal oleh unit Address fisik : address yang dikenal oleh unit memorimemori

Page 19: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Address Binding dari Address Address Binding dari Address Logic vs FisikLogic vs Fisik

• Pada address-binding compile-time dan load-Pada address-binding compile-time dan load-time antara kedua peng-address-an tidak ada time antara kedua peng-address-an tidak ada perbedaan.perbedaan.

• Pada address-binding execution-time kedua Pada address-binding execution-time kedua peng-address-an berbedapeng-address-an berbeda

Page 20: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Memory Management Unit (MMU)Memory Management Unit (MMU)

• Perangkat keras yang memetakan address logic Perangkat keras yang memetakan address logic ke address fisikke address fisik

• Dalam skema MMUDalam skema MMU– Nilai dalam register base/relokasi ditambahkan ke Nilai dalam register base/relokasi ditambahkan ke

setiap address proses user pada saat run di memorisetiap address proses user pada saat run di memori– Program user hanya berurusan dengan address logic-Program user hanya berurusan dengan address logic-

nya saja; tidak melihat address fisik secara realnya saja; tidak melihat address fisik secara real

Page 21: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Contoh Kerja MMU Contoh Kerja MMU (1)(1)

Page 22: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Contoh Kerja MMU Contoh Kerja MMU (2)(2)

Page 23: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

SwappingSwapping

• Proses dapat di swap secara temporer dari memori (swap-out) ke dalam backing store, dan dikembalikan (swap-in) ke dalam memori untuk melanjutkan eksekusi.

• Backing store (biasanya disk)– Cukup besar untuk menyimpan semua image memori

user– Dapat direct access ke dalam image-image tersebut

Page 24: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Skema SwappingSkema Swapping

Page 25: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Address Binding pada SwappingAddress Binding pada Swapping

• Address binding saat eksekusi lebih fleksible sementara saat kompilasi/saat loading memerlukan swap-in ke lokasi yang sama

• Bagian utama dari waktu swap adalah waktu untuk transfer– Waktu transfer total secara langsung proporsional

pada jumlah memori yang diswap

Page 26: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Varian-varian SwappingVarian-varian Swapping• “Roll out, roll in” merupakan varian swapping

untuk algoritma priority scheduling– Proses prioritas rendah di-swap out agar proses

prioritas tinggi dapat diload & dieksekusi lebih dulu• Versi-versi modifikasi dari swap

diimplementasikan di banyak sistem– Misalnya UNIX dan Windows

Page 27: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Quantum Waktu vs SwappingQuantum Waktu vs Swapping• Quantum waktu untuk proses harus cukup besar

relatif terhadap waktu untuk swap– Khususnya untuk scheduler seperti Round Robin

• User process : 100 kb, HD transfer rate = 1000 kb/sec, maka transfer time = 100 kb / 1000 kb/sec = 0.1 sec = 100 msec

• Swap in & out = 2 * 100 = 200 msec• Overhead latency = 2 * 8 = 16 msec• Total swap time = 200 + 16 = 216 msec => Maka time

quantum sebaiknya lebih besar daripada 216 msec.

Page 28: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Kendala SwappingKendala Swapping• Kalau suatu proses akan di-swap, sebaiknya

proses dalam keadaan idle– Misalnya proses yang sedang wait untuk I/O ke buffer

memori secara asynchronous.

– Dapat dicegah dengan menggunakan I/O buffer

I/O ke buffer I/O ke buffer memorimemori

P1P1

P2P2

SwaSwapp

Hasil I/O Hasil I/O ditransfer ke ditransfer ke memori yang memori yang sekarang sekarang digunakan ole P2digunakan ole P2

Page 29: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Pencatatan Pemakaian Memori Pencatatan Pemakaian Memori (1)(1)

• Pencatatan memori bertujuan agar dapat diketahui lokasi-lokasi mana saja di memori utama yang masih kosong dan sudah terisi

• Ada dua cara pencatatan memori– Manajemen memori dengan Bit Map (Pemetaan Bit)– Manajemen memori dengan Link List

Page 30: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Pencatatan Pemakaian Memori Pencatatan Pemakaian Memori (2)(2)

• (a) : alokasi memori(a) : alokasi memori• (b) : pencatatan memori dengan peta bit(b) : pencatatan memori dengan peta bit• (c) : pencatatan memori dengan link list(c) : pencatatan memori dengan link list

Page 31: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Manajemen Memori dengan Link ListManajemen Memori dengan Link List

• Four neighbor combinations for the terminating Four neighbor combinations for the terminating process Xprocess X

Page 32: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Manajemen Memori Pada Manajemen Memori Pada MonoprogrammingMonoprogramming

• Three simple ways of organizing memory - an Three simple ways of organizing memory - an operating system with one user processoperating system with one user process

Page 33: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Multiprogramming Dengan Fixed PartitionsMultiprogramming Dengan Fixed Partitions

• Fixed memory partitionsFixed memory partitions– separate input queues for each partitionseparate input queues for each partition– single input queuesingle input queue

Page 34: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Contiguous AllocationContiguous Allocation

• Memori utama biasanya terbagi dalam dua partisi :– Untuk OS yang residen : biasanya disimpan dalam

memori ber-address rendah (low memory) dengan vektor-vektor interrupt

• Interrupt address sebagai interrupt ID

– Untuk proses-proses user : biasanya disimpan dalam high memory

Page 35: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Memory PartitionMemory Partition

Proses UserProses User

OSOS00

512 512 KK

Page 36: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Single-Partition AllocationSingle-Partition Allocation• Skema register realokasi (base register) :

digunakan untuk proteksi proses-proses user terhadap yang lainnya, dan dari pengubahan code dan data OS– Relokasi register berisi nilai dari address fisik terkecil– Register limit berisi range dari address logic– Setiap address logic harus < register limit

Page 37: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Contoh :Contoh :

• Misal :– Register relokasi (base register) = 100040

register limit (limit register) = 74600– Address logic = 10200

address fisik = 110240– Address logic = 81000

address fisik = error

Page 38: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Support Perangkat Keras untuk Support Perangkat Keras untuk Relokasi dan Limit RegisterRelokasi dan Limit Register

Page 39: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Penggunaan Base and Limit Penggunaan Base and Limit RegisterRegister

Page 40: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Multiple-Partition Allocation Multiple-Partition Allocation (1)(1)

• Partisi Fixed-Sized (MFT = Multiprogramming with a Fixed number of Task)– Memori dibagi menjadi beberapa blok dengan ukuran

tertentu yang seragam• Jumlah user process yang bisa running max hanya sejumlah

blok yang disediakan (misal IBM OS/360)

• Partisi Variable-Sized (MVT = Multiprogramming with a Variable number of Task)– Pembagian memori sesuai dengan request dari

proses-proses yang ada

Page 41: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Multiple-Partition Allocation Multiple-Partition Allocation (2)(2)

• Dalam skema Partisi Variable-Sized dapat terbentuk sejumlah Hole– Hole : blok dari memori yang available yang dapat

tersebar di berbagai tempat di memori– Saat suatu proses datang maka dialokasikan suatu

hole yang berukuran sesuai dengan yang diperlukan proses dan datanya

Page 42: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Contoh Dalam Suatu ScheduleContoh Dalam Suatu Schedule

• Ukuran memori 2560K, dan OS menempati sebanyak 400K (untuk user = 2160K)

• Dalam queue :– P1 berukuran 600K– P2 berukuran 1000K– P3 berukuran 300K– P4 berukuran 700K– P5 berukuran 500K

Page 43: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Contoh Alokasi MemoriContoh Alokasi Memori

OS

P1

P2

P3

OS

P1

P3

OS

P1

P3

Free

Free

P4

Free Free Free

OS

P3

Free

P4

Free

Free

OS

P3

Free

P4

Free

FreeP5

P2 selesai P4 masuk P1 selesai P5 masuk

Page 44: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Peranan OS Dalam PartisiPeranan OS Dalam Partisi

• Memelihara informasi mengenai– Partisi yang teralokasi– Partisi yang bebas (hole)

Page 45: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Masalah Dynamic Storage-AllocationMasalah Dynamic Storage-Allocation

• Untuk memenuhi permintaan berukuran n dari suatu list hole-hole bebas– First-fit : hole pertama yang memenuhi– Best-fit : hole terkecil yang memenuhi– Worst-fit : hole terbesar yang memenuhi

Best-fit & Worst-fit perlu melakukan searching Best-fit & Worst-fit perlu melakukan searching ke seluruh list (atau jika list terurut sampai ke seluruh list (atau jika list terurut sampai ketemu)ketemu)

First-fit & Best-fit lebih baik dari Worst-fit baik First-fit & Best-fit lebih baik dari Worst-fit baik dalam kecepatan maupun utilisasi storagedalam kecepatan maupun utilisasi storage

Page 46: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Fragmentasi EksternalFragmentasi Eksternal

• Ruang memori keseluruhan yang ada untuk memenuhi permintaan, namun tidak contiguous

• Hole-hole ada diantara proses-proses berurutan

Page 47: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Fragmentasi InternalFragmentasi Internal

• Memori yang teralokasi mungkin sedikit lebih besar dari memori yang diminta dengan perbedaan

• Untuk meminimisasi hole-hole yang tersebar• Overhead untuk menyimpan informasi hole lebih

besar daripada hole itu sendiri

Page 48: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

CompactionCompaction

• Untuk mananggulangi fragmentasi eksternal digunakan metode compaction (pemadatan).– Menempatkan ulang proses-proses yang ada pada

memori yang bebas, dan diatur sedemikian sehingga posisi hole dapat berdekatan

– Compaction hanya dimungkinkan jika relokasi dilakukan secara dynamic, dan dilakukan saat eksekusi (execution time)

Page 49: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Paging Paging (1)(1)

• Address space logic dari proses bisa noncontiguous

• Membagi memori fisik ke dalam frame-frame (blok-blok berukuran tertentu)– Ukurannya bilangan pangkat dari 2, antara 512 byte

dan 8192 byte – tergantung arsitektur hardware CPU• Membagi memori logic ke dalam page-page

(blok-blok berukuran sama dengan frame)

Page 50: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Paging Paging (2)(2)

• Memelihara setiap frame bebas (free frame)• Untuk menjalankan proses berukuran n page,

diperlukan n frame bebas untuk ditempati proses lalu menjalankannya

• Men-setup page table untuk translasi antara alamat logic ke alamat fisik

• Fragmentasi internal pada page terakhir

Page 51: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Skema PagingSkema Paging• Tidak ada fragmentasi eksternal• Fragmentasi internal bisa terjadi• Worst-case

– Setiap proses memerlukan n page + 1 byte– Bila ukuran page = 4096 byte maka akan terbuang

4095 byte / proses• Table frame digunakan untuk mengontrol mana

yang available, yang teralokasi, jumlah semua frame, dll

Page 52: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Peng-address-an Peng-address-an (1)(1)

• Address yang dihitung CPU terdiri atas :– Page number (p) : merupakan indeks dalam tabel

yang berisi base address dari tiap page dalam memori fisik

– Page offset (d) : bersama base address menyatakan address memori fisik yang dikirim ke unit memori

– Jika ukuran address logic adalah 2m, dan ukuran page adalah 2n unit address (byte atau word), maka high-order m-n bit address logic digunakan untuk page number, dan low-order n bit digunakan untuk page offset.

Page numberPage number Page offsetPage offset

pp dd

m- m- nn

nn

Page 53: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Peng-address-an Peng-address-an (2)(2)

• Pembedaan antara user address space (memori menurut pandangan user) dengan memori fisik dinyatakan dengan perangkat keras translasi address; address logic ditranslasi ke dalam address fisik

Page 54: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Arsitektur Translasi AddressArsitektur Translasi Address

Page 55: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Model PagingModel Paging

Page 56: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Model PagingModel Paging

Address (p, d) dipetakan ke table(p) * pagesize + d

Page 57: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Contoh PagingContoh Paging

Page 58: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Contoh PagingContoh Paging• Dengan page size = 4 byte maka

– Address logic 0 (page 0, offset 0) dipetakan ke address fisik : (5 * 4) + 0 = 20

– Address logic 3 (page 0, offset 3) dipetakan ke address fisik : (5 * 4) + 3 = 23

– Address logic 4 (page 1, offset 0) dipetakan ke address fisik : (6 * 4) + 0 = 24

Page 59: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Free FrameFree Frame

Before allocation After allocation

Page 60: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Implementasi Page TableImplementasi Page Table• Page-table berada dalam memori utama• Page-table base register (PTBR)

– Merupakan pointer ke page-table• Page-table length register (PTLR)

– Menyatakan ukuran page table• Associative register – parallel search :

menggunakan register cache memori.– Jika page number ditemukan dalam associative

register, maka frame number tersedia dan digunakan untuk mengakses memori

Page 61: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Translation Look-aside Buffer (TLB)Translation Look-aside Buffer (TLB)• Dalam skema ini setiap akses ke data/instruksi

membutuhkan dua kali akses memori : untuk page-table dan untuk data/instruksi

• Kedua kasus ini dipecahkan dengan menggunakan cache HW fast-lookup yang disebut associative register atau translation look-aside buffer (TLB)

Page 62: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Struktur TLBStruktur TLB

Page Number Frame NumberPage Number

Frame Number

Page 63: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Perangkat Keras Paging dengan Perangkat Keras Paging dengan TLBTLB

Page 64: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Mekanisme TLBMekanisme TLB• Translasi address (p,d)

– Bila p berada dalam TLB, dapatkan nomor frame– Jika tidak, dapatkan nomor frame dari page table

dalam memori• Hit ratio : persentasi berapa kali nomor page

ditemukan dalam TLB (jumlah associative register)

Page 65: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Effective Access Time (EAT)Effective Access Time (EAT)• Menyatakan estimasi waktu akses ke suatu Menyatakan estimasi waktu akses ke suatu

lokasi di memorilokasi di memori– Associative Lookup (TLB) = Associative Lookup (TLB) = time unit time unit– Asumsi siklus memori = 1 time unitAsumsi siklus memori = 1 time unit– Hit ratio = Hit ratio = – Effective Access Time (EAT)Effective Access Time (EAT)

EAT = (1 + EAT = (1 + ) ) + (2 + + (2 + )(1 – )(1 – ))= 2 + = 2 + – –

Page 66: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Effective Access Time (EAT)Effective Access Time (EAT)• Misal : Misal :

– 80% hit ratio, artinya page number yang dicari dalam 80% hit ratio, artinya page number yang dicari dalam associative register adalah 80% dari waktu. associative register adalah 80% dari waktu.

– Jika terpakai waktu 20ns (nanosecond) untuk melakukan Jika terpakai waktu 20ns (nanosecond) untuk melakukan search pada associative register, dan 100ns untuk akses ke search pada associative register, dan 100ns untuk akses ke memori, maka pemetaan akses memori membutuhkan 120ns memori, maka pemetaan akses memori membutuhkan 120ns ketika page number ada dalam associative register.ketika page number ada dalam associative register.

– Jika page number gagal ditemukan pada associative register Jika page number gagal ditemukan pada associative register (20ns), maka harus mengakses memori untuk mencari page (20ns), maka harus mengakses memori untuk mencari page table dan frame number (100ns), dan kemudian mengakses table dan frame number (100ns), dan kemudian mengakses byte dalam memori (100ns), sehingga total 220ns.byte dalam memori (100ns), sehingga total 220ns.

– Effective Access Time (EAT) = 0.80 x 120 + 0.20 x 220 = 140nsEffective Access Time (EAT) = 0.80 x 120 + 0.20 x 220 = 140ns– Dengan demikian, ada 40% perlambatan (Dengan demikian, ada 40% perlambatan (slowdownslowdown) dalam ) dalam

waktu akses memori (waktu akses memori (memory access timememory access time) yaitu dari 100 ke ) yaitu dari 100 ke 140ns140ns

Page 67: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

ProteksiProteksi• Proteksi memori diimplementasikan dengan bit Proteksi memori diimplementasikan dengan bit

proteksi peng-asosiasi-an pada setiap frameproteksi peng-asosiasi-an pada setiap frame• Setiap entry dalam page table memiliki bit Valid-

invalid :– “valid” menunjukkan page yang terkait dalam address

logic suatu proses dan merupakan page yang legal– “invalid” menunjukkan page yang tidak berada dalam

address space logic suatu proses

Page 68: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Valid (v) or Invalid (i) Bit dalam Valid (v) or Invalid (i) Bit dalam Page TablePage Table

Page 69: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Struktur Page TableStruktur Page Table• Hierarchical PagingHierarchical Paging• Inverted Page TableInverted Page Table

Page 70: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Hierarchical Page TableHierarchical Page Table• Membagi ruang address logic ke dalam banyak Membagi ruang address logic ke dalam banyak

page tablepage table• Teknik yang sederhana menggunakan dua level Teknik yang sederhana menggunakan dua level

page tablepage table• Partisi page table memungkinkan partisi-partisi Partisi page table memungkinkan partisi-partisi

dalam status tak terpakai tidak berada dalam dalam status tak terpakai tidak berada dalam memori hingga suatu proses memerlukannyamemori hingga suatu proses memerlukannya

Page 71: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Struktur PengaddressanStruktur Pengaddressan• Address logic terdiri atas : section number Address logic terdiri atas : section number ss, ,

page number page number pp, dan offset , dan offset dd• ss indeks ke dalam outer page table dan indeks ke dalam outer page table dan pp

displacement dalam page tabledisplacement dalam page table• Misalnya : pada mesin 32 bit dengan pagesize Misalnya : pada mesin 32 bit dengan pagesize

4K : 10 bit section, 10 bit page number dan 12 4K : 10 bit section, 10 bit page number dan 12 bit offsetbit offset

Page numberPage number Page offsetPage offset

pp dd

Section Section numbernumber

ss

Page 72: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Skema Page-Table Dua-LevelSkema Page-Table Dua-Level

Page 73: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Skema Translasi Address Skema Translasi Address Paging Dua-LevelPaging Dua-Level

Page 74: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

PerformancePerformance• Karena setiap level disimpan sebagai tabel Karena setiap level disimpan sebagai tabel

terpisah dalam memori, konversi address logic terpisah dalam memori, konversi address logic ke address fisik bisa memerlukan empat ke address fisik bisa memerlukan empat (quantuple) akses memori(quantuple) akses memori

• Namun, dengan adanya caching maka Namun, dengan adanya caching maka performance masih reasonableperformance masih reasonable– Misal rata-rata cache hit 98%, EAT = 0.98 x 120ns + Misal rata-rata cache hit 98%, EAT = 0.98 x 120ns +

0.02 x 520ns = 128ns, slowdown sebesar 28%0.02 x 520ns = 128ns, slowdown sebesar 28%

Page 75: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Inverted Page TableInverted Page Table• Page Table hanya menyimpan page memori Page Table hanya menyimpan page memori

yang “real” serta id dari proses yang memiliki yang “real” serta id dari proses yang memiliki page tersebutpage tersebut– Mengurangi kebutuhan untuk menyimpan seluruh Mengurangi kebutuhan untuk menyimpan seluruh

page dalam memori, namun meningkatkan waktu page dalam memori, namun meningkatkan waktu untuk pencarian dalam tabel ketika referensi terjadiuntuk pencarian dalam tabel ketika referensi terjadi

• Menggunakan tabel hash untuk membatasi pencarian ke Menggunakan tabel hash untuk membatasi pencarian ke suatu (beberapa) entri tabelsuatu (beberapa) entri tabel

Page 76: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Skema Inverted Page-TableSkema Inverted Page-Table

Page 77: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Shared PageShared Page• Keuntungan paging adalah sharing common Keuntungan paging adalah sharing common

code : satu copy untuk code yang read-only code : satu copy untuk code yang read-only (reentrant) dan di-share oleh sejumlah proses(reentrant) dan di-share oleh sejumlah proses– i.e text editor, compilers, windows systemi.e text editor, compilers, windows system

Page 78: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Contoh Shared PageContoh Shared Page

Page 79: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

SegmentasiSegmentasi• Skema manajemen memori yang mendukung Skema manajemen memori yang mendukung

pandangan user (pandangan user (user viewuser view) dari memori) dari memori– Program merupakan kumpulan segmenProgram merupakan kumpulan segmen– Segmen merupakan satuan logic untuk :Segmen merupakan satuan logic untuk :

• Main program, procedure, functionMain program, procedure, function• Local variables, global variablesLocal variables, global variables• Common block, stackCommon block, stack• Symbol table, arraySymbol table, array

Page 80: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

User’s View of a ProgramUser’s View of a Program

Page 81: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Logical View of SegmentationLogical View of Segmentation

1

3

2

4

1

4

2

3

user space physical memory space

Page 82: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

Segmentation HardwareSegmentation Hardware

Page 83: Manajemen Memori - Asri Pujiastuti's Blog | This WordPress ... · PPT file · Web viewManajemen Memori Effective Access Time (EAT) Misal : 80% hit ratio, artinya page number yang

END OF MODUL - 9END OF MODUL - 9