SlideShare a Scribd company logo
ALLOCATION OF
FRAMES IN OPERATING
SYSTEM
An important aspect of operating systems, virtual memory is implemented using
demand paging. Demand paging necessitates the development of a page-
replacement algorithm and a frame allocation algorithm. Frame allocation algorithms
are used if you have multiple processes; it helps decide how many frames to allocate
to each process.
There are various constraints to the strategies for the allocation of frames:
• You cannot allocate more than the total number of available frames.
• At least a minimum number of frames should be allocated to each process. This
constraint is supported by two reasons. The first reason is, as less number of
frames are allocated, there is an increase in the page fault ratio, decreasing the
performance of the execution of the process. Secondly, there should be enough
frames to hold all the different pages that any single instruction can reference.
• Frame allocation algorithms –
The two algorithms commonly used to allocate frames to a process are:
1. Equal allocation: In a system with x frames and y processes, each process gets equal
number of frames, i.e. x/y. For instance, if the system has 48 frames and 9 processes, each
process will get 5 frames. The three frames which are not allocated to any process can be
used as a free-frame buffer pool.
• Disadvantage: In systems with processes of varying sizes, it does not make much sense to
give each process equal frames. Allocation of a large number of frames to a small process
will eventually lead to the wastage of a large number of allocated unused frames.
2. Proportional allocation: Frames are allocated to each process according to the process
size.
For a process pi of size si, the number of allocated frames is ai = (si/S)*m, where S is the sum
of the sizes of all the processes and m is the number of frames in the system. For instance, in
a system with 62 frames, if there is a process of 10KB and another process of 127KB, then the
first process will be allocated (10/137)*62 = 4 frames and the other process will get
(127/137)*62 = 57 frames.
• Advantage: All the processes share the available frames according to their needs, rather
than equally.
• Global vs Local Allocation –
The number of frames allocated to a process can also dynamically change depending on
whether you have used global replacement or local replacement for replacing pages in
case of a page fault.
• Local replacement: When a process needs a page which is not in the memory, it can bring
in the new page and allocate it a frame from its own set of allocated frames only.
• Advantage: The pages in memory for a particular process and the page fault ratio is
affected by the paging behavior of only that process.
• Disadvantage: A low priority process may hinder a high priority process by not making its
frames available to the high priority process.
• Global replacement: When a process needs a page which is not in the memory, it can bring
in the new page and allocate it a frame from the set of all frames, even if that frame is
currently allocated to some other process; that is, one process can take a frame from
another.
• Advantage: Does not hinder the performance of processes and hence results in greater
system throughput.
• Disadvantage: The page fault ratio of a process can not be solely controlled by the process
itself. The pages in memory for a process depends on the paging behavior of other
processes as well.
• Masalah dan Penjelasan Alokasi Frame
• Masalah dalam alokasi frame dalam penggunaan memori virtual yaitu bagaimana kita membagi
memori yang bebas kepada berbagai proses yang sedang dikerjakan? Jika ada sejumlah frame
bebas dan ada dua proses, berapakah frame yang didapatkan tiap proses ?
• Kasus paling mudah dari memori virtual adalah sistem satu pemakai. Misalkan sebuah sistem
mempunyai memori 128K dengan ukuran halaman 1K, sehingga ada 128 frame. Sistem operasinya
menggunakan 35K sehingga ada 93 frame yang tersisa untuk proses tiap user.
• Sistem operasi untuk mengalokasikan seluruh buffer dan ruang tabel-nya dari daftar frame bebas.
Ruang ini bisa digunakan untuk mendukung paging dari user. Kita juga dapat menyimpan tiga frame
bebas yang dari daftar frame bebas, sehingga ketika terjadi page fault, ada frame bebas yang dapat
digunakan untuk paging.
• Masalah lain muncul ketika demand paging dikombinasikan dengan multiprogramming. Hal ini terjadi
karena multiprogramming menaruh dua (atau lebih) proses di memori pada waktu yang bersamaan.
Jumlah Frame Minimum
Kita tidak dapat mengalokasikan lebih dari jumlah total frame yang tersedia kecuali ada page sharing. Ada
juga jumlah minimal frame yang dapat di alokasikan. Seiring dengan bertambahnya jumlah frame yang
dialokasikan ke setiap proses berkurang, tingkat page fault bertambah dan mengurangi kecepatan
eksekusi proses.
Jumlah minimum frame yang harus dialokasikan. Jumlah minimum ini ditentukan oleh arsitektur set
instruksi. Ingat bahwa ketika terjadi page fault, sebelum eksekusi instruksi selesai, instruksi tersebut harus
diulang. Sehingga kita harus punya jumlah frame yang cukup untuk menampung semua halaman yang
dirujuk oleh sebuah instruksi tunggal.
Jumlah minimum frame ditentukan oleh arsitektur komputer. Sebagai contoh, instruksi move pada PDP-11
adalah lebih dari satu kata untuk beberapa modus pengalamatan, sehingga instruksi tersebut bisa
membutuhkan dua halaman. Sebagai tambahan, tiap operannya mungkin merujuk tidak langsung,
sehingga total ada enam frame. instruksi ini butuh 6 bit dan dapat memakai dua halaman. Satu blok
karakter juga dapat memakai dua halaman, sehingga situasi ini membutuhkan enam frame.
Kesimpulannya, jumlah minimum frame yang dibutuhkan per proses tergantung dari arsitektur komputer
tersebut, sementara jumlah maksimumnya ditentukan oleh jumlah memori fisik yang tersedia. Di antara
kedua jumlah tersebut, kita punya pilihan yang besar untuk alokasi frame.
• 3 Definisi Alokasi Frame
– Pengalokasian tiap-tiap proses bervariasi tergantung pada tingkat multiprogramming
– Jika tingkat multiprogramming nya semakin tinggi, maka proses akan kehilangan
beberapa frame
– Sebaliknya jika tingkat multiprogramming berkurang, maka proses akan mendapat
frame melebihi dari yang dibutuhkan.
Ada 3 jenis Alokasi Frame atau Allocation of Frames (Fixed andPriority Allocations)
Jenis Alokasi Frame :
– Alokasi sama rata (equal allocation) ->Tiap proses mendapat jumlah frame sama
banyak
– Alokasi proporsional (proporsional allocation) -> Tiap proses mendapat jumlah frame
sesuai dengan besarnya image proses itu.
– Alokasi berprioritas (priority allocation) ->Jumlah frame yang dialokasikan untuk tiap
proses berdasarkan prioritas.
 Contoh Implementasi dari global replacement
 Berikut adalah grafik ilustrasinya
 Os akan memonitor rate page fault untuk setiap proses dan akan ada proses penentuan jika ada
terlalu banyak frame atau tidak cukup frame untuk dialokasikan. Sebagai tambahan frame yang
bebas alias tidak terpakai dapat dialokasikan dari daftar list frame-bebas atau dihilangkan/dihapus
dari proses yang terlalu banyak pages nya .
 Jika list free-frames nya kosong maka dan tidak proses yang memiliki kaitan langsung dengan free-
frame maka proses dapat di swap out
 b) Model Pengaturan Kerja – cara ini mengunakan referensi dari yang sudah ada sebelumnya tau past
reference dari suatu proses untuk menentukan kumpulan halaman kerja yang harus disimpan dalam
memori utama. OS memiliki parameter integer (mis. 10.000) yang merupakan ukuran jendela
pengaturan kerja. Jendela pengaturan kerja terdiri dari referensi terakhir. Set kerja untuk program
terdiri dari set halaman yang telah menjadi referensi di jendela set kerja. Berikut adalah contoh
skeamnya
 Penjelasan :
 OS mengalokasikan cukup frame halaman untuk setiap proses untuk menahan set kerjanya saat ini.
Jika jumlah semua kardinalitas semua set kerja untuk proses yang dimuat melebihi jumlah bingkai
fisik, maka OS dapat menukar proses. Kemudian ketika proses ditukar kembali ke memori, set
halaman kerjanya dapat dimuat kembali ke memori utama. Dengan demikian, mengurangi kesalahan
halaman saat proses dimulai kembali dengan menyiapkan set kerja.
 Masalah:
 1) Pilihan D - Apa yang terjadi jika terlalu kecil atau besar ???
 2) Bagaimana model work-set diimplementasikan secara efisien?
 implementasi Working-Set Model - gunakan R-bit dan histori bit pada entri Table Page untuk
