Aok Swapping, Partitioning, Paging

  • Uploaded by: Elisa Kusumawardhani
  • 0
  • 0
  • February 2021
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Aok Swapping, Partitioning, Paging as PDF for free.

More details

  • Words: 3,400
  • Pages: 21
Loading documents preview...
Swap Sebuah proses, sebagaimana telah diterangkan di atas, harus berada di memori sebelum dieksekusi. Proses swapping menukarkan sebuah proses keluar dari memori untuk sementara waktu ke sebuah penyimpanan sementara dengan sebuah proses lain yang sedang membutuhkan sejumlah alokasi memori untuk dieksekusi. Tempat penyimpanan sementara ini biasanya berupa sebuah fast disk dengan kapasitas yang dapat menampung semua salinan dari semua gambaran memori serta menyediakan akses langsung ke gambaran tersebut. Jika eksekusi proses yang dikeluarkan tadi akan dilanjutkan beberapa saat kemudian, maka ia akan dibawa kembali ke memori dari tempat penyimpanan sementara tadi. Bagaimana sistem mengetahui proses mana saja yang akan dieksekusi? Hal ini dapat dilakukan dengan ready queue. Ready queue berisikan semua proses yang terletak baik di penyimpanan sementara maupun memori yang siap untuk dieksekusi. Ketika penjadwal CPU akan mengeksekusi sebuah proses, ia lalu memeriksa apakah proses bersangkutan sudah ada di memori ataukah masih berada dalam penyimpanan sementara. Jika proses tersebut belum berada di memori maka proses swapping akan dilakukan seperti yang telah dijelaskan di atas. Gambar 1.1. Proses Swapping

Monitor

Fence Address Swap - In

Swap - Out

Logical Memory

Page Table page number frame number

Swap-In

2

3

3

4

5

Swap-Out

0

2

1

2

Frame = Page = 2n = 25

1

0 1

Phiscal Memory

3 4

4

5

5 6

32

Pada teknik swapping,terbagi atas : 1.Swap-In Memasukan program dari logical ke physical memori (dari breaking storage ke memori). 2.Swap-Out Mengeluarkan program dari memori ke breaking storage karena sudah penuh. Sebuah contoh untuk menggambarkan teknik swapping ini adalah sebagai berikut:

Algoritma Round-Robin yang

digunakan

pada multiprogramming

environment menggunakan waktu kuantum (satuan waktu CPU) dalam pengeksekusian proses-prosesnya. Ketika waktu kuantum berakhir, memory manager akan mengeluarkan (swap out) proses yang telah selesai menjalani waktu kuantumnya pada suatu saat serta memasukkan (swap in) proses lain ke dalam memori yang telah bebas tersebut. Pada saat yang bersamaan penjadwal CPU akan mengalokasikan waktu untuk proses lain dalam memori. Hal yang menjadi perhatian adalah, waktu kuantum harus cukup lama sehingga waktu

penggunaan CPU dapat lebih optimal jika dibandingkan dengan proses penukaran yang terjadi antara memori dan disk. Teknik swapping roll out, roll in menggunakan algoritma berbasis prioritas dimana ketika proses dengan prioritas lebih tinggi tiba maka memory manager akan mengeluarkan proses dengan prioritas yang lebih rendah serta me-load proses dengan prioritas yang lebih tinggi tersebut. Saat proses dengan prioritas yang lebih tinggi telah selesai dieksekusi maka proses yang memiliki prioritas lebih rendah dapat dimasukkan kembali ke dalam memori dan kembali dieksekusi. Sebagian besar waktu swapping adalah waktu transfer. Sebagai contoh kita lihat ilustrasi berikut ini: sebuah proses pengguna memiliki ukuran 5 MB, sedangkan tempat penyimpanan sementara yang berupa harddiskmemiliki kecepatan transfer data sebesar 20 MB per detiknya. Maka waktu yang dibutuhkan untuk mentransfer proses sebesar 5 MB tersebut dari atau ke dalam memori adalah sebesar 5000 KB / 20000 KBps = 250 ms. Perhitungan di atas belum termasuk waktu latensi, sehingga jika kita asumsikan waktu latensi sebesar 2 ms maka waktu swap adalah sebesar 252 ms. Oleh karena terdapat dua kejadian dimana satu adalah proses pengeluaran sebuah proses dan satu lagi adalah proses pemasukan proses ke dalam memori, maka total waktu swap menjadi 252 + 252 = 504 ms. Agar teknik swapping dapat lebih efisien, sebaiknya proses-proses yang di- swap hanyalah proses-proses yang benar-benar dibutuhkan sehingga dapat mengurangi waktu swap. Oleh karena itulah, sistem harus selalu mengetahui perubahan apapun yang terjadi pada pemenuhan kebutuhan terhadap memori. Disinilah sebuah proses memerlukan fungsi system call, yaitu untuk

