SlideShare a Scribd company logo
1 of 34
Manajemen Memori 1
MANAJEMEN MEMORI
1. Konsep dasar memori
- Konsep Binding
- Dynamic Loading
- Dynamic Linking
- Overlay
2. Ruang Alamat Logika dan Fisik
3. Swapping
4. Pengalokasian Berurutan (Contiguous
Allocation)
5. Pengalokasian Tidak Berurutan (Non
Contiguous Allocation)
Manajemen Memori 2
KONSEP DASAR
• Memori sebagai tempat penyimpanan instruksi/ data
dari program
• Memori adalah pusat kegiatan pada sebuah
komputer, karena setiap proses yang akan
dijalankan, harus melalui memori terlebih dahulu
• Untuk dapat dieksekusi, program harus dibawa ke
memori dan menjadi suatu proses
Manajemen Memori 3
KONSEP DASAR
• Manajemen memori :
– Melacak pemakaian memori (siapa dan berapa
besar)
– Memilih program mana yang akan diload ke
memori
– Alokasi dan dealokasi memori fisik untuk
program/ proses-proses dalam menggunakan
address space
• Tugas Sistem Operasi :
– Mengatur peletakan banyak proses pada suatu
memori, memori harus dapat digunakan dengan
baik  dapat memuat banyak proses dalam suatu
waktu
Manajemen Memori 4
KONSEP BINDING
• Sebelum eksekusi, program berada di dalam disk,
dan saat dieksekusi program tersebut perlu berada
pada suatu lokasi dalam memori fisik
• Address Binding adalah cara instruksi dan data (yang
berada di disk sebagai file executable) dipetakan ke
alamat memori
• Alamat (address) pada source program umumnya
merupakan alamat simbolik. Sebuah compiler
biasanya membutuhkan “mengikat” (bind) alamat
simbolik ke alamat relokasi
Manajemen Memori 5
KONSEP BINDING
• Address Binding dapat berlangsung dalam 3
tahap yang berbeda, yaitu : kompilasi, load
atau eksekusi dari suatu program
Manajemen Memori 6
• Bagaimana Sistem Operasi menempatkan
program di memori :
– Kompilasi dan Linking menerjemahkan semua
simbol data berdasarkan alamat acuan absolut
– Proses relokasi (proses mapping program  lokasi
memori)
• Jika program berada di memori, maka semua alamat lojik
dalam program harus dikonversi ke alamat fisik.
• Statis : relokasi alamat dilakukan sebelum program
dijalankan
• Dinamis : relokasi alamat dilakukan pada saat referensi
setiap instruksi atau data
Manajemen Memori 7
DYNAMIC LOADING
• Dengan dynamic loading, suatu routine tidak
diload sampai dipanggil. Semua routine
disimpan pada disk sebagai format
relocatable load
• Mekanisme dasar :
– Program utama diload dahulu dan dieksekusi
– Bila suatu routine perlu memanggil routine yang
lain, routine yang dipanggil lebih dahulu diperiksa
apakah routine yang dipanggil sudah diload. Jika
tidak, relocatable linking loader dipanggil untuk
meload routine yang diminta ke memori dan
mengupdate tabel alamat dari program yang
mencerminkan perubahan ini.
Manajemen Memori 8
DYNAMIC LINKING
• Linking ditunda hingga waktu eksekusi
• Program-program user tidak perlu menduplikasi system
library
– System library dipakai bersama
– Mengurangi pemakaian space : satu rutin library di memori
digunakan secara bersama oleh sekumpulan proses
– Contoh : DLL Win32
• Mekanisme menggunakan stub (potongan kecil yang
mengindikasikan bagaimana meload library jika routine
tidak tersedia saat itu)
– Saat stub dieksekusi, ia akan memeriksa apakah rutin ybs sudah
berada di dalam memori(diakses oleh proses lain yang run), kalau
belum ada maka rutin tersebut diload
– Stub menempatkan dirinya pada alamat rutin dan mengeksekusi
rutin tersebut
Manajemen Memori 9
DYNAMIC LINKING
• Dynamic Linking membutuhkan beberapa
dukungan dari OS, misal :
– Bila proses-proses di memori utama saling
diproteksi, maka SO melakukan pengecekan
apakah rutin yang diminta berada diluar alamat.
– Beberapa proses diijinkan untuk mengakses
memori pada alamat yang sama
• File dynamic linking berekstensi .dll, .sys,
.drv
Manajemen Memori 10
OVERLAY
• Hanya instruksi dan data yang diperlukan
pada suatu waktu yang disimpan di memori
• Overlay diperlukan jika ukuran proses lebih
besar dari memori yang dialokasikan
untuknya
• Overlay tidak membutuhkan dukungan
khusus dari SO
– User dapat mengimplementasikan secara lengkap
menggunakan struktur file sederhana
– OS memberitahu hanya jika terdapat I/O yang
melebihi biasanya
Manajemen Memori 11
Ruang Alamat Logika dan Fisik
• Alamat Logika adalah alamat yang
digenerate oleh CPU, disebut juga Alamat
Virtual
• Alamat Fisik adalah alamat yang terdapat di
memori
• Perlu ada penerjemah (translasi) dari alamat
logika ke alamat fisik
• MMU (Memory Management Unit) adalah
perangkat keras yang memetakan alamat
logika ke alamat fisik
Manajemen Memori 12
Ruang Alamat Logika dan Fisik
• Dalam Skema MMU :
– Menyediakan perangkat register
yang dapat diset oleh CPU: setiap
proses mempunyai data set
register tersebut (disimpan di
PCB)
– Harga dalam register
base/relokasi ditambahkan ke
setiap alamat proses user pada
saat run dimemori
– Program-program user hanya
berurusan dengan alamat logika
saja
Manajemen Memori 13
SWAPPING
• Meskipun proses harus berada di memori untuk
dieksekusi, tapi proses dapat di swap (tukar)
sementara keluar memori ke backing store dan
kemudian membawanya kembali ke memori untuk
eksekusi lanjutan
• Penukaran dapat terjadi pada lingkungan dengan
multiprogramming dengan penjadwalan CPU Round
Robin atau Priority.
– Bila waktu kuantum habis atau proses yang datang
mempunyai prioritas lebih tinggi, maka memory manager
akan mulai swap out proses yang telah selesai atau proses
yang yang prioritasnya lebih rendah dan swap in proses
lainnya ke memori
Manajemen Memori 14
SWAPPING
• Skema Swapping
Manajemen Memori 15
SWAPPING
• Pada umumnya sebuah proses yang di swap out akan menukar
kembali ke ruang memori yang sama dengan sebelumnya
• Penukaran membutuhan sebuah backing storage
• Bila CPU Scheduler memutuskan untuk mengeksekusi proses,
OS memanggil dispatcher
– Dispatcher memeriksa untuk melihat apakah proses selanjutnya
pada ready queue ada di memori
– Jika tidak dan tidak terdapat cukup memori bebas, maka
dispatcher swap out sebuah proses yang ada di memori dan swap
in proses tersebut
Manajemen Memori 16
Memori dan Proses
• Monoprogramming hanya ada satu proses di memori dan
sistem operasi
• Multiprogramming  lebih dari satu proses siap di memori
– Alokasi memori dengan partisi tetap untuk setiap proses
– Alokasi memori dengan partisi beragam sesuai besarnya proses
– Alokasi memori dibantu dengan disk (swap area), proses dapat
berpindah dari memori ke disk
– Virtual memori
OS
Progam
User
Manajemen Memori 17
PENGALOKASIAN MEMORI
• Salah satu tanggung jawab Sistem Operasi
adalah mengontrol akses ke sumber daya
sistem. Salah satunya adalah memori
• Pengalokasian memori dibagi 2 tipe, yaitu :
– Pengalokasian berurutan (Contiguous Allocation)
– Pengalokasian tidak berurutan (Non Contiguous
Allocation)
Manajemen Memori 18
CONTIGUOUS ALLOCATION
• Pada Multiprogramming memori utama harus
mengalokasikan tempat untuk sistem operasi dan
beberapa user proses
• Memori harus mengakomodasi baik OS dan proses
user
• Memori dibagi menjadi 2 partisi :
– Untuk OS yang resident
– Untuk Proses User
• Ada 2 tipe Contiguos Allocation :
– Single Partition (Partisi Tunggal)
– Multiple Partition (Partisi Banyak)
Manajemen Memori 19
CONTIGUOUS ALLOCATION
• Single Partition (Partisi Tunggal)
– Pada skema ini, diasumsikan OS ditempatkan di memori
rendah, dan proses user dieksekusi di memori tinggi
– Proteksi dapat dilakukan dengan dengan menggunakan
register relokasi dan register limit
• Register relokasi  berisi nilai dari alamat fisik terkecil
• Register Limit  berisi jangkauan alamat logika
• Alamat logika harus lebih kecil dari register limit
Manajemen Memori 20
CONTIGUOUS ALLOCATION
• Multiple Partition (Partisi Banyak)
– Ruang kosong  blok memori yang tersedia, ruang
kosong dengan berbagai ukuran tersebar pada memori
– Proses akan dialokasikan memori pada ruang kosong
yang cukup besar untuk ditempatinya
– OS akan mengelola informasi mengenai :
• Partisi yang dialokasikan
• Partisi bebas (ruang kosong)
– Contoh multiple allocation
Manajemen Memori 21
CONTIGUOUS ALLOCATION
• Multiple Partition (Partisi Banyak)
– Ada 2 skema dalam Multiple Partition Allocation:
• Partisi Fixed Size (MFT)
– Memori dibagi menjadi beberapa blok dengan ukuran
tertentu yang seragam
– Setiap partisi berisi tepat 1 proses
– Digunakan oleh IBM OS/360 yang disebut
Multiprogramming with a Fixed number of Task (MFT)
– Masalah yang muncul pada MFT :
» Sifat Program dinamis (alokasi dan dealokasi)
» Memori yang teralokasi mungkin lebih besar dari
memori yang diminta, sehingga mengakibatkan
fragmentasi internal
Manajemen Memori 22
MULTIPLE PARTITION
• Partisi variable Size (MVT)
– Pembagian memori sesuai dengan request dari proses-proses
yang ada
– Peranan memori manajemen semakin penting : list dari
partisi yang digunakan, free dll
– Masalah pada MVT :
» Terjadi fragmentasi external
- Ruang memori free tapi tidak contiguous
- Hole-hole ada diantara proses
- Tidak dapat digunakan karena proses terlalu besar
untuk menggunakannya
Manajemen Memori 23
MULTIPLE PARTITION
• Pada MVT OS akan menyimpan tabel yang berisi bagian
memori yang tersedia dan yang digunakan:
– Mula-mula,semua memori tersedia untuk proses user
sebagai satu blok besar (large hole)
– Bila proses datang dan memerlukan memori, dicari hole
yang cukup untuk proses tersebut
– Bila ditemukan, memory manager akan mengalokasikan
sejumlah memori yang dibutuhkan dan menyimpan sisanya
untuk permintaan berikutnya
• Contoh :
– Diasumsikan tersedia memori 2560 Kb dan untuk OS 400
Kb. Sisa 2160 Kb digunakan untuk user proses
– Diasumsikan terdapat 5 job (P1 s/d P5) terdapat pada input
queue.
– Diasumsikan penjadwalan FCFS digunakan untuk load job
ke memori. Penjadwalan CPU secara Round Robin (quantum
time =1) untuk penjadwalan job yang sudah ada di memori
Manajemen Memori 24
MULTIPLE PARTITION
JOB QUEUE
Proses Memori Time
P1
P2
P3
P4
P5
600 K
1000 K
300 K
700 K
500 K
10
5
20
8
15
0 K
400 K
2560 K
Operating
System
2160 K
Manajemen Memori 25
MULTIPLE PARTITION
Menggunakan MVT, terdapat beberapa kali hole untuk ukuran
berbeda
– Bila proses datang dan memerlukan memori, dicari dari hole
yang cukup untuk proses
– Dynamic Storage Allocation dapat dilibatkan untuk memenuhi
permintaan ukuran n dari hole bebas :
» First Fit  alokasi hole yang pertama yang memenuhi permintaan
» Best Fit  alokasi hole terkecil yang memenuhi permintaan
Dalam stratagi ini memerlukan pencarian keseluruhan hole,
kecuali bila ukuran sudah terurut
» Worst Fit  alokasi hole terbesar. Strategi ini memerlukan
pencarian keseluruhan hole, kecuali bila ukuran sudah terurut
– Diantara algoritma diatas, first fit dan best fit lebih baik
dibandingkan worst fit dalam hal menurunkan waktu dan
utilitas penyimpanan. Dan First Fit lebih cepat
Manajemen Memori 26
MULTIPLE PARTITION
– Diantara algoritma diatas, first fit dan best fit lebih baik
dibandingkan worst fit dalam hal menurunkan waktu
dan utilitas penyimpanan. Dan First Fit lebih cepat
Manajemen Memori 27
CONTIGUOUS ALLOCATION
SISTEM BUDDY
• Sistem Buddy merupakan cara mengelola memori
utama dengan memanfaatkan kelebihan
penggunaan bilangan biner (2k; k = 0,1,2 … )
• Contoh :
– Suatu memori utama pada awalnya memiliki satu lubang
besar berukuran 1 Mbyte.Jika suatu proses A berukuran
90 Kbyte memasuki memori, maka permintaan tersebut
dialokasikan ke lokasi terdekat yaitu 128 kbyte, karena
tidak ada, maka blok 1 Mbyte dipecah menjadi 2, masing-
masing berukuran 512 kbyte
Manajemen Memori 28
FRAGMENTASI EXTERNAL & INTERNAL
• Fragmentasi external terjadi pada situasi
dimana terdapat cukup ruang memori total
untuk memenuhi permintaan, tetapi tidak
dapat langsung dialokasikan karena tidak
berurutan
• Fragmentasi Internal terjadi pada situasi
dimana memori yang dialokasikan lebih
besar daripada memori yang diminta,
sehingga terdapat sebagian memori untuk
satu partisi tertentu yang tidak digunakan
Manajemen Memori 29
FRAGMENTASI EXTERNAL & INTERNAL
• Lubang-lubang kecil diantara blok-blok memori yang
digunakan dapat diatasi dengan memori compaction
• Memori Compaction adalah operasi menggabungkan
semua lubang kecil menjadi satu lubang besar
dengan memindahkan semua proses agar proses
saling berdekatan
Manajemen Memori 30
NON CONTIGUOS ALLOCATION
• Paging
– Paging adalah solusi untuk permasalahan
fragmentasi external
– Memori fisik dibagi ke dalam blok-blok ukuran tetap
yang disebut “frame”
– Memori logika dibagi ke dalam blok-blok dengan
ukuran yang sama yang disebut “page”
– Untuk menjalankan program berukuran n page,
harus dicari frame kosong sebanyak n untuk meload
program
– Page table digunakan untuk translasikan alamat
lojik ke alamat fisik
Manajemen Memori 31
NON CONTIGUOUS ALLOCATION
PAGING
• Alamat yang dibangkitkan CPU dibagi menjadi :
– Page number (p)  digunakan sebagai index ke page table. Page
table berisi alamat basis dari setiap page pada memori fisik
– Page Offset (d)  dikombinasikan dengan alamat basis untuk
mendefinisikan alamat memori fisik yang dikirim ke unit memori
• Skema translasi alamat
Manajemen Memori 32
NON CONTIGUOUS ALLOCATION
PAGING
• Model Paging
• Ukuran page atau frame ditentukan oleh
hardware
– Ukuran page merupakan bilangan 2 pangkat k mulai
512 sampai 8192 tergantung arsitektur komputer
Manajemen Memori 33
NON CONTIGUOUS ALLOCATION
SEGMENTASI
• Segmentasi
– Segmentasi adalah skema pengaturan memori
yang mendukung user untuk melihat memori
tersebut
– Tiap-tiap segmen memiliki nama dan panjang.
– Pandangan user mengenai memori:
Manajemen Memori 34
NON CONTIGUOUS ALLOCATION
SEGMENTASI
• Segmentasi
– Dukungan Hardware :
• Pemetaan ke alamat fisik dilakukan dengan menggunakan
tabel segmen, masing-masing berisi base dan limit

More Related Content

What's hot

 Manajemen memory dan Swapping
 Manajemen memory dan Swapping Manajemen memory dan Swapping
 Manajemen memory dan SwappingEdho Pratama
 
Jenis dan proses interupsi
Jenis dan proses interupsiJenis dan proses interupsi
Jenis dan proses interupsilaurensius08
 
Ch 04 (Siklus Instruksi dan Interrupt)
Ch 04 (Siklus Instruksi dan Interrupt)Ch 04 (Siklus Instruksi dan Interrupt)
Ch 04 (Siklus Instruksi dan Interrupt)Tri Sugihartono
 
Sistem input output
Sistem input outputSistem input output
Sistem input outputKruduk Bisa
 
Multiprosesor dan multikomputer
Multiprosesor dan multikomputerMultiprosesor dan multikomputer
Multiprosesor dan multikomputersmiledianita
 
Interaksi Manusia Dan Komputer 2
Interaksi Manusia Dan Komputer 2Interaksi Manusia Dan Komputer 2
Interaksi Manusia Dan Komputer 2Hide Maru
 
Struktur dan Interkoneksi Bus
Struktur dan Interkoneksi BusStruktur dan Interkoneksi Bus
Struktur dan Interkoneksi BusAmelia Kurniati
 
Pembahasan Tugas 1 Jaringan Komputer tentang Perhitungan VLSM
Pembahasan Tugas 1 Jaringan Komputer tentang Perhitungan VLSMPembahasan Tugas 1 Jaringan Komputer tentang Perhitungan VLSM
Pembahasan Tugas 1 Jaringan Komputer tentang Perhitungan VLSMI Putu Hariyadi
 