memperkirakan set kerja. Misalnya, jika D = 9000, kami dapat menghentikan proses setiap 1.000
referensi dan menggeser bit-R ke dalam bit riwayat entri tabel halaman terkait. Kemudian bersihkan
R-bit dan ulangi. Bagaimana bit sejarah dapat digunakan?
 Pada penghenti waktu jika R-bit saat ini dan 8 bit riwayat sebelumnya semuanya nol, maka halaman
tersebut tidak dalam set yang berfungsi. Jika salah satunya adalah 1, maka halaman tersebut masih
dalam set yang berfungsi.
 Masalah Paging lainnya
Ukuran halaman - sering ditentukan oleh perangkat keras, tetapi terkadang beberapa halaman ukuran tersedia
oleh perangkat keras (mis., prosesor Intel Pentium - ukuran 4K byte atau 4M byte)
Keuntungan dari halaman yang lebih kecil - lebih sedikit fragmentasi internal karena rata-rata ½ dari halaman
terakhir terbuang
Kerugian dari halaman yang lebih kecil
1) tabel halaman lebih besar untuk ukuran memori virtual yang sama
mis., memori virtual 4GB, halaman 4KB, dan entri tabel-halaman 4 byte 4MB untuk tabel halaman
Jika ukuran halaman adalah 4MB, maka hanya 4KB yang cukup untuk menampung tabel halaman.
2) lebih rendah tingkat kesalahan halaman - halaman yang lebih besar berarti lebih sedikit kesalahan halaman.
Bagaimana dengan waktu untuk menangani kesalahan halaman untuk halaman yang lebih besar vs halaman
yang lebih kecil?
Hampir sama! (mencari waktu, penundaan rotasi tidak berubah, hanya sedikit waktu transfer lagi)
Single user system:
 Kernel occupies M frames + some frames for dynamic data structures Remaining frames are put on
free list for use by a user process
Multiprogramming:
 Minimum # of frames to be allocated to a process: maximum number of memory references
permitted in a single instruction Example: PDP-11 MOV instruction instruction may occupy > 1 word
2 operands each of which can be an indirect reference if fewer frames are allocated, process should
be swapped out, and allocated frames freed

More Related Content

Similar to alocation of frame in OS_rev.pptx

Implementasi virtual memory di windows 10 sistem operasi 4 reg a
Implementasi virtual memory di windows 10 sistem operasi 4 reg aImplementasi virtual memory di windows 10 sistem operasi 4 reg a
Implementasi virtual memory di windows 10 sistem operasi 4 reg a
Farras Muhammad
 
Memory
MemoryMemory
7.manajemen memory
7.manajemen memory7.manajemen memory
7.manajemen memory
nasib silaban
 
Operating System--Memory
Operating System--MemoryOperating System--Memory
Operating System--MemoryEverhythm Past
 
Anggun Fatria - Manajemen Proses
Anggun Fatria - Manajemen ProsesAnggun Fatria - Manajemen Proses
Anggun Fatria - Manajemen Proses
belajarkomputer
 
Sistem operasi pada komputer di perkuliahan.pptx
Sistem operasi pada komputer di perkuliahan.pptxSistem operasi pada komputer di perkuliahan.pptx
Sistem operasi pada komputer di perkuliahan.pptx
donisaputra4226
 
Bab 7 memory lanjutan pdf
Bab 7 memory lanjutan  pdfBab 7 memory lanjutan  pdf
Bab 7 memory lanjutan pdfDandi Aulia
 
Slide4 manajemen memori _Bu Indra
Slide4 manajemen memori _Bu IndraSlide4 manajemen memori _Bu Indra
Slide4 manajemen memori _Bu IndraHz Tena
 
Suci Arrum Meilani - Manajemen Memori
Suci Arrum Meilani - Manajemen MemoriSuci Arrum Meilani - Manajemen Memori
Suci Arrum Meilani - Manajemen Memori
belajarkomputer
 
Virtualization 2 indra
Virtualization 2 indraVirtualization 2 indra
Virtualization 2 indra
indra79ti
 
Teknik Manajemen Memory.pptx
Teknik Manajemen Memory.pptxTeknik Manajemen Memory.pptx
Teknik Manajemen Memory.pptx
adeAndriyanto
 
Implementasi Virtual Memory
Implementasi Virtual MemoryImplementasi Virtual Memory
Implementasi Virtual Memory
SalsabelaMaulina1
 
Pert 8 Virtual Memory.ppt
Pert 8 Virtual Memory.pptPert 8 Virtual Memory.ppt
Pert 8 Virtual Memory.ppt
aqildzakwanulfikri
 
Paging sistem pada code program xi x.ppt
Paging sistem pada code program xi x.pptPaging sistem pada code program xi x.ppt
Paging sistem pada code program xi x.ppt
NafilaRifki
 
Implementasi virtual memori
Implementasi virtual memoriImplementasi virtual memori
Implementasi virtual memori
AmriAhmadRiadi
 

Similar to alocation of frame in OS_rev.pptx (20)

Implementasi virtual memory di windows 10 sistem operasi 4 reg a
Implementasi virtual memory di windows 10 sistem operasi 4 reg aImplementasi virtual memory di windows 10 sistem operasi 4 reg a
Implementasi virtual memory di windows 10 sistem operasi 4 reg a
 
Pertemuan ke 9
Pertemuan ke 9Pertemuan ke 9
Pertemuan ke 9
 
Memory
MemoryMemory
Memory
 
7.manajemen memory
7.manajemen memory7.manajemen memory
7.manajemen memory
 
Operating System--Memory
Operating System--MemoryOperating System--Memory
Operating System--Memory
 
Front side bus
Front side busFront side bus
Front side bus
 
Anggun Fatria - Manajemen Proses
Anggun Fatria - Manajemen ProsesAnggun Fatria - Manajemen Proses
Anggun Fatria - Manajemen Proses
 
Sistem operasi pada komputer di perkuliahan.pptx
Sistem operasi pada komputer di perkuliahan.pptxSistem operasi pada komputer di perkuliahan.pptx
Sistem operasi pada komputer di perkuliahan.pptx
 
Pertemuan3
Pertemuan3Pertemuan3
Pertemuan3
 
Bab 7 memory lanjutan pdf
Bab 7 memory lanjutan  pdfBab 7 memory lanjutan  pdf
Bab 7 memory lanjutan pdf
 
Slide4 manajemen memori _Bu Indra
Slide4 manajemen memori _Bu IndraSlide4 manajemen memori _Bu Indra
Slide4 manajemen memori _Bu Indra
 
Suci Arrum Meilani - Manajemen Memori
Suci Arrum Meilani - Manajemen MemoriSuci Arrum Meilani - Manajemen Memori
Suci Arrum Meilani - Manajemen Memori
 
Virtualization 2 indra
Virtualization 2 indraVirtualization 2 indra
Virtualization 2 indra
 
Teknik Manajemen Memory.pptx
Teknik Manajemen Memory.pptxTeknik Manajemen Memory.pptx
Teknik Manajemen Memory.pptx
 
Implementasi Virtual Memory
Implementasi Virtual MemoryImplementasi Virtual Memory
Implementasi Virtual Memory
 
Pert 8 Virtual Memory.ppt
Pert 8 Virtual Memory.pptPert 8 Virtual Memory.ppt
Pert 8 Virtual Memory.ppt
 
Paging sistem pada code program xi x.ppt
Paging sistem pada code program xi x.pptPaging sistem pada code program xi x.ppt
Paging sistem pada code program xi x.ppt
 
Implementasi virtual memori
Implementasi virtual memoriImplementasi virtual memori
Implementasi virtual memori
 
Os ppt.8
Os ppt.8Os ppt.8
Os ppt.8
 
Pert.7 memori
Pert.7 memoriPert.7 memori
Pert.7 memori
 

Recently uploaded

PERATURAN BUPATI TENTANG KODE KLASIFIKASI ARSIP
PERATURAN BUPATI TENTANG KODE KLASIFIKASI ARSIPPERATURAN BUPATI TENTANG KODE KLASIFIKASI ARSIP
PERATURAN BUPATI TENTANG KODE KLASIFIKASI ARSIP
Pemdes Wonoyoso
 
Konsep dasar asuhan neonatus ,bayi dan balita
Konsep dasar asuhan neonatus ,bayi dan balitaKonsep dasar asuhan neonatus ,bayi dan balita
Konsep dasar asuhan neonatus ,bayi dan balita
Dilasambong
 
Pertemuan 9 - PERT CPM.pdfPertemuan 9 - PERT CPM.pdf
Pertemuan 9 - PERT CPM.pdfPertemuan 9 - PERT CPM.pdfPertemuan 9 - PERT CPM.pdfPertemuan 9 - PERT CPM.pdf
Pertemuan 9 - PERT CPM.pdfPertemuan 9 - PERT CPM.pdf
idoer11
 
Modul Ajar Seni Rupa - Melukis Pemandangan - Fase B.pdf
Modul Ajar Seni Rupa - Melukis Pemandangan  - Fase B.pdfModul Ajar Seni Rupa - Melukis Pemandangan  - Fase B.pdf
Modul Ajar Seni Rupa - Melukis Pemandangan - Fase B.pdf
MiliaSumendap
 
CONTOH CATATAN OBSERVASI KEPALA SEKOLAH.docx
CONTOH CATATAN OBSERVASI KEPALA SEKOLAH.docxCONTOH CATATAN OBSERVASI KEPALA SEKOLAH.docx
CONTOH CATATAN OBSERVASI KEPALA SEKOLAH.docx
WagKuza
 
Pulupugbglueysoyaoyatiaitstisitatjsigsktstj.pdf
Pulupugbglueysoyaoyatiaitstisitatjsigsktstj.pdfPulupugbglueysoyaoyatiaitstisitatjsigsktstj.pdf
Pulupugbglueysoyaoyatiaitstisitatjsigsktstj.pdf
MRoyanzainuddin9A
 
manajer lapangan pelaksana gedung SKK JENJANG 6
manajer lapangan pelaksana gedung SKK JENJANG 6manajer lapangan pelaksana gedung SKK JENJANG 6
manajer lapangan pelaksana gedung SKK JENJANG 6
MhdFadliansyah1
 
Kisi-Kisi Asesmen Madrasah Akidah Akhlak MTs Arridho Tahun Pelajaran 2023-202...
Kisi-Kisi Asesmen Madrasah Akidah Akhlak MTs Arridho Tahun Pelajaran 2023-202...Kisi-Kisi Asesmen Madrasah Akidah Akhlak MTs Arridho Tahun Pelajaran 2023-202...
Kisi-Kisi Asesmen Madrasah Akidah Akhlak MTs Arridho Tahun Pelajaran 2023-202...
mtsarridho
 

Recently uploaded (8)

PERATURAN BUPATI TENTANG KODE KLASIFIKASI ARSIP
PERATURAN BUPATI TENTANG KODE KLASIFIKASI ARSIPPERATURAN BUPATI TENTANG KODE KLASIFIKASI ARSIP
PERATURAN BUPATI TENTANG KODE KLASIFIKASI ARSIP
 
Konsep dasar asuhan neonatus ,bayi dan balita
Konsep dasar asuhan neonatus ,bayi dan balitaKonsep dasar asuhan neonatus ,bayi dan balita
Konsep dasar asuhan neonatus ,bayi dan balita
 
Pertemuan 9 - PERT CPM.pdfPertemuan 9 - PERT CPM.pdf
Pertemuan 9 - PERT CPM.pdfPertemuan 9 - PERT CPM.pdfPertemuan 9 - PERT CPM.pdfPertemuan 9 - PERT CPM.pdf
Pertemuan 9 - PERT CPM.pdfPertemuan 9 - PERT CPM.pdf
 
