Top Banner
Manajemen Memori Pertemuan ke 10
37

Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Feb 26, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Manajemen Memori

Pertemuan ke 10

Page 2: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Bersyukur dan berdoaMenurut kepercayaan dan agama masing-masing

(1) Bersyukur masih diberi kesempatan untuk belajar dan berbagi ilmu.

Page 3: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Bersyukur dan berdoaMenurut kepercayaan dan agama masing-masing

(1) Bersyukur masih diberi kesempatan untuk belajar dan berbagi ilmu.

(2) Berdoa, semoga ilmu yang didapat hari ini dapat mudah terserap dengan tetap menjaga sopan satun.

Page 4: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Bersyukur dan berdoaMenurut kepercayaan dan agama masing-masing

(1) Bersyukur masih diberi kesempatan untuk belajar dan berbagi ilmu.

(2) Berdoa, semoga ilmu yang didapat hari ini dapat mudah terserap dengan tetap menjaga sopan satun.

(3)Berdoa, semoga bisa menyelesaikan pendidikan ini tepat waktu dan diwaktu yang tepat

Page 5: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Apa itu memori ? Memori adalah tempat penyimpanan kode program dan data

didalam suatu sistem komputer Memori adalah pusat operasi pada sistem komputer modern

Page 6: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Hirarki Memori

Page 7: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

1. Relocation2. Protection3. Sharing

KEBUTUHAN (REQUIRE) DALAM MANAJEMEN MEMORY

Page 8: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

RELOCATION1. Yaitu masalah penempatan proses sesuai alamat fisik2. Pada saat program dieksekusi, dimungkinkan

program tersebut akan di-swap ke disk dan kemudian diambil lagi dari disk untuk ditaruh di memori dengan lokasi yang mungkin berbeda dengan lokasi sebelumnya (terjadi relocation)

3. Diperlukan adanya translasi antara alamat program dengan alamat fisik memori

Page 9: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

PROTECTION1. Suatu proses tidak boleh mengakses lokasi memori

proses yang lain tanpa ijin2. Lokasi program di memori tidak tentu --> alamat

mutlak pada saat compile tidak dapat diketahui3. Penanganan proteksi memori diserahkan kepada

prosesor (secara hardware), bukan bagian sistem operasi (software)√ Sistem operasi tidak dapat memperkirakan penggunaan

semua referensi memori dari setiap program

Page 10: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

SHARING1. Harus dimungkinkan suatu lokasi memori dapat

diakses oleh lebih dari satu proses (secara legal)2. Beberapa proses yang memerlukan data yang sama,

maka tidak perlu setiap proses menyalin data dari disk ke memori, cukup sebuah salinan saja

Page 11: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

TEKNIK MANAJEMEN MEMORY

Beberapa teknik manajemen memori yang ada: Partisi

Partisi tetap (fixed)• Partisi berukuran sama• Ukuran partisi berbeda-beda

Partisi dinamis

Segmentasi sederhana

Virtual-memory

Paging sederhana

Page 12: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Partisi (Tetap / Fixed)Sebelum digunakan memori terlebih dahulu dipartisi (ukuran partisi tidak berubah)Macam Ukuran Partisi :1. Equal Partisi (Partisi Sama)

• Setiap proses yang ukurannya lebih kecil atau sama dengan ukuran partisi dapat menempati partisi tersebut

• Jika semua partisi telah terisi, maka sistem operasi akan melakukan swap terhadap proses yang sudah tidak aktif

• Dimungkinkan adanya program yang ukurannya lebih besar daripada ukuran partisi yang tersedia --> programmer harus merancang program dengan overlay

• Penggunaan memori sangat tidak efisien※ Misal bila ukuran partisi adalah 8 MB, maka program

berukuran 2 MB akan menyisakan ruang memori sebesar 6 MB

Page 13: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Partisi (Tetap / Fix)2. Un-Equal Partisi (Partisi Tidak Sama)• Lebih baik daripada partisi

berukuran sama:√ Penggunaan memori lebih

efisien√ Tidak perlu memasukan

proses yang membutuhkan memori lebih besar dari yang tersedia (Overlay)

Page 14: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Partisi (Tetap / Fix) : Model Antrian

a) One Process Queue per Partition

b) Single Queue

Page 15: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Partisi (Dinamis)1. Jumlah dan ukuran partisi tidak tetap (variabel)2. Ukuran partisi sama dengan ukuran proses yang

akan menempatinya untuk pertama kali atau sesudah pemadatan (compaction) --> tidak terjadi fragmentasi internal

3. Dapat terjadi fragmentasi eksternal–Fragmentasi eksternal: sisa ruang memori yang terjadi jika ukuran proses lebih besar daripada ruang memori yang disediakan (dibebaskan) sehingga ruang memori tidak digunakan

–Solusi: dilakukan compaction sehingga sisa-sisa ruang memori terkumpul menjadi satu --> sisa ruang memori menjadi besar

Page 16: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Contoh Partisi

Dinamis

Page 17: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

BUDDY SYSTEM Merupakan kombinasi antara teknik manajemen

memori partisi tetap dan dinamis Ruang memori yang tersedia selalu berukuran 2K, L≤K

≤U• 2L = ukuran blok terkecil yang dapat ditempati• 2U = ukuran blok terbesar yang dapat ditempati,

merupakan ukuran seluruh memori yang dapat digunakan

Page 18: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Contoh buddy system :

Page 19: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Contoh Pohon Biner Buddy System