REKAYASA PERANGKAT LUNAK
REKAYASA PERANGKAT LUNAKREKAYASA PERANGKAT LUNAK
REKAYASA PERANGKAT LUNAKtreeyan
 
cONTOH Komputer Generasi Pertama
cONTOH Komputer Generasi PertamacONTOH Komputer Generasi Pertama
cONTOH Komputer Generasi Pertamadw13lingtri
 

What's hot (20)

 Manajemen memory dan Swapping
 Manajemen memory dan Swapping Manajemen memory dan Swapping
 Manajemen memory dan Swapping
 
Jenis dan proses interupsi
Jenis dan proses interupsiJenis dan proses interupsi
Jenis dan proses interupsi
 
Paralel prosesor
Paralel prosesorParalel prosesor
Paralel prosesor
 
Ch 04 (Siklus Instruksi dan Interrupt)
Ch 04 (Siklus Instruksi dan Interrupt)Ch 04 (Siklus Instruksi dan Interrupt)
Ch 04 (Siklus Instruksi dan Interrupt)
 
Pertemuan 10 memory
Pertemuan 10 memoryPertemuan 10 memory
Pertemuan 10 memory
 
Sistem input output
Sistem input outputSistem input output
Sistem input output
 
Multiprosesor dan multikomputer
Multiprosesor dan multikomputerMultiprosesor dan multikomputer
Multiprosesor dan multikomputer
 