Modul Ajar Seni Rupa - Melukis Pemandangan - Fase B.pdf
Modul Ajar Seni Rupa - Melukis Pemandangan  - Fase B.pdfModul Ajar Seni Rupa - Melukis Pemandangan  - Fase B.pdf
Modul Ajar Seni Rupa - Melukis Pemandangan - Fase B.pdf
 
CONTOH CATATAN OBSERVASI KEPALA SEKOLAH.docx
CONTOH CATATAN OBSERVASI KEPALA SEKOLAH.docxCONTOH CATATAN OBSERVASI KEPALA SEKOLAH.docx
CONTOH CATATAN OBSERVASI KEPALA SEKOLAH.docx
 
Pulupugbglueysoyaoyatiaitstisitatjsigsktstj.pdf
Pulupugbglueysoyaoyatiaitstisitatjsigsktstj.pdfPulupugbglueysoyaoyatiaitstisitatjsigsktstj.pdf
Pulupugbglueysoyaoyatiaitstisitatjsigsktstj.pdf
 
manajer lapangan pelaksana gedung SKK JENJANG 6
manajer lapangan pelaksana gedung SKK JENJANG 6manajer lapangan pelaksana gedung SKK JENJANG 6
manajer lapangan pelaksana gedung SKK JENJANG 6
 
Kisi-Kisi Asesmen Madrasah Akidah Akhlak MTs Arridho Tahun Pelajaran 2023-202...
Kisi-Kisi Asesmen Madrasah Akidah Akhlak MTs Arridho Tahun Pelajaran 2023-202...Kisi-Kisi Asesmen Madrasah Akidah Akhlak MTs Arridho Tahun Pelajaran 2023-202...
Kisi-Kisi Asesmen Madrasah Akidah Akhlak MTs Arridho Tahun Pelajaran 2023-202...
 

