Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Objective: This program assignment is designed to implement a simulation program which shows the the demand paging scheme with page replacement of virtual memory systems.
Objective: This program assignment is designed to implement a simulation program which shows the the demand paging scheme with page replacement of virtual memory systems. As the system resource a certain amout of memory spaces is alocated as the physical memory. In order to provide the demand paging scheme, a frame allocation and a page replacement algorithms are supposed to be incorporated into the system kernel. Page demand will be simulated according to a reference string (refer to page 335). 7, 0, 1, 2, 0, 3, 0, 4, 2, 3, 0, 3, 2, 1, 2, 0,1, 7, 0,'1 You may or may not create processes or threads to generate the above page faults In order to implement virtual memory, you will make the page tables have special bits in each page table entry . valid-invalid bit to tell the machine which virutal pages are resident in memory and which are not resident. . reference bit (use bit) to indicate a page is referenced (either a read or a write to any byte in the page). This is associated with each entry in the page table and used as the basis for many page-replacement algorithms. dirty bit to mark whether a process modified the corresponding vitual page and inform the kernel that the page is dirty First Phase: Demand paging using page faults should show that the kernel, memory management unit (MMU), dynamically loads virtual pages on demand by allocating a frame from a pool of free frames. Second Phase: Implement a page replacement algorithm, enabling your system (kernel) to evict any virtual page from physical memory in order to free up a physical page frame to effectively handle a page fault. This demand paging and page replacement together allow the kernel to execute more processes than can fit in the available physical memory. Frame allocation will be simplifed by adopting equal or proportional allocation. Environment: Unix/Linux environment (VM Linux or Triton Server), Windows platform Language: C, C++, or Java
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started