Analisis Kebutuhan Sistem Informasi
Analisis Kebutuhan Sistem InformasiAnalisis Kebutuhan Sistem Informasi
Analisis Kebutuhan Sistem Informasi
 
Algoritma penjadwalan proses
Algoritma penjadwalan prosesAlgoritma penjadwalan proses
Algoritma penjadwalan proses
 
Interaksi Manusia Dan Komputer 2
Interaksi Manusia Dan Komputer 2Interaksi Manusia Dan Komputer 2
Interaksi Manusia Dan Komputer 2
 
Struktur dan Interkoneksi Bus
Struktur dan Interkoneksi BusStruktur dan Interkoneksi Bus
Struktur dan Interkoneksi Bus
 
Arkom2
Arkom2Arkom2
Arkom2
 
Power Point \ PPT - Memori Eksternal
Power Point \ PPT - Memori EksternalPower Point \ PPT - Memori Eksternal
Power Point \ PPT - Memori Eksternal
 
Makalah Memori Internal
Makalah Memori InternalMakalah Memori Internal
Makalah Memori Internal
 
Pembahasan Tugas 1 Jaringan Komputer tentang Perhitungan VLSM
Pembahasan Tugas 1 Jaringan Komputer tentang Perhitungan VLSMPembahasan Tugas 1 Jaringan Komputer tentang Perhitungan VLSM
Pembahasan Tugas 1 Jaringan Komputer tentang Perhitungan VLSM
 
10.manajemen sistem io
10.manajemen sistem io10.manajemen sistem io
10.manajemen sistem io
 
REKAYASA PERANGKAT LUNAK
REKAYASA PERANGKAT LUNAKREKAYASA PERANGKAT LUNAK
REKAYASA PERANGKAT LUNAK
 
Interupsi
InterupsiInterupsi
Interupsi
 
cONTOH Komputer Generasi Pertama
cONTOH Komputer Generasi PertamacONTOH Komputer Generasi Pertama
cONTOH Komputer Generasi Pertama
 
[PBO] Pertemuan 5 - Polymorphism
[PBO] Pertemuan 5 - Polymorphism[PBO] Pertemuan 5 - Polymorphism
[PBO] Pertemuan 5 - Polymorphism
 

Similar to OPTIMAL MEMORI

20230529 CahyoSatrioW 1611502616 Tugas pertemuan 10.pptx
20230529 CahyoSatrioW 1611502616 Tugas pertemuan 10.pptx20230529 CahyoSatrioW 1611502616 Tugas pertemuan 10.pptx
20230529 CahyoSatrioW 1611502616 Tugas pertemuan 10.pptxCahyoSatrio4
 
Operating System--Memory
Operating System--MemoryOperating System--Memory
Operating System--MemoryEverhythm Past
 
Manajemen memory Bab I Politeknik Negeri Bengkalis
Manajemen memory Bab I Politeknik Negeri BengkalisManajemen memory Bab I Politeknik Negeri Bengkalis
Manajemen memory Bab I Politeknik Negeri Bengkalistengkujefrizal
 
Teknik Manajemen Memory.pptx
Teknik Manajemen Memory.pptxTeknik Manajemen Memory.pptx
Teknik Manajemen Memory.pptxadeAndriyanto
 
Slide4 manajemen memori _Bu Indra
Slide4 manajemen memori _Bu IndraSlide4 manajemen memori _Bu Indra
Slide4 manajemen memori _Bu IndraHz Tena
 
Helen Alida Abilio - Manajemen memori
Helen Alida Abilio - Manajemen memoriHelen Alida Abilio - Manajemen memori
Helen Alida Abilio - Manajemen memoribelajarkomputer
 
Helen Alida Abilio - Manajemen Memori
Helen Alida Abilio - Manajemen MemoriHelen Alida Abilio - Manajemen Memori
Helen Alida Abilio - Manajemen Memoribelajarkomputer
 
Robbin 8 Main memory
Robbin 8 Main memory Robbin 8 Main memory
Robbin 8 Main memory Zan Levign
 
Bernis Sagita - Manajemen Memory
Bernis Sagita - Manajemen MemoryBernis Sagita - Manajemen Memory
Bernis Sagita - Manajemen Memorybelajarkomputer
 
Zulyanti Megasari - Manajemen Memory
Zulyanti Megasari -  Manajemen MemoryZulyanti Megasari -  Manajemen Memory
Zulyanti Megasari - Manajemen Memorybelajarkomputer
 