alocation of frame in OS_rev.pptx

  • 1. ALLOCATION OF FRAMES IN OPERATING SYSTEM
  • 2. An important aspect of operating systems, virtual memory is implemented using demand paging. Demand paging necessitates the development of a page- replacement algorithm and a frame allocation algorithm. Frame allocation algorithms are used if you have multiple processes; it helps decide how many frames to allocate to each process.
  • 3. There are various constraints to the strategies for the allocation of frames: • You cannot allocate more than the total number of available frames. • At least a minimum number of frames should be allocated to each process. This constraint is supported by two reasons. The first reason is, as less number of frames are allocated, there is an increase in the page fault ratio, decreasing the performance of the execution of the process. Secondly, there should be enough frames to hold all the different pages that any single instruction can reference.
  • 4. • Frame allocation algorithms – The two algorithms commonly used to allocate frames to a process are: 1. Equal allocation: In a system with x frames and y processes, each process gets equal number of frames, i.e. x/y. For instance, if the system has 48 frames and 9 processes, each process will get 5 frames. The three frames which are not allocated to any process can be used as a free-frame buffer pool. • Disadvantage: In systems with processes of varying sizes, it does not make much sense to give each process equal frames. Allocation of a large number of frames to a small process will eventually lead to the wastage of a large number of allocated unused frames. 2. Proportional allocation: Frames are allocated to each process according to the process size. For a process pi of size si, the number of allocated frames is ai = (si/S)*m, where S is the sum of the sizes of all the processes and m is the number of frames in the system. For instance, in a system with 62 frames, if there is a process of 10KB and another process of 127KB, then the first process will be allocated (10/137)*62 = 4 frames and the other process will get (127/137)*62 = 57 frames. • Advantage: All the processes share the available frames according to their needs, rather than equally.
  • 5. • Global vs Local Allocation – The number of frames allocated to a process can also dynamically change depending on whether you have used global replacement or local replacement for replacing pages in case of a page fault. • Local replacement: When a process needs a page which is not in the memory, it can bring in the new page and allocate it a frame from its own set of allocated frames only. • Advantage: The pages in memory for a particular process and the page fault ratio is affected by the paging behavior of only that process. • Disadvantage: A low priority process may hinder a high priority process by not making its frames available to the high priority process. • Global replacement: When a process needs a page which is not in the memory, it can bring in the new page and allocate it a frame from the set of all frames, even if that frame is currently allocated to some other process; that is, one process can take a frame from another. • Advantage: Does not hinder the performance of processes and hence results in greater system throughput. • Disadvantage: The page fault ratio of a process can not be solely controlled by the process itself. The pages in memory for a process depends on the paging behavior of other processes as well.
  • 6. • Masalah dan Penjelasan Alokasi Frame • Masalah dalam alokasi frame dalam penggunaan memori virtual yaitu bagaimana kita membagi memori yang bebas kepada berbagai proses yang sedang dikerjakan? Jika ada sejumlah frame bebas dan ada dua proses, berapakah frame yang didapatkan tiap proses ? • Kasus paling mudah dari memori virtual adalah sistem satu pemakai. Misalkan sebuah sistem mempunyai memori 128K dengan ukuran halaman 1K, sehingga ada 128 frame. Sistem operasinya menggunakan 35K sehingga ada 93 frame yang tersisa untuk proses tiap user. • Sistem operasi untuk mengalokasikan seluruh buffer dan ruang tabel-nya dari daftar frame bebas. Ruang ini bisa digunakan untuk mendukung paging dari user. Kita juga dapat menyimpan tiga frame bebas yang dari daftar frame bebas, sehingga ketika terjadi page fault, ada frame bebas yang dapat digunakan untuk paging. • Masalah lain muncul ketika demand paging dikombinasikan dengan multiprogramming. Hal ini terjadi karena multiprogramming menaruh dua (atau lebih) proses di memori pada waktu yang bersamaan.
  • 7. Jumlah Frame Minimum Kita tidak dapat mengalokasikan lebih dari jumlah total frame yang tersedia kecuali ada page sharing. Ada juga jumlah minimal frame yang dapat di alokasikan. Seiring dengan bertambahnya jumlah frame yang dialokasikan ke setiap proses berkurang, tingkat page fault bertambah dan mengurangi kecepatan eksekusi proses. Jumlah minimum frame yang harus dialokasikan. Jumlah minimum ini ditentukan oleh arsitektur set instruksi. Ingat bahwa ketika terjadi page fault, sebelum eksekusi instruksi selesai, instruksi tersebut harus diulang. Sehingga kita harus punya jumlah frame yang cukup untuk menampung semua halaman yang dirujuk oleh sebuah instruksi tunggal.
  • 8. Jumlah minimum frame ditentukan oleh arsitektur komputer. Sebagai contoh, instruksi move pada PDP-11 adalah lebih dari satu kata untuk beberapa modus pengalamatan, sehingga instruksi tersebut bisa membutuhkan dua halaman. Sebagai tambahan, tiap operannya mungkin merujuk tidak langsung, sehingga total ada enam frame. instruksi ini butuh 6 bit dan dapat memakai dua halaman. Satu blok karakter juga dapat memakai dua halaman, sehingga situasi ini membutuhkan enam frame. Kesimpulannya, jumlah minimum frame yang dibutuhkan per proses tergantung dari arsitektur komputer tersebut, sementara jumlah maksimumnya ditentukan oleh jumlah memori fisik yang tersedia. Di antara kedua jumlah tersebut, kita punya pilihan yang besar untuk alokasi frame.
  • 9. • 3 Definisi Alokasi Frame – Pengalokasian tiap-tiap proses bervariasi tergantung pada tingkat multiprogramming – Jika tingkat multiprogramming nya semakin tinggi, maka proses akan kehilangan beberapa frame – Sebaliknya jika tingkat multiprogramming berkurang, maka proses akan mendapat frame melebihi dari yang dibutuhkan.
  • 10. Ada 3 jenis Alokasi Frame atau Allocation of Frames (Fixed andPriority Allocations) Jenis Alokasi Frame : – Alokasi sama rata (equal allocation) ->Tiap proses mendapat jumlah frame sama banyak – Alokasi proporsional (proporsional allocation) -> Tiap proses mendapat jumlah frame sesuai dengan besarnya image proses itu. – Alokasi berprioritas (priority allocation) ->Jumlah frame yang dialokasikan untuk tiap proses berdasarkan prioritas.
  • 11.  Contoh Implementasi dari global replacement  Berikut adalah grafik ilustrasinya  Os akan memonitor rate page fault untuk setiap proses dan akan ada proses penentuan jika ada terlalu banyak frame atau tidak cukup frame untuk dialokasikan. Sebagai tambahan frame yang bebas alias tidak terpakai dapat dialokasikan dari daftar list frame-bebas atau dihilangkan/dihapus dari proses yang terlalu banyak pages nya .  Jika list free-frames nya kosong maka dan tidak proses yang memiliki kaitan langsung dengan free- frame maka proses dapat di swap out
  • 12.  b) Model Pengaturan Kerja – cara ini mengunakan referensi dari yang sudah ada sebelumnya tau past reference dari suatu proses untuk menentukan kumpulan halaman kerja yang harus disimpan dalam memori utama. OS memiliki parameter integer (mis. 10.000) yang merupakan ukuran jendela pengaturan kerja. Jendela pengaturan kerja terdiri dari referensi terakhir. Set kerja untuk program terdiri dari set halaman yang telah menjadi referensi di jendela set kerja. Berikut adalah contoh skeamnya
  • 13.  Penjelasan :  OS mengalokasikan cukup frame halaman untuk setiap proses untuk menahan set kerjanya saat ini. Jika jumlah semua kardinalitas semua set kerja untuk proses yang dimuat melebihi jumlah bingkai fisik, maka OS dapat menukar proses. Kemudian ketika proses ditukar kembali ke memori, set halaman kerjanya dapat dimuat kembali ke memori utama. Dengan demikian, mengurangi kesalahan halaman saat proses dimulai kembali dengan menyiapkan set kerja.  Masalah:  1) Pilihan D - Apa yang terjadi jika terlalu kecil atau besar ???  2) Bagaimana model work-set diimplementasikan secara efisien?
  • 14.  implementasi Working-Set Model - gunakan R-bit dan histori bit pada entri Table Page untuk memperkirakan set kerja. Misalnya, jika D = 9000, kami dapat menghentikan proses setiap 1.000 referensi dan menggeser bit-R ke dalam bit riwayat entri tabel halaman terkait. Kemudian bersihkan R-bit dan ulangi. Bagaimana bit sejarah dapat digunakan?  Pada penghenti waktu jika R-bit saat ini dan 8 bit riwayat sebelumnya semuanya nol, maka halaman tersebut tidak dalam set yang berfungsi. Jika salah satunya adalah 1, maka halaman tersebut masih dalam set yang berfungsi.
  • 15.  Masalah Paging lainnya Ukuran halaman - sering ditentukan oleh perangkat keras, tetapi terkadang beberapa halaman ukuran tersedia oleh perangkat keras (mis., prosesor Intel Pentium - ukuran 4K byte atau 4M byte) Keuntungan dari halaman yang lebih kecil - lebih sedikit fragmentasi internal karena rata-rata ½ dari halaman terakhir terbuang Kerugian dari halaman yang lebih kecil 1) tabel halaman lebih besar untuk ukuran memori virtual yang sama mis., memori virtual 4GB, halaman 4KB, dan entri tabel-halaman 4 byte 4MB untuk tabel halaman Jika ukuran halaman adalah 4MB, maka hanya 4KB yang cukup untuk menampung tabel halaman. 2) lebih rendah tingkat kesalahan halaman - halaman yang lebih besar berarti lebih sedikit kesalahan halaman. Bagaimana dengan waktu untuk menangani kesalahan halaman untuk halaman yang lebih besar vs halaman yang lebih kecil? Hampir sama! (mencari waktu, penundaan rotasi tidak berubah, hanya sedikit waktu transfer lagi)
  • 16. Single user system:  Kernel occupies M frames + some frames for dynamic data structures Remaining frames are put on free list for use by a user process Multiprogramming:  Minimum # of frames to be allocated to a process: maximum number of memory references permitted in a single instruction Example: PDP-11 MOV instruction instruction may occupy > 1 word 2 operands each of which can be an indirect reference if fewer frames are allocated, process should be swapped out, and allocated frames freed