m8 - manajemen memori (1) - gunadarmayusman.staff.gunadarma.ac.id/downloads/files/42465... ·...

34
1

Upload: others

Post on 02-Jun-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

1

Page 2: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

2

Manajemen Memori

Memori utama harus diatur sebaik mungkin agar :

meningkatkan utilitas CPU yang sebesar-besarnya

data dan instruksi dapat diakses dengan cepat olehCPU

memori utama memiliki kapasitas yang sangatterbatas, sehingga pemakaiannya harus seefisienmungkin

transfer data dari/ke memori utama ke/dari CPUdapat efisien.

Page 3: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

3

Manajemen Memori

Manajemen memori berkaitan dengan memoriutama sebagai sumber daya yang harusdialokasikan dan dipakai bersama diantarasejumlah proses yang aktif.

Manajemen memori juga berkaitan denganusaha agar pemrogram atau pemroses tidakdibatasi oleh kapasitas memori fisik yangterdapat pada sistem komputer.

Page 4: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

4

Fungsi Manajemen Memori

mengelola informasi memori yang terpakaidan yang tidak terpakai

mengalokasikan memori ke proses yangmemerlukan

mendealokasikan memori dari proses telahselesai

mengelola swapping antara memori utamadan disk

Page 5: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

5

Swapping

Suatu proses dapat dialihkan sementara darimemori ke suatu tempat penyimpanan dandipanggil kembali ke memori jika akanmelanjutkan eksekusi.

Manajemen memori berdasarkan keberadaanswapping :

manajemen tanpa swapping

manajemen dengan swapping

Page 6: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

6

Monoprogramming Merupakan manajemen memori paling sederhana. Sistem komputer

hanya mengijinkan 1 program/pemakai berjalan pada 1 waktu.

Semua sumber daya sepenuhnya dikuasai proses yang sedangberjalan.

Ciri-ciri manajemen memori monoprogramming :

hanya 1 proses pada 1 saat

hanya 1 proses menggunakan semua memori

pemakai memuatkan program ke seluruh memori dari disk/ tape

program mengambil kendali seluruh mesin

Karena hanya terdapat 1 proses dan menguasai seluruh sistemmaka alokasi memori dilakukan secara berurutan.

Page 7: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

7

Monoprogramming

Page 8: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

8

Multiprogramming denganPemartisian Statis

Multiprogramming = banyak proses pada memori utama padasaat bersamaan.

Alasan menggunakan multiprogramming :

mempermudah pemrogram karena pemrogram dapatmemecah program menjadi 2 proses/lebih

agar dapat memberi layanan interaktif ke beberapaorang secara simultan

efisiensi penggunaan sumber daya

eksekusi lebih murah jika proses besar dipecahmenjadi beberapa proses kecil

dapat mengerjakan sejumlah job secara simultan

Page 9: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

9

Partisi Statis

memori dibagi menjadi sejumlah partisi tetap.Pada partisi tersebut proses-proses ditempatkan.

Berdasarkan ukurannya, dibagi 2 :

Pemartisian dengan partisi berukuran sama(Ukuran semua partisi memori adalah sama.Beberapa proses yang ukurannya kurang/samadengan ukuran partisi dimasukkan ke sembarangpartisi yang tersedia. )

Pemartisian dengan partisi berukuran berbeda (ukuran semua partisi memori berbeda )

Page 10: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

10

Pemartisian dengan PartisiBerukuran Sama

Kelemahan :

Bila program berukuran lebih besar dibanding partisi yang tersedia,maka tidak dapat dimuatkan dan dijalankan. Pemrogram harusmempersiapkan overlay. Overlay adalah program dipecah menjadibagian-bagian yang dapat dimuat ke memori. Sehingga hanyabagian program yang benar-benar dieksekusi yang dimasukkan kememori utama dan saling bergantian. Untuk overlay diperlukansistem operasi yang mendukung swapping.

Bila program lebih kecil daripada ukuran partisi yang tersedia, makaakan ada ruang yang tak dipakai, yang disebut fragmentasi internal→ pemborosan memori. Kelemahan ini dapat dikurangi denganmembuat partisi tetap dengan ukuran yang berbeda.

Page 11: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

11

Pemartisian dengan PartisiBerukuran Sama

Page 12: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

12