Manajemen Memori
Manajemen MemoriManajemen Memori
Manajemen MemoriAnwar Uddin
 
ini95_20230321085805_Modul-4_Proses.pptx
ini95_20230321085805_Modul-4_Proses.pptxini95_20230321085805_Modul-4_Proses.pptx
ini95_20230321085805_Modul-4_Proses.pptxakunoo
 
Kuliah iii struktur sistem operasi komputer
Kuliah iii struktur sistem operasi komputerKuliah iii struktur sistem operasi komputer
Kuliah iii struktur sistem operasi komputerPurwa Husada
 
Modul 1 struktur sistem komputer
Modul 1   struktur sistem komputerModul 1   struktur sistem komputer
Modul 1 struktur sistem komputerHardiansyah S. Amel
 
manajemen memori dan i/o
manajemen memori dan i/omanajemen memori dan i/o
manajemen memori dan i/otrifilrn
 

Similar to OPTIMAL MEMORI (20)

20230529 CahyoSatrioW 1611502616 Tugas pertemuan 10.pptx
20230529 CahyoSatrioW 1611502616 Tugas pertemuan 10.pptx20230529 CahyoSatrioW 1611502616 Tugas pertemuan 10.pptx
20230529 CahyoSatrioW 1611502616 Tugas pertemuan 10.pptx
 
Operating System--Memory
Operating System--MemoryOperating System--Memory
Operating System--Memory
 
9 man memoriaplot
9 man memoriaplot9 man memoriaplot
9 man memoriaplot
 
Manajemen memory Bab I Politeknik Negeri Bengkalis
Manajemen memory Bab I Politeknik Negeri BengkalisManajemen memory Bab I Politeknik Negeri Bengkalis
Manajemen memory Bab I Politeknik Negeri Bengkalis
 
Manajemen Memory
Manajemen MemoryManajemen Memory
Manajemen Memory
 
Teknik Manajemen Memory.pptx
Teknik Manajemen Memory.pptxTeknik Manajemen Memory.pptx
Teknik Manajemen Memory.pptx
 
Slide4 manajemen memori _Bu Indra
Slide4 manajemen memori _Bu IndraSlide4 manajemen memori _Bu Indra
Slide4 manajemen memori _Bu Indra
 
Memory
MemoryMemory
Memory
 
Helen Alida Abilio - Manajemen memori
Helen Alida Abilio - Manajemen memoriHelen Alida Abilio - Manajemen memori
Helen Alida Abilio - Manajemen memori
 
Helen Alida Abilio - Manajemen Memori
Helen Alida Abilio - Manajemen MemoriHelen Alida Abilio - Manajemen Memori
Helen Alida Abilio - Manajemen Memori
 
Pertemuan ke 9
Pertemuan ke 9Pertemuan ke 9
Pertemuan ke 9
 
Pertemuan3
Pertemuan3Pertemuan3
Pertemuan3
 
Robbin 8 Main memory
Robbin 8 Main memory Robbin 8 Main memory
Robbin 8 Main memory
 
Bernis Sagita - Manajemen Memory
Bernis Sagita - Manajemen MemoryBernis Sagita - Manajemen Memory
Bernis Sagita - Manajemen Memory
 
Zulyanti Megasari - Manajemen Memory
Zulyanti Megasari -  Manajemen MemoryZulyanti Megasari -  Manajemen Memory
Zulyanti Megasari - Manajemen Memory
 
Manajemen Memori
Manajemen MemoriManajemen Memori
Manajemen Memori
 
ini95_20230321085805_Modul-4_Proses.pptx
ini95_20230321085805_Modul-4_Proses.pptxini95_20230321085805_Modul-4_Proses.pptx
ini95_20230321085805_Modul-4_Proses.pptx
 
Kuliah iii struktur sistem operasi komputer
Kuliah iii struktur sistem operasi komputerKuliah iii struktur sistem operasi komputer
Kuliah iii struktur sistem operasi komputer
 
Modul 1 struktur sistem komputer
Modul 1   struktur sistem komputerModul 1   struktur sistem komputer
Modul 1 struktur sistem komputer
 
manajemen memori dan i/o
manajemen memori dan i/omanajemen memori dan i/o
manajemen memori dan i/o
 

Recently uploaded

MAteri:Penggunaan fungsi pada pemrograman c++
MAteri:Penggunaan fungsi pada pemrograman c++MAteri:Penggunaan fungsi pada pemrograman c++
MAteri:Penggunaan fungsi pada pemrograman c++FujiAdam
 
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptxMuhararAhmad
 
Manual Desain Perkerasan jalan 2017 FINAL.pptx
Manual Desain Perkerasan jalan 2017 FINAL.pptxManual Desain Perkerasan jalan 2017 FINAL.pptx
Manual Desain Perkerasan jalan 2017 FINAL.pptxRemigius1984
 
materi pengendalian proyek konstruksi.pptx
materi pengendalian proyek konstruksi.pptxmateri pengendalian proyek konstruksi.pptx
materi pengendalian proyek konstruksi.pptxsiswoST
 
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptxPembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptxmuhammadrizky331164
 
TEKNIS TES TULIS REKRUTMEN PAMSIMAS 2024.pdf
TEKNIS TES TULIS REKRUTMEN PAMSIMAS 2024.pdfTEKNIS TES TULIS REKRUTMEN PAMSIMAS 2024.pdf
TEKNIS TES TULIS REKRUTMEN PAMSIMAS 2024.pdfYogiCahyoPurnomo
 
Slide Transformasi dan Load Data Menggunakan Talend Open Studio
Slide Transformasi dan Load Data Menggunakan Talend Open StudioSlide Transformasi dan Load Data Menggunakan Talend Open Studio
Slide Transformasi dan Load Data Menggunakan Talend Open Studiossuser52d6bf
 