Page 20: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Maka dari itu diperlukan (algoritma)

– Permasalahan:• Kapan saat untuk melakukan loading dan

swapping ?• Bila terdapat lebih dari satu blok memori yang

dapat dibebaskan, blok memori yang mana yang akan di-swap ?

– Algoritma yang dapat digunakan:• Best-fit• First-fit• Next-fit

Page 21: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Best Fit – Memilih blok memori yang paling sedikit

menyisakan ruang memori– Biasanya performansi secara keseluruhan adalah

yang paling jelek:◎ Proses pencarian lebih lama dan membebani

prosesor◎ Sisa memori berukuran kecil-kecil lebih cepat

terbentuk --> Compaction harus lebih sering dilakukan daripada algoritma yang lain

Page 22: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

First Fit– Pencarian blok memori kosong dimulai dari awal– Blok memori yang dipilih adalah blok memori yang

pertama kali ditemukan dan ukurannya sesuai– Merupakan algoritma yang paling baik:

• Paling cepat• Paling sederhana

– Pencarian akan melewati sejumlah proses yang terletak pada bagian ujung awal memori sebelum menemukan blok memori yang bebas

Page 23: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Next Fit– Pencarian blok memori kosong dimulai dari lokasi

placement terakhir– Lebih jelek dibanding First-fit, karena:

• Blok memori yang ditemukan sering berada pada ujung akhir memori yang merupakan blok memori berukuran paling besar:

– Blok memori yang besar akan lebih cepat terpartisi menjadi blok memori yang lebih kecil

– Compaction untuk memperoleh blok memori berukuran besar pada ujung akhir memori harus lebih sering dilakukan daripada First-fit

Page 24: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Contoh :√ Ukuran proses baru = 16 MB√ Memori sisa:

–Best-fit = 2 MB–First-fit = 6 MB–Next-fit = 20 MB

Page 25: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

PAGING• Suatu teknik manajemen memori yang

dilakukan oleh komputer, untuk menyimpan dan memanggil data dari hardisk ketika kapasitas memori utama di komputer sudah penuh

• Data-data ini disimpan disuatu tempat yang namanya page file, yang berada didalam hardisk.

Page 26: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

CONTOH KASUS

Page 27: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

KELEBIHAN & KEKURANGAN PAGING

Kasus Keuntungan Kekurangan

Jika membuat ukuran page menjadi besar-besar

Akses memori akan lebih cepat

Kemungkinan terjadinya fragmentasi internal yang sangat besar

Jika membuat ukuran page menjadi kecil-kecil

Kemungkinan adanya fragmentasi internal menjadi lebih kecil

Akses memori akan lebih lambat

Page 28: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Contoh Penempatan Paging • Misal : Tersedia 15 frame pada suatu

page, Terdapat Beberapa Proses :• Proses A masuk (4 Frame)• Proses B masuk (3 Frame)• Proses C masuk (4 Frame)• Proses B selesai (3 Frame)• Proses D masuk (5 Frame)

Page 29: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Contoh penempatan paging

Page 30: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Contoh penempatan paging (lanjut)

Page 31: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Contoh penempatan paging (lanjut)

• Maka kesimpulan akhir Paging : (Menjadi)

• Nomor page selalu diawali dengan nol

No. page

No. frame

Page 32: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Segmentasi1. Program dan data dibagi-bagi dalam sejumlah

segment2. Ukuran setiap segment boleh berbeda-beda3. Panjang segment mempunyai batasan maksimum4. Format alamat logic terdiri dari 2 bagian yaitu nomor

segment dan offset5. Segment table terdiri dari nomor segment, panjang

segment, dan awal alamat fisik6. Segmentasi sederhana identik dengan partisi dinamis,

karena ukuran segment berbeda-beda

Page 33: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Contoh Segmentasi Sederhana

√ Sebuah memori menggunakan pengalamatan 16 bit dan dipartisi dengan model segmentasi sederhana dimana jumlah bit untuk nomor segment sebesar 4 bit. Berapakah alamat fisik untuk alamat logic dengan segment1 = 1 dan offset = 752 ? (Alamat fisik awal adalah 8224)

√ Jawaban:• Nomor segment terdiri dari 4 bit, maka:

o Jumlah segment maksimum = 24 = 16 segmento Jumlah bit offset = 16-4 = 12 bit --> ukuran

Page 34: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Contoh Segmentasi Sederhana

Page 35: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Contoh Segmentasi Sederhana (lanjut)

• Alamat logic dengan segment1 = 1 dan offset = 752 dalam biner adalah, maka:

※ Segment1 = 1 0001※ Offset = 752 001011110000※ Alamat dalam biner adalah 0001001011110000

• Jika awal alamat fisik pada segment table untuk alamat logic tersebut adalah adalah 8224 atau 0010000000100000, maka:

※ Alamat fisik dari alamat logic tersebut adalah penjumlahan awal alamat fisik dengan offset = 0010000000100000 + 001011110000 sehingga menjadi 0010001100010000 atau 8976

Page 36: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

Contoh Segmentasi Sederhana

Page 37: Manajemen Memori · 2018. 1. 4. · Segmentasi 1. Program dan data dibagi-bagi dalam sejumlah segment 2. Ukuran setiap segment boleh berbeda-beda 3. Panjang segment mempunyai batasan

facebook.com/afandi354 twitter.com/fun_dii [email protected] +62 823 253 128 82

T e r i m aK a s i h

A d a P e r t a n y a a n ?