Pemartisian dengan PartisiBerukuran Berbeda

Page 13: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

13

Fragmentasi Pada Partisi Statis

Fragmentasi = penyiaan/pemborosan memoriyang terjadi pada setiap organisasipenyimpanan.

Fragmentasi internal : proses tidak mengisipenuh partisi yang telah ditetapkan untukproses

Fragmentasi eksternal : partisi tidak dapatdigunakan karena ukuran partisi lebih kecildibanding ukuran proses yang menunggu diantrian.

Page 14: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

14

Partisi Dinamis partisi statis menyebabkan memori terlalu banyak diboroskan

dengan proses-proses yang lebih kecil dibanding partisi yangditempatinya.

Dengan partisi dinamis maka jumlah, lokasi, dan ukuran prosesdi memori dapat beragam sepanjang waktu secara dinamis.proses yang akan masuk ke memori segera dibuatkan partisiuntuknya sesuai kebutuhannya. Teknik ini meningkatkanutilitas memori.

Kelemahan :

dapat terjadi lubang-lubang kecil memori di antarapartisi-partisi yang dipakai

merumitkan alokasi dan dealokasi memori

Page 15: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

15

Contoh

Page 16: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

16

Contoh

Setelah proses 3 berakhir memori dipenuhilubang-lubang memori yang tidak terpakai.

Dapat diatasi dengan cara pemadatanmemori (memory compaction) yaitu operasipenggabungan semua lubang kecil menjadilubang besar dengan memindahkan semuaproses agar saling berdekatan.

Page 17: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

17

Contoh

Contoh diatas setelah pemadatan memori :

Kelemahan pemadatan memori:- memerlukan waktu yangsangat banyak- sistem harus menghentikansementara semuaproses saat pemadatan,sehingga mengakibatkanmeningkatnya waktu tanggap

Page 18: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

18

Partisi Dinamis

Masalah lain pada partisi dinamis adalahproses dapat tumbuh berkembang. Solusinyaadalah bila proses bersebelahan denganlubang memori tak dipakai, proses tumbuhmemakai lubang itu.

Masalah menjadi lebih parah bila prosesbersebelahan dengan proses-proses lain.

Page 19: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

19

Partisi Dinamis

Alternatif penyelesaian :

bila masih terdapat lubang besar yangdapat memuat proses, maka prosesdipindah ke lubang memori yang dapatmemuat

1 proses atau lebih diswap ke disk agarmemberi lubang cukup besar untuk prosesyang berkembang

jika proses tidak dapat tumbuh di memoridan daerah swap di disk telah penuh,prosesharus menunggu/disingkirkan.

Page 20: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

20

Strategi Alokasi Memori

• Alokasi harus mencari sekumpulan blokmemori yang ukurannya mencukupi untukmemuat proses,dimana lubang kosong yangsama atau lebih besar dibanding ukuranmemori yang diperlukan oleh proses.

• Ada beberapa strategi alokasi memori

Page 21: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

21

Algoritma First Fit

• Pencarian dimulai dari awal dan akanberhenti jika ditemukan lokasi pertama yangcukup besar untuk menempatkan prosestersebut.

• Contoh :

• terdapat partisi kosong pada memori denganurutan dan ukuran : 4 Kb, 3 Kb, 2 Kb, 6 Kb

• bila datang data yang berukuran 3 Kb makaakan menempati partisi ukuran 4 Kb

Page 22: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

22

Algoritma Next-fit

• Sama dengan first-fit hanya saja pencarian tidak dimulai dariawal, tapi dari lokasi terakhir kali menemukan segmen yangcocok dan akan berhenti jika ditemukan lokasi pertama yangcukup besar untuk menempatkan proses tersebut

• Contoh :

• terdapat partisi pada memori dengan urutan dan ukuran : 4Kb, 3 Kb, 2 Kb, 6 Kb

• bila datang data yang berukuran 3 Kb dan pencarian partisidimulai dari urutan ketiga karena sebelumnya posisi terakhirpencarian di partisi kedua, maka data tersebut akanmenempati partisi ukuran 6 Kb.

Page 23: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

23

Algoritma Best Fit

• Pencarian dimulai dari awal dan akanberhenti jika ditemukan lokasi terkecilpertama yang cukup untuk menempatkanproses tersebut.

• Contoh :