Strategi Pengembangan Agribisnis di Indonesia
Strategi Pengembangan Agribisnis di IndonesiaStrategi Pengembangan Agribisnis di Indonesia
Strategi Pengembangan Agribisnis di IndonesiaRenaYunita2
 

Recently uploaded (8)

MAteri:Penggunaan fungsi pada pemrograman c++
MAteri:Penggunaan fungsi pada pemrograman c++MAteri:Penggunaan fungsi pada pemrograman c++
MAteri:Penggunaan fungsi pada pemrograman c++
 
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
 
Manual Desain Perkerasan jalan 2017 FINAL.pptx
Manual Desain Perkerasan jalan 2017 FINAL.pptxManual Desain Perkerasan jalan 2017 FINAL.pptx
Manual Desain Perkerasan jalan 2017 FINAL.pptx
 
materi pengendalian proyek konstruksi.pptx
materi pengendalian proyek konstruksi.pptxmateri pengendalian proyek konstruksi.pptx
materi pengendalian proyek konstruksi.pptx
 
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptxPembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
 
TEKNIS TES TULIS REKRUTMEN PAMSIMAS 2024.pdf
TEKNIS TES TULIS REKRUTMEN PAMSIMAS 2024.pdfTEKNIS TES TULIS REKRUTMEN PAMSIMAS 2024.pdf
TEKNIS TES TULIS REKRUTMEN PAMSIMAS 2024.pdf
 
Slide Transformasi dan Load Data Menggunakan Talend Open Studio
Slide Transformasi dan Load Data Menggunakan Talend Open StudioSlide Transformasi dan Load Data Menggunakan Talend Open Studio
Slide Transformasi dan Load Data Menggunakan Talend Open Studio
 
Strategi Pengembangan Agribisnis di Indonesia
Strategi Pengembangan Agribisnis di IndonesiaStrategi Pengembangan Agribisnis di Indonesia
Strategi Pengembangan Agribisnis di Indonesia
 

