segmentasi dan kombinasi paging

advertisement
segmentasi dan kombinasi paging-segmentasi
Kelompok
Rujianto : 1057201000854
Arif Setiawan : 1057201000791
Muslikan : 1057201000859
Sistem Paging Adalah sistem manajemen pada sistem operasi dalam
mengatur program yang sedang berjalan. Program yang berjalan harus
dimuat di memori utama. Kendala yang terjadi apabila suatu program
lebih besar dibandingkan dengan memori utama yang tersedia.
Untuk mengatasi hal tersebut Sistem Paging mempunyai 2 solusi, yaitu:
- Konsep Overlay
Dimana program yang dijalankan dipecah menjadi beberapa bagian
yang dapat dimuat memori (overlay). Overlay yang belum diperlukan
pada saat program berjalan (tidak sedang di eksekusi) disimpan di disk,
dimana nantinya overlay tersebut akan dimuat ke memori begitu
diperlukan dalam eksekusinya.
- Konsep Memori Maya (virtual Memory)
Adalah kemampuan mengalamati ruang memori melebihi memori
utama yang tersedia. Konsep ini pertama kali dikemukakan
Fotheringham pada tahun 1961 untuk sistem komputer Atlas di
Universitas Manchester, Inggris.
A. Pengertian Memori Maya
Gagasan Memori Maya adalah ukuran gabungan program, data dan stack
melampaui jumlah memori fisik yang tersedia. Sistem operasi menyimpan
bagian-bagian proses yang sedang digunakan di memori utama dan sisanya
di disk. Begitu bagian di disk diperlukan maka bagian memori yang tidak
diperlukan disingkirkan dan diganti bagian disk yang diperlukan.
Didalam menejemen memori dengan system partisi statis dan system
dinamis sudah dapat menyelesaikan masalah menejemen memori didalam
banyak hal, tetapi masih memiliki kekurangan atau keterbatasan di dalam
pengakses. Dimana keterbatasan akses hanya sebatas addres memori yang
ada secara fisik ( memori nyata ).
Misalnya memori 64 MB maka addres maksimum yang dapat diakses
hanya sebesar 64 MB saja. Pada hal banyak program yang akan diakses
yang melebihi 64 MB. Untuk mengatasi hal tersebut agar kemampuan akses
lebih besar lagi maka dibentuklah memori maya ( yang pertama sekali di
kemukakan oleh Fotheringham pada tahun 1961 untuk system komputer
Atlas di Universitas Manchester, Inggris).
Dengan memori maya program yang besar tadi akan dapat diterapkan
pada memori kecil saja, misalnya program 500 MB dapat ditempatkan
secara maya di memori 64 MB. Untuk mengimplementasikan memori
maya tersebut dapat dilakukan dengan tiga cara :
1. Sistem Paging
2. Sistem Segmentasi
3. Sistem kombinasi Paging dan Segmentasi
B. Memori system Paging
Untuk menginplementasikan addres maya yang besar ke dalam
memori yang kecil diperlukan index register, base register, segment register
dan MMU ( Memory Menegement Unit ).
-Pemetaan Memori Sistem Paging
Sistem kinerja komputer akan menerjemahkan alamat maya menjadi
alamat fisik. Dengan kata lain dalam system memori maya alamat memori
tidak langsung di tuliskan ke BUS tetapi terlebih dahulu dimasukkan ke
MMU untuk diterjemahkan. Ada dua kemungkinan keluaran MMU yaitu :
1. Alamat yang dicari ada dimemori nyata, maka proses dapat langsung
dikerjakan.
2. Alamat yang dicari tidak ada didalam memori nyata, maka MMU
mengeluarkan page fault, yaitu permintaan alokasi memori untuk proses itu.
MMU mempunyai fungsi untuk memetakan memori maya ke memori
fisik. Apabila alamat memori yang dipetakan tidak tersedia di memori fisik,
MMU menertibkan exception page fault yang melewatkan ke system
operasi untuk menengani.
Apabila exception page fault meminta alokasi memori akan ditangani oleh
system operasi yaitu memilih partisi yang telah selesai diakses dan
kemungkinan proses ini akan digunakan lagi, dalam waktu yang lama lagi.
Jika sudah dipilih maka program akan dikosongkan dari memori dan
selanjutnya program yang alamatnya yang diminta akan dimasukkan ke
memori.
-Proses Pemetaan Pada MMU
Dibawah ini adalah suatu proses pemetaaan memori yang terjadi
pada MMU. Alamat maya terdiri dari bagian nomor page dan offset.
Alamat ini dicarikan didalam tabel page, bila ketemu maka MMU
mengeluarkan page frame ( register alamat fisik ).Register alamat fisik
terdiri dari nomor page dan offset, dimana nomor page frame lebih
sedikit dari nomor page.
Apabila alamat tersebut tidak ada pada tabel page maka MMU
mengeluarkan page fault.
C. Sistem Segmentasi
Secara sederhana segmentasi bisa diartikan sebagai suatu ruang
alamat atau segment yang berada di memori. Segment-segment itu
dalam keadaan independent. Setiap segment berisi alamat 0 sampai
maksimum secara linier. Panjang setiap segment berbeda-beda sampai
panjang maksimun, perobahan panjang segment terjadi selama proses
eksekusi.
Segment stack bertambah ketika terjadi operasi push dan turun
saat operasi pop, dimana setiap segment merupakan ruang alamat
terpisah segment-segment dapat tumbuh dan mengkerut secara bebas
tanpa mempengaruhi yang lain.
Alamat terdiri dari dua bagian pada memori bersegment yaitu :
1. Nomor segment
2. Alamat pada segment ( offset ).
Segment dapat berisi :
1. Prosedure
2. Array
3. Stack
4. Kumpulan variable skala.
Sistem dengan memori maya dengan segmentasi murni adalah
alamat maya adalah offset di segment, setiap proses mempunyai tabel
segment dan pada saat proses running alamat awal maya tabel
dimuatkan ke register dasar. Nomor segment digunakan mencari
deskriptor segment di tabel segment yang menyediakan alamat fisik
awal dari segment, panjang dan bit-bit proteksinya. Alamat fisik
dihitung dengan menambahkan alamat dasar segment ke alamat
maya.
Gambar 4. Skema Segmentasi
Keunggulan sistem ini dimana segment-segment tersebut saling
berhubungan dengan unit-unit program, sehingga segment – segment
indeal untuk proteksi dan pemakaian bersama.
Kelemahan sistem ini adalah dimana segment – segment berukuran
bervariasi menyebabkan fragmentasi eksternal dan sulit menyelesaikan
pertumbuhan dinamis. Segment-segment tidak memetakan blok-blok disk
untuk memori maya secara alami.
Teknik Kombinasi Paging Dan Segmentasi
Teknik kombinasi paging dan segmentasi adalah ruang alamat
pemakai dibagi menjadi sejumlah segment sesuai dengan kehendak
pemrogram. Segment tersebut dibagi menjadi sejumlah page berukuran
tetap dan berukuran sama dengan page frame memori utama. Jika segment
kurang dari ukuran page, maka segnent hanya memerlukan satu page.
Dari segi pandangan pemrogram, alamat maya masih berisi
nomor segment dan offset di segment itu. Dari segi pandangan sistem,
offset segment dipandang sebagai nomor page dan offset page untuk page
di segment yang dispesifiksikan. Penggabungan dengan proses adalah
tabel segment dan sejumlah tabel page, merupakan satu tabel persegment
proses.
Saat proses running, register menyimpan alamat awal tabel segment untuk
proses, pemroses menggunakan bagian nomor segment untuk mengindeks
tabel segment proses guna menemukan tabel page untuk segment. Bagian
angka page alamat maya digunakan untuk indeks tabel page dan mencari
nomor page korespondensi. Angka tersebut kemudian dikombinasikan
dengan bagian offset alamat maya untuk menghasilkan alamat nyata yang
diinginkan.
Download