• terdapat partisi kosong pada memori denganurutan dan ukuran : 4 Kb, 3 Kb, 2 Kb, 6 Kb

• bila datang data yang berukuran 3 Kb makaakan menempati partisi ukuran 3 Kb.

Page 24: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

24

Algoritma Worst-fit

• Pencarian dimulai dari awal dan akanberhenti jika ditemukan lokasi yang palingbesar yang cukup untuk menempatkanproses tersebut.

• Contoh :

• terdapat partisi kosong pada memori denganurutan dan ukuran : 4 Kb, 3 Kb, 2 Kb, 6 Kb

• bila datang data yang berukuran 3 Kb makaakan menempati partisi ukuran 6 Kb.

Page 25: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

25

Sistem Buddy

• Mengalokasikan memori berdasarkankelipatan 2 (2k; k = 0,1,2, ...).

• Pada sistem buddy, semula semua ruangpada memori kerja didefinisikan sebagaisatu kesatuan utuh. Bagian ini baru dibelahapabila ada data yang menempati ruangtersebut. Sistem pembelahan sesuai denganpangkat bilangan biner, yaitu : 20, 21,22,23,...

Page 26: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

26

Sistem Buddy

• Tentukan batas atas (u) dan batas bawah (l)

• Contoh : memori berukuran 2000k, batasatasnya (u) dari k adalah 20 karena 220 adalah1024, sisa 976k akan dialokasikan pada blokyang lebih kecil. Batas bawah umumnya bisaantara 12-16, jika terlalu kecil akanmembebani system karena harus mengingatterlalu banyak block yg dialokasikan dan ygtidak, misalkan batas bawahnya adalah 16 jadi216 = 64k

Page 27: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

27

Sistem BuddyContoh :

1=Program A meminta 34k

2=Program B meminta 66k

3=Program C meminta 35k

4=Program D meminta 67k

5=Program C melepaskan memori

6=Program A melepaskan memori

7=Program B melepaskan memori

8=Program D melepaskan memori

Page 28: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

28

Sistem BuddyLangkah-langkah :

• Memori akan dialokasikan :

• Cari slot memori yang cukup (blok minimal 2k yanglebih besar atau sama dengan memori yang diminta)

• Jika ditemukan, alokasikan ke program

• Jika tidak, bagi slot memori yang bebas menjadi 2

• Memori dibebaskan :

• Jika slot di sebelahnya juga kosong, maka gabungkan

Page 29: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

29

Page 30: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

30

Virtual Memory dan Overlay

• Program yang dijalankan harus dimuat dimemori utama. Masalah muncul ketikaprogram lebih besar dibanding memoriutama yang tersedia. Solusinya :

– Overlay

– Memori maya (virtual memory)

Page 31: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

31

Overlay

• program dipecah menjadi bagian-bagianyang dapat dimuat memori.

• Overlay yang belum diperlukan (tidaksedang dieksekusi) disimpan di disk.Overlay ini dimuatkan ke memori begitudiperlukan.

Page 32: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

32

Memori Maya (virtual memory)

• Adalah kemampuan mengalamati ruang memori melebihimemori utama yang tersedia.

• Gagasan memori maya adalah ukuran gabunganprogram, data dan stack melampaui jumlah memori fisikyang tersedia.

• Sistem operasi menyimpan bagian-bagian proses yangsedang digunakan di memori utama dan sisanya di disk.

• Bagian-bagian di disk diperlukan maka bagian memoriyang tidak diperlukan disingkirkan diganti bagian di diskyang diperlukan itu.

Page 33: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

33

Memory Maya (virtual memory)

• Contoh :

• Program 10 Mbyte dapat berjalan di mesin 2Mbyte, yaitu memilih bagian proses sebesar2 Mbyte secara hati-hati dan ditaruh dimemori.

• Bagian-bagian proses di-swap antara diskdan memori saat diperlukan secara otomatisoleh sistem operasi.

Page 34: M8 - Manajemen Memori (1) - Gunadarmayusman.staff.gunadarma.ac.id/Downloads/files/42465... · Partisi Statis memori dibagi menjadi sejumlah partisi tetap. Pada partisi tersebut proses-proses

34

Memori Maya (virtual memory)

• Memori maya dapat dilakukan dengan 2cara yaitu :

– paging

– segmentasi