OPTIMAL MEMORI

  • 1. Manajemen Memori 1 MANAJEMEN MEMORI 1. Konsep dasar memori - Konsep Binding - Dynamic Loading - Dynamic Linking - Overlay 2. Ruang Alamat Logika dan Fisik 3. Swapping 4. Pengalokasian Berurutan (Contiguous Allocation) 5. Pengalokasian Tidak Berurutan (Non Contiguous Allocation)
  • 2. Manajemen Memori 2 KONSEP DASAR • Memori sebagai tempat penyimpanan instruksi/ data dari program • Memori adalah pusat kegiatan pada sebuah komputer, karena setiap proses yang akan dijalankan, harus melalui memori terlebih dahulu • Untuk dapat dieksekusi, program harus dibawa ke memori dan menjadi suatu proses
  • 3. Manajemen Memori 3 KONSEP DASAR • Manajemen memori : – Melacak pemakaian memori (siapa dan berapa besar) – Memilih program mana yang akan diload ke memori – Alokasi dan dealokasi memori fisik untuk program/ proses-proses dalam menggunakan address space • Tugas Sistem Operasi : – Mengatur peletakan banyak proses pada suatu memori, memori harus dapat digunakan dengan baik  dapat memuat banyak proses dalam suatu waktu
  • 4. Manajemen Memori 4 KONSEP BINDING • Sebelum eksekusi, program berada di dalam disk, dan saat dieksekusi program tersebut perlu berada pada suatu lokasi dalam memori fisik • Address Binding adalah cara instruksi dan data (yang berada di disk sebagai file executable) dipetakan ke alamat memori • Alamat (address) pada source program umumnya merupakan alamat simbolik. Sebuah compiler biasanya membutuhkan “mengikat” (bind) alamat simbolik ke alamat relokasi
  • 5. Manajemen Memori 5 KONSEP BINDING • Address Binding dapat berlangsung dalam 3 tahap yang berbeda, yaitu : kompilasi, load atau eksekusi dari suatu program
  • 6. Manajemen Memori 6 • Bagaimana Sistem Operasi menempatkan program di memori : – Kompilasi dan Linking menerjemahkan semua simbol data berdasarkan alamat acuan absolut – Proses relokasi (proses mapping program  lokasi memori) • Jika program berada di memori, maka semua alamat lojik dalam program harus dikonversi ke alamat fisik. • Statis : relokasi alamat dilakukan sebelum program dijalankan • Dinamis : relokasi alamat dilakukan pada saat referensi setiap instruksi atau data
  • 7. Manajemen Memori 7 DYNAMIC LOADING • Dengan dynamic loading, suatu routine tidak diload sampai dipanggil. Semua routine disimpan pada disk sebagai format relocatable load • Mekanisme dasar : – Program utama diload dahulu dan dieksekusi – Bila suatu routine perlu memanggil routine yang lain, routine yang dipanggil lebih dahulu diperiksa apakah routine yang dipanggil sudah diload. Jika tidak, relocatable linking loader dipanggil untuk meload routine yang diminta ke memori dan mengupdate tabel alamat dari program yang mencerminkan perubahan ini.
  • 8. Manajemen Memori 8 DYNAMIC LINKING • Linking ditunda hingga waktu eksekusi • Program-program user tidak perlu menduplikasi system library – System library dipakai bersama – Mengurangi pemakaian space : satu rutin library di memori digunakan secara bersama oleh sekumpulan proses – Contoh : DLL Win32 • Mekanisme menggunakan stub (potongan kecil yang mengindikasikan bagaimana meload library jika routine tidak tersedia saat itu) – Saat stub dieksekusi, ia akan memeriksa apakah rutin ybs sudah berada di dalam memori(diakses oleh proses lain yang run), kalau belum ada maka rutin tersebut diload – Stub menempatkan dirinya pada alamat rutin dan mengeksekusi rutin tersebut
  • 9. Manajemen Memori 9 DYNAMIC LINKING • Dynamic Linking membutuhkan beberapa dukungan dari OS, misal : – Bila proses-proses di memori utama saling diproteksi, maka SO melakukan pengecekan apakah rutin yang diminta berada diluar alamat. – Beberapa proses diijinkan untuk mengakses memori pada alamat yang sama • File dynamic linking berekstensi .dll, .sys, .drv
  • 10. Manajemen Memori 10 OVERLAY • Hanya instruksi dan data yang diperlukan pada suatu waktu yang disimpan di memori • Overlay diperlukan jika ukuran proses lebih besar dari memori yang dialokasikan untuknya • Overlay tidak membutuhkan dukungan khusus dari SO – User dapat mengimplementasikan secara lengkap menggunakan struktur file sederhana – OS memberitahu hanya jika terdapat I/O yang melebihi biasanya
  • 11. Manajemen Memori 11 Ruang Alamat Logika dan Fisik • Alamat Logika adalah alamat yang digenerate oleh CPU, disebut juga Alamat Virtual • Alamat Fisik adalah alamat yang terdapat di memori • Perlu ada penerjemah (translasi) dari alamat logika ke alamat fisik • MMU (Memory Management Unit) adalah perangkat keras yang memetakan alamat logika ke alamat fisik
  • 12. Manajemen Memori 12 Ruang Alamat Logika dan Fisik • Dalam Skema MMU : – Menyediakan perangkat register yang dapat diset oleh CPU: setiap proses mempunyai data set register tersebut (disimpan di PCB) – Harga dalam register base/relokasi ditambahkan ke setiap alamat proses user pada saat run dimemori – Program-program user hanya berurusan dengan alamat logika saja
  • 13. Manajemen Memori 13 SWAPPING • Meskipun proses harus berada di memori untuk dieksekusi, tapi proses dapat di swap (tukar) sementara keluar memori ke backing store dan kemudian membawanya kembali ke memori untuk eksekusi lanjutan • Penukaran dapat terjadi pada lingkungan dengan multiprogramming dengan penjadwalan CPU Round Robin atau Priority. – Bila waktu kuantum habis atau proses yang datang mempunyai prioritas lebih tinggi, maka memory manager akan mulai swap out proses yang telah selesai atau proses yang yang prioritasnya lebih rendah dan swap in proses lainnya ke memori
  • 15. Manajemen Memori 15 SWAPPING • Pada umumnya sebuah proses yang di swap out akan menukar kembali ke ruang memori yang sama dengan sebelumnya • Penukaran membutuhan sebuah backing storage • Bila CPU Scheduler memutuskan untuk mengeksekusi proses, OS memanggil dispatcher – Dispatcher memeriksa untuk melihat apakah proses selanjutnya pada ready queue ada di memori – Jika tidak dan tidak terdapat cukup memori bebas, maka dispatcher swap out sebuah proses yang ada di memori dan swap in proses tersebut
  • 16. Manajemen Memori 16 Memori dan Proses • Monoprogramming hanya ada satu proses di memori dan sistem operasi • Multiprogramming  lebih dari satu proses siap di memori – Alokasi memori dengan partisi tetap untuk setiap proses – Alokasi memori dengan partisi beragam sesuai besarnya proses – Alokasi memori dibantu dengan disk (swap area), proses dapat berpindah dari memori ke disk – Virtual memori OS Progam User
  • 17. Manajemen Memori 17 PENGALOKASIAN MEMORI • Salah satu tanggung jawab Sistem Operasi adalah mengontrol akses ke sumber daya sistem. Salah satunya adalah memori • Pengalokasian memori dibagi 2 tipe, yaitu : – Pengalokasian berurutan (Contiguous Allocation) – Pengalokasian tidak berurutan (Non Contiguous Allocation)
  • 18. Manajemen Memori 18 CONTIGUOUS ALLOCATION • Pada Multiprogramming memori utama harus mengalokasikan tempat untuk sistem operasi dan beberapa user proses • Memori harus mengakomodasi baik OS dan proses user • Memori dibagi menjadi 2 partisi : – Untuk OS yang resident – Untuk Proses User • Ada 2 tipe Contiguos Allocation : – Single Partition (Partisi Tunggal) – Multiple Partition (Partisi Banyak)
  • 19. Manajemen Memori 19 CONTIGUOUS ALLOCATION • Single Partition (Partisi Tunggal) – Pada skema ini, diasumsikan OS ditempatkan di memori rendah, dan proses user dieksekusi di memori tinggi – Proteksi dapat dilakukan dengan dengan menggunakan register relokasi dan register limit • Register relokasi  berisi nilai dari alamat fisik terkecil • Register Limit  berisi jangkauan alamat logika • Alamat logika harus lebih kecil dari register limit
  • 20. Manajemen Memori 20 CONTIGUOUS ALLOCATION • Multiple Partition (Partisi Banyak) – Ruang kosong  blok memori yang tersedia, ruang kosong dengan berbagai ukuran tersebar pada memori – Proses akan dialokasikan memori pada ruang kosong yang cukup besar untuk ditempatinya – OS akan mengelola informasi mengenai : • Partisi yang dialokasikan • Partisi bebas (ruang kosong) – Contoh multiple allocation
  • 21. Manajemen Memori 21 CONTIGUOUS ALLOCATION • Multiple Partition (Partisi Banyak) – Ada 2 skema dalam Multiple Partition Allocation: • Partisi Fixed Size (MFT) – Memori dibagi menjadi beberapa blok dengan ukuran tertentu yang seragam – Setiap partisi berisi tepat 1 proses – Digunakan oleh IBM OS/360 yang disebut Multiprogramming with a Fixed number of Task (MFT) – Masalah yang muncul pada MFT : » Sifat Program dinamis (alokasi dan dealokasi) » Memori yang teralokasi mungkin lebih besar dari memori yang diminta, sehingga mengakibatkan fragmentasi internal
  • 22. Manajemen Memori 22 MULTIPLE PARTITION • Partisi variable Size (MVT) – Pembagian memori sesuai dengan request dari proses-proses yang ada – Peranan memori manajemen semakin penting : list dari partisi yang digunakan, free dll – Masalah pada MVT : » Terjadi fragmentasi external - Ruang memori free tapi tidak contiguous - Hole-hole ada diantara proses - Tidak dapat digunakan karena proses terlalu besar untuk menggunakannya
  • 23. Manajemen Memori 23 MULTIPLE PARTITION • Pada MVT OS akan menyimpan tabel yang berisi bagian memori yang tersedia dan yang digunakan: – Mula-mula,semua memori tersedia untuk proses user sebagai satu blok besar (large hole) – Bila proses datang dan memerlukan memori, dicari hole yang cukup untuk proses tersebut – Bila ditemukan, memory manager akan mengalokasikan sejumlah memori yang dibutuhkan dan menyimpan sisanya untuk permintaan berikutnya • Contoh : – Diasumsikan tersedia memori 2560 Kb dan untuk OS 400 Kb. Sisa 2160 Kb digunakan untuk user proses – Diasumsikan terdapat 5 job (P1 s/d P5) terdapat pada input queue. – Diasumsikan penjadwalan FCFS digunakan untuk load job ke memori. Penjadwalan CPU secara Round Robin (quantum time =1) untuk penjadwalan job yang sudah ada di memori
  • 24. Manajemen Memori 24 MULTIPLE PARTITION JOB QUEUE Proses Memori Time P1 P2 P3 P4 P5 600 K 1000 K 300 K 700 K 500 K 10 5 20 8 15 0 K 400 K 2560 K Operating System 2160 K
  • 25. Manajemen Memori 25 MULTIPLE PARTITION Menggunakan MVT, terdapat beberapa kali hole untuk ukuran berbeda – Bila proses datang dan memerlukan memori, dicari dari hole yang cukup untuk proses – Dynamic Storage Allocation dapat dilibatkan untuk memenuhi permintaan ukuran n dari hole bebas : » First Fit  alokasi hole yang pertama yang memenuhi permintaan » Best Fit  alokasi hole terkecil yang memenuhi permintaan Dalam stratagi ini memerlukan pencarian keseluruhan hole, kecuali bila ukuran sudah terurut » Worst Fit  alokasi hole terbesar. Strategi ini memerlukan pencarian keseluruhan hole, kecuali bila ukuran sudah terurut – Diantara algoritma diatas, first fit dan best fit lebih baik dibandingkan worst fit dalam hal menurunkan waktu dan utilitas penyimpanan. Dan First Fit lebih cepat
  • 26. Manajemen Memori 26 MULTIPLE PARTITION – Diantara algoritma diatas, first fit dan best fit lebih baik dibandingkan worst fit dalam hal menurunkan waktu dan utilitas penyimpanan. Dan First Fit lebih cepat
  • 27. Manajemen Memori 27 CONTIGUOUS ALLOCATION SISTEM BUDDY • Sistem Buddy merupakan cara mengelola memori utama dengan memanfaatkan kelebihan penggunaan bilangan biner (2k; k = 0,1,2 … ) • Contoh : – Suatu memori utama pada awalnya memiliki satu lubang besar berukuran 1 Mbyte.Jika suatu proses A berukuran 90 Kbyte memasuki memori, maka permintaan tersebut dialokasikan ke lokasi terdekat yaitu 128 kbyte, karena tidak ada, maka blok 1 Mbyte dipecah menjadi 2, masing- masing berukuran 512 kbyte
  • 28. Manajemen Memori 28 FRAGMENTASI EXTERNAL & INTERNAL • Fragmentasi external terjadi pada situasi dimana terdapat cukup ruang memori total untuk memenuhi permintaan, tetapi tidak dapat langsung dialokasikan karena tidak berurutan • Fragmentasi Internal terjadi pada situasi dimana memori yang dialokasikan lebih besar daripada memori yang diminta, sehingga terdapat sebagian memori untuk satu partisi tertentu yang tidak digunakan
  • 29. Manajemen Memori 29 FRAGMENTASI EXTERNAL & INTERNAL • Lubang-lubang kecil diantara blok-blok memori yang digunakan dapat diatasi dengan memori compaction • Memori Compaction adalah operasi menggabungkan semua lubang kecil menjadi satu lubang besar dengan memindahkan semua proses agar proses saling berdekatan
  • 30. Manajemen Memori 30 NON CONTIGUOS ALLOCATION • Paging – Paging adalah solusi untuk permasalahan fragmentasi external – Memori fisik dibagi ke dalam blok-blok ukuran tetap yang disebut “frame” – Memori logika dibagi ke dalam blok-blok dengan ukuran yang sama yang disebut “page” – Untuk menjalankan program berukuran n page, harus dicari frame kosong sebanyak n untuk meload program – Page table digunakan untuk translasikan alamat lojik ke alamat fisik
  • 31. Manajemen Memori 31 NON CONTIGUOUS ALLOCATION PAGING • Alamat yang dibangkitkan CPU dibagi menjadi : – Page number (p)  digunakan sebagai index ke page table. Page table berisi alamat basis dari setiap page pada memori fisik – Page Offset (d)  dikombinasikan dengan alamat basis untuk mendefinisikan alamat memori fisik yang dikirim ke unit memori • Skema translasi alamat
  • 32. Manajemen Memori 32 NON CONTIGUOUS ALLOCATION PAGING • Model Paging • Ukuran page atau frame ditentukan oleh hardware – Ukuran page merupakan bilangan 2 pangkat k mulai 512 sampai 8192 tergantung arsitektur komputer
  • 33. Manajemen Memori 33 NON CONTIGUOUS ALLOCATION SEGMENTASI • Segmentasi – Segmentasi adalah skema pengaturan memori yang mendukung user untuk melihat memori tersebut – Tiap-tiap segmen memiliki nama dan panjang. – Pandangan user mengenai memori:
  • 34. Manajemen Memori 34 NON CONTIGUOUS ALLOCATION SEGMENTASI • Segmentasi – Dukungan Hardware : • Pemetaan ke alamat fisik dilakukan dengan menggunakan tabel segmen, masing-masing berisi base dan limit