memberitahukan sistem operasi kapan ia meminta memori dan kapan membebaskan ruang memori tersebut. Jika kita hendak melakukan swap, ada beberapa hal yang harus diperhatikan. Kita harus menghindari menukar proses dengan M/K yang ditunda (asumsinya operasi M/K tersebut juga sedang mengantri di antrian karena peralatan M/Knya sedang sibuk). Contohnya seperti ini, jika proses P1dikeluarkan dari memori dan kita hendak memasukkan proses P2, maka operasi M/K yang juga berada di antrian akan mengambil jatah ruang memori yang dibebaskan P1 tersebut. Masalah ini dapat diatasi jika kita tidak melakukan swap dengan operasi M/K yang ditunda. Selain itu, pengeksekusian operasi M/K hendaknya dilakukan pada buffer sistem operasi. Tiap

sistem

teknik swapping yang

operasi

memiliki

digunakannya.

versi Sebagai

masing-masing contoh

pada pada

UNIX, swapping pada dasarnya tidak diaktifkan, namun akan dimulai jika banyak proses yang membutuhkan alokasi memori yang banyak. Swapping akan dinonaktifkan kembali jika jumlah proses yang dimasukkan berkurang. Pada sistem operasi Microsoft Windows 3.1, jika sebuah proses baru dimasukkan dan ternyata tidak ada cukup ruang di memori untuk menampungnya, proses yang lebih dulu ada di memori akan dipindahkan ke disk. Sistem operasi ini pada dasarnya tidak menerapkan teknik swapping secara penuh, hal ini disebabkan pengguna lebih berperan dalam menentukan proses mana yang akan ditukar daripada penjadwal CPU. Dengan ketentuan seperti ini proses-proses yang telah dikeluarkan tidak akan kembali lagi ke memori hingga pengguna memilih proses tersebut untuk dijalankan.

Partitioning Partitioning adalah teknik membagi memori menjadi beberapa bagian sesuai dengan kebutuhan. Sistem operasi akan menempati bagian memori yang tetap. Gambar 2.1. Proses Swapping

Ada dua cara dalam pempartisian, yaitu : 1. Pemartisian Statis Pemartisian Statis adalah pemartisian memori menjadi partisi tetap yang mana proses-proses akan ditempatkan pada memori yang telah dipartisi tersebut. Berdasarkan ukuran dibagi menjadi dua, yaitu : a. Pemartisian dengan partisi berukuran sama yaitu teknik pemartisian dengan cara pembagian memori dengan besar kapasitas yang sama semua. Namun kalemahannya adalah

 Bila program berukuran lebih besar dibanding partisi yang tersedia, maka tidak dapat dimuatkan dan dijalankan. Pemrogram harus mempersiapkan overlay. Overlay adalah program dipecah menjadi bagian-bagian yang dapat dimuat ke memori. Sehingga hanya bagian program yang benar-benar dieksekusi yang dimasukkan ke memori utama dan saling bergantian. Untuk overlay diperlukan sistem operasi yang mendukung swapping.  Bila program lebih kecil daripada ukuran partisi yang tersedia, maka akan ada ruang yang tak dipakai, yang disebut fragmentasi internal atau pemborosan memori. Kelemahan ini dapat dikurangi dengan membuat partisi tetap dengan ukuran yang berbeda. Fragmentasi adalah pemborosan memori yang terjadi pada setiap organisasi penyimpanan.  Fragmentasi internal : proses tidak mengisi penuh partisi yang telah ditetapkan untuk proses  Fragmentasi eksternal : partisi tidak dapat digunakan karena ukuran partisi lebih kecil dibanding ukuran proses yang menunggu di antrian. b. Pemartisian dengan partisi berukuran berbeda yaitu teknik pemartisian dengan cara pembagian memori dengan besar kapasitas yang berbeda-beda. 2. Pemartisian Dinamis Dengan menggunkan partisi statis menyebabkan memori terlalu banyak diboroskan dengan proses-proses yang lebih kecil dibanding partisi yang ditempatinya. Namun apabila menggunakanpartisi dinamis maka jumlah, lokasi, dan ukuran proses di memori dapat beragam sepanjang waktu secara dinamis. proses yang akan masuk ke memori segera dibuatkan partisi untuknya sesuai kebutuhannya. Teknik ini meningkatkan utilitas memori.

Kelemahan partisi dimanis adalah dapat terjadi lubang-lubang kecil memori di antara partisi-partisi yang dipakai merumitkan alokasi dan dealokasi memori.

PAGING 1. PENGERTIAN PAGING

Paging adalah suatu metode yang mengizinkan alamat logika proses untuk dipetakan ke alamat fisik memori yang tidak berurutan, yaitu sebagai solusi dari masalah fragmentasi ekstern. Metode dasar dari paging adalah dengan memecah memori fisik menjadi blok-blok yang berukuran tertentu (frame) dan memecah memori logika menjadi blok-blok yang berukuran sama (page). Penerjemahan alamat virtual ke alamat fisik dilakukan oleh page table melalui perantara Memory Management Unit (MMU). Paging menjamin keamanan data di memori saat suatu proses sedang berjalan. Proteksi memori dapat diterapkan pada sistem paging dengan meletakkan

bit

proteksi

pada

setiap

frame.

Setiap

sistem

operasi

mengimplementasikan paging dengan caranya masing-masing. Hierarchical paging dan hashed page table merupakan metode yang umum digunakan karena bisa menghemat ruang memori yang dibutuhkan. Hal-hal penting dalam Paging  Tidak ada fragmentasi eksternal  User melihat ruang memori sebagai suatukesatuan  Meningkatkan waktu context-switch  Kebanyakan dukungan paging terdapatpada hardware  Ukuran page: besar?kecil?

Ilustrasi konsep paging

Contoh Paging Sederhana

Keuntungan dan kerugian Paging adalah: 1.

Jika kita membuat ukuran dari masing-masing halaman menjadi lebih

besar. • Keuntungan. Akses memori akan relatif lebih cepat. • Kerugian. Kemungkinan terjadinya fragmentasi intern sangat besar. 2.

Jika kita membuat ukuran dari masing-masing halaman menjadi lebih

kecil. • Keuntungan. Kemungkinan terjadinya internal Framentasi akan menjadi lebih kecil.

• Kerugian. Akses memori akan relatif lebih lambat. Keuntungan lainnya dari paging adalah, konsep memori virtual bisa diterapkan dengan menuliskan halaman ke disk, dan pembacaan halaman dari disk ketika dibutuhkan. Hal ini dikarenakan jarangnya pengunaan kodekode dan data suatu program secara keseluruhan pada suatu waktu. Kerugian lainnya dari paging adalah, paging tidak bisa diterapkan untuk beberapa prosesor tua atau kecil (dalam keluarga Intel x86, sebagai contoh, hanya 80386 dan di atasnya yang punya MMU, yang bisa diterapkan paging). Hal ini dikarenakan paging membutuhkan MMU (Memory Management Unit). 2. SISTEM PAGING

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: a. 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. b. 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. 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.

A. Pengertian Memori Maya 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 :  Sistem Paging  Sistem Segmentasi  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 :



Alamat yang dicari ada dimemori nyata, maka proses dapat langsung dikerjakan.



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. Gambar memperlihatkan Implementasi pemetaan memori system paging.

Gambar 1. Implementasi Pemetaan Memori sistem paging 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 darei 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.

3. PERGANTIAN PAGE

Saat terjadi page fault berarti harus diputuskan page frame di memori fisik yang harus diganti. Jika page yang diganti akan kembali digunakan,maka page akan dikembalikan secepatnya yang berarti terjadi page fault berulang kali. Algoritma penggantian page antara lain ; 1. Algoritma penggantian page acak (random page replacement algorithm ) Dari segi mekanisme algoritma tersebut, setiap akan timbul page fault, page yang diganti dengan pilihan secara acak. Untuk segi tekniknya sendiri pun algoritma ini tidak usah perlu menggunakan informasi dalam menentukan page yang diganti, didalam memory utama itu sendiri sudah mempunyai bobot yang sama untuk dipilih, karena teknik ini dapat dipakai untuk memilih page sembarang. Termasuk page yang sudah dipilih dengan benar-benar / page yang tidak seharusnya diganti.

Contoh gambar dari Algoritma page acak

2. Algoritma penggantian page optimal Pengertian dari algoritma ini sendiri yaitu algoritma yang page nya paling optimal. Untuk prinsip dari algoritma ini sangat efisien sekali karena hanya mengganti halaman yang sudah tidak terpakai lagi dalam jangka waktu lama sehingga page fault yang terjadi akan berkurang dan terbebas dari anomali Belady Selain itu juga page fault dari algoritma ini memiliki rate paling tinggi dari algoritma lainnya dari semua kasus, akan tetapi tidak belum bias disebut sempurna karena sulit untuk di mengerti dan dari segi system pun belum tentu bisa mengetahui page untuk berikutnya tetapi dapat di simulasikan hanya untuk suatu program. Untuk intinya gunakanlah hingga mendekati page optimal agar bisa memanfaatkannya.

Contoh gambar dari Algoritma page optimal 3. Algoritma penggantian page NRU ( not recently used ) Untuk mekanisme dari algoritma ini diberi dua bit untuk mencatat status page, diantaranya bit M dan R yaitu : Bit M : Page yang telah dimodifikasi

Bit M = 0 berarti tidak dimodif Bit M = 1 berarti sudah dimodif Bit R : Page yang sedang dipacu / referenced Bit R = 1 berarti sedang di acu Bit R = 0 berarti tidak sedang di acu Adanya dua bit di atas maka akan dapat dikelompokkan menjadi 4 kelas page, yaitu : Kelas 0 => Tidak sedang di acu / belum di modif (R=0, M=0) Kelas 1 => Tidak sedang di acu / telah di modif (R=0, M=1) Kelas 2 => Sedang di acu / belum di modif (R=1, M=0) Kelas 3 => Sedang di acu / telah di modif (R=1, M=1) Jadi apabali algoritma ini diasumsikan kelas-kelas bernomor lebih rendah baru akan di gunakan kembali dalam relatif jangka waktu lama. Intinya algoritma ini mudah dipahami dan dikembangkan karena sangat efisien walaupun tak banyak langkah dalam pemilihan page dan kelemahannya juga tidak optimal tapi dalam kondisi normal yang memadai. 4. Algoritma penggantian page FIFO ( first in,first out )

Inti dari algoritma ini adalah simple / paling sederhana karena prinsipnya sama seperti prinsip antrian tak berprioritas. Page yang masuk terlebih dahulu maka yaitu yang akan keluar duluan juga. Untuk algoritma ini menggunakan structure data stack. Jadi kerjanya yaitu dimana kalau tidak ada frame yang kosong saat terjadi page fault maka korban yang dipilih adalah frame dengan stack paling bawah seperti hal nya halaman yang sudah lama tersimpan didalam memory maka dari itu algoritma ini juga bisa memindahkan page yang sering digunakan.

Contoh gambar dari Algoritma page FIFO Utamanya algoritma ini di anggap cukup mengatasi pergantian page sampai pada tahun 70-an, pada saat itu juga Belady menemukan keganjalan pada algoritma ini dan dikenal dengan anomali Belady. Anomali Belady itu sendiri ialah keadaan dimana page fault rate meningkat seiring dengan pertambahannya jumlah frame.

Contoh gambar dari Anomali Belady

5. Algoritma penggantian page modifikasi dari algoritma FIFO Algoritma

FIFO

murni

jarang

digunakan,

tetapi

dikombinasikan(modifikasi).Kelemahan FIFO yang jelas adalah algoritma dapat memilih memindahkan page yang sering digunakan yang lama berada di memori. Kemungkinan ini dapat dihindari dengan hanya memindahkan page

tidak diacu Page ditambah bit R mencatat apakah page diacu atau tidak. Bit R bernilai 1 bila diacu dan bernilai 0 bila tidak diacu. Variasi dari FIFO antara lain: - Algoritma penggantian page kesempatan kedua (second chance page replacement algorithm) -Algoritma penggantian clock page (clock page replacement algorithm) Algoritma yang pertama adalah algoritma second chance. Algoritma second chance berdasarkan pada algoritma FIFO yang disempurnakan. Algoritma ini menggunakan tambahan berupa reference bit yang nilainya 0 atau 1. Jika dalam FIFO menggunakan stack , maka second chance menggunakan circular queue . Halaman yang baru di-load atau baru digunakan akan diberikan nilai 1 pada reference bit-nya. Halaman yang reference bit-nya bernilai 1 tidak akan langsung diganti walaupun dia berada di antrian paling bawah (berbeda dengan FIFO). Urutan langkah kerja algoritma second chance adalah sebagai berikut: o

Apabila terjadi page fault dan tidak ada frame yang kosong, maka akan dilakukan razia (pencarian korban) halaman yang reference bit-nya bernilai 0 dimulai dari bawah antrian (seperti FIFO).

o

Setiap halaman yang tidak di- swap (karena reference bit-nya bernilai 1), setiap dilewati saat razia reference bit-nya akan diset menjadi 0.

Contoh gambar dari Algoritma page Modifikasi FIFO

6. Algoritma penggantian page LRU ( least recently used ) Dikarenakan

algoritma

optimal

sangat

sulit

dalam

pengimplementasiannya, maka dibuatlah algoritma lain yang performance-nya mendekati algoritma optimal dengan sedikit cost yang lebih besar. ama seperti algoritma optimal, algoritma LRU tidak mengalami anomali Belady. Algoritma ini memakai linked list untuk mendata halaman mana yang paling lama tidak terpakai. Linked list inilah yang membuat cost membesar, karena harus mengupdate linked list tiap saat ada halaman yang di akses.

Contoh gambar dari Algoritma page LRU 5. MASALAH-MASALAH UTAMA DALAM SISTEM PAGING

1.

Working set model.

2.

Kebijaksanaan penggantian lokal vs global.

3.

Frekuensi page fault.

4.

Ukuran page a. Working set model Prinsip lokalitas Prinsip lokalitas adalah proses-proses cenderung mengacu menyimpan

secara tak seragam,mempunyai pola-pola sangat setempat.

Terdapat dua jenis lokalitas,yaitu :  Lokalitas berdasar waktu ( temporal locality )  Lokalitas menurut ruang ( spatial locality ) Working set model of program behavior Himpunan kerja secara informal didefinisikan sebagai kumpulan page proses yang secara aktif diacu. Danning menyatakan bahwea agar suatu program berjalan secara efisien,himpunan kerja harus dijaga berada dimemori utama. Selain itu akan terjadi aktifitas page fault yang berlebihan. Prinsip-prinsip working set model Prinsip yang digunakan adalah melacak dan menjamin himpunan kerja yang tedapat di memori sebelum proses dijalankan. Kebijaksanaan penggantian lokal vs global Terdapat dua cara pendekatan untuk mengganti page,yaitu; 

Penggantian page lokal adalah page yang dipilih untuk diganti hanya pada partisi dimana proses diletakkan.



Penggantian global adalah page yang dipilih untuk diganti adalah tempat kosong dengan tidak mempedulikan partisi proses. Dengan penggantian global,page fault satu proses dapat dilayani dengan memindahkan page yang dimiliki proses lain. Frekunsi page fault Untuk satu kelas besar algoritma penggantian page diketahui frekuensi page fault menurun begitu page memori fisik lebih banyak. Bila proses melampaui ambang atas frekunsi page fault maka dialokasikan page memori fisik untuk proses itu lebih banyak. Ukuran page Ukuran page ditentukan perancang sistem operasi. Ukuran page harus ditentukan agar sistem berkelakuan optimal. Penentuan ukuran page

memerlukan penilaian pemahaman mendalam perangkat keras,perngkat lunak,dan aplikasi sistem. 5. MASALAH-MASALAH IMPLEMENTASI SISTEM PAGING : Perancang sistem paging berurusan beragam implementasi sistem paging,antara lain; 1.

Backup instruksi yang terakhir dijalankan sebelum terjadi page

fault. Bila terjadi page fault berarti sebagian instruksi telah dijalankan. Pengkopian program counter dan informasi register-register pemroses harus dilakukan. Setelah penggantian page selesai maka instruksi yang menyebabkan page fault dapat dijalankan kembali dengan konteksnya. Masalah yang harus diatasi adalah untuk mengulangi instruksi,sistem harus menentukan byte pertama instruksi. 2.

Buffer perangkat masukan/keluaran (penguncian page di memori). Penggantian page akan menimbulkan masalah mengacaukan proses yang

melakukan operasi masukan/keluaran jika: • Buffer perangkat masukan/keluaran ikut tergusur. • Adanya Buffer satu perangkat masukan/keluaran menjadi rangkap. 3.

Page yang dipakai bersama. Bila beberapa pemakai menggunakan program yang sama maka terjadi

perangkapan page (page yang sama terdapat dibanyak dibagian memori). Lebih efisien bila menggunakan page secara bersama,menghindari keharusan mompunyai copyan-copyan page yang sama disaat yang sama. 4.

Backing store. Masalah lain adalah menyangkut dimana diletakkan page yang keluar

dari memosi utama. Terdapat beragam algoritma untuk mengatasi hal ini yaitu: • Menggunakan ruang penggantian khusus. • Dialokasikan berdasarkan kebutuhan.

5.

Paging daemons. Paging bekerja bagus saat terdapat banyak page frame bebas yang dapat

diklaim begitu page fault terjadi. Jika setiap page frame penuh dan telah dimodifikasi,sebelum page baru dimasukan,page lama harus ditulis lebih dulu ke disk. Untuk menjamin suplai page frame yang banyak,sistem paging biasanya mempunyai proses background yang disebut page daemons. 6.

Penanganan page fault (page fault handling) Implementasi sistem paging harus mengatasi rincian-rincian aksi yang

harus dilakukan saat terjadi page fault.

Related Documents


More Documents from "Nicks Magic"