Design a memory buffer of limited size, Computer Engineering

Assignment Help:

Extend task 1 so that it now supports a memory buffer of limited size. Provide the same functionality as task 1 except now make the server work with a limited buffer size.

Like task 1, the server is the only thread that can access the buffer directly.

1. Allow user to specify a 2nd command line argument which specifies the buffer size in terms of the number of pages. Let that number be B.

2. The server reads the first B pages from the init_buffer_pages.dat file into the buffer. It then copies all the pages into a store file. You can organize the store file anyway you want as long as it stores all pages including those not in memory. I recommend that you use a binary file to do this since that allows you to do random seeks on the file. Assume all pages have a fixed size of 4096 characters.

3. When a page request for a non-buffer resident page occurs one page that is currently in the buffer must be evicted from memory to make room for the newly requested page to be loaded from the store file. The page replacement policy you need to implement is the least recently used (LRU) policy. Please read page 489 of the textbook for an explanation of the LRU policy.

4. Once a page to be evicted has been chosen then the program must decide whether it should be flushed to the store file or discarded.
a) If the page has been dirtied (modified) since its last load from disk then it should be flush to the store file on disk.
b) Otherwise it should be discarded without flushing to the store file.

5 The server needs to keep a log of the sequence of page evictions (pages either discarded or flushed to disk) in a log file called "server_log.dat". The entries in the log file are in the order that they were evicted. Looking at this file I will be able to tell if you have implemented the LRU page-replacement policy correctly.

The server_log.dat file should be in the following format:


...
...

For example:

20 abscde
10 KJlkljf
29 jjkjkKKH


Related Discussions:- Design a memory buffer of limited size

Direct isp service through leased line, The most expensive method of access...

The most expensive method of accessing Internet is to use leased lines which connect directly to the ISP. This will increase access rate to anywhere between 64 K and 1.5 Mbps, rely

State the characteristics of object oriented modelling, Characteristics of ...

Characteristics of object oriented Modelling In object oriented modelling objects and their properties are explained. In any system, objects come into reality for playing some

Explain can we have constant volatile variable, Const and volatile keywords...

Const and volatile keywords should not be used together due to both are opposite in nature. A variable is declared as "const" means its value is not able to be altered but if i

What is tape backup, Q. What is Tape Backup? Magnetic tapes are used th...

Q. What is Tape Backup? Magnetic tapes are used these days in computers for the below purposes: Backing up data stored in disks. It is essential to regularly save data s

What is line option explicit, What is line option explicit Line explici...

What is line option explicit Line explicit function makes the compiler to recognize all the variables which are not particular by the dim statement. This command significantly

Distributed workstation cluster, A distributed workstation cluster must be ...

A distributed workstation cluster must be viewed like single computing resource and not as a group of particular workstations'.  Details of cluster were: 150MHz R4400 workstatio

Illustrate about 8259, Illustrate about 8259 8259A adds 8 vectored pri...

Illustrate about 8259 8259A adds 8 vectored priority encoded interrupts to the microprocessor. We can expand it to 64 interrupt requests by using one master 8259A and 8 slave

Meaning of all variable, A project having of a set of jobs and a set of pre...

A project having of a set of jobs and a set of precedences, where precedence (i; j) show that job j cannot begin before job i is completed. Let c i be the duration of job i. We wi

Describe the structure of a neuron - artificial intelligence, 1. Figure 1 b...

1. Figure 1 below shows the truth table for five different functions. Each truth table shows the inputs x1, x2 and the desired output d. (a) Write down which of these functions

Show the steps of execution of instructions, Q. Show the steps of execution...

Q. Show the steps of execution of instructions? Fetch First Instruction into CPU: Step 1: Find/calculate the address of first instruction in memory. In this machine illust

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd