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

What is assembler, What is Assembler A macro-assembler or assembler nor...

What is Assembler A macro-assembler or assembler normally forms a part of operating system. That translates an assembly language program into machine language program.

Multi-operating systems, The assignment enhances the acquisition of new kno...

The assignment enhances the acquisition of new knowledge through reading, research and practical work in class and at home. It requires critical thinking applied to real life tasks

Illustrate basic working of physical layer, Q. Illustrate basic working of ...

Q. Illustrate basic working of Physical layer? Physical layer: Physical layer is concerned with sending raw bits between source and destination nodes over a physical medium.

Find resolution and output voltage of D/A convertor, A 6-bit R-2R ladder D/...

A 6-bit R-2R ladder D/A converter has a reference voltage of 6.5V. It meets standard linearity.Find (i) The Resolution in Percent. (ii) The output voltage for the word 011100.

Create a scatterplot for each set of variables, For each of the following v...

For each of the following variables: YEARofBIRTH transformed into a new variable called . To do this you will need to use the Command. Hint codes 9998 and 9999 are missin

Explain quadratic probing with respect to hashing technique, Quadratic prob...

Quadratic probing: In the above case when the first insertion is made the probability of latest element being inserted in a certain position is 1/n    where n is the size of the a

Explain processing of an interrupt, Q. Explain Processing of an Interrupt? ...

Q. Explain Processing of an Interrupt? The interrupt is processed as: Step 1: Number field in INT instruction is multiplied by 4 to get its entry in interrupt vector table.

Hiring problem algorithm, Consider the Hire Assistant problem. We interview...

Consider the Hire Assistant problem. We interview n candidates and always hire the best qualified so far. Let n = 5 for our example. Find the probabilities that we hire exactly 1 t

For what an append query be used, For what an append query be used? It ...

For what an append query be used? It is simple to append records from one table to another using an append query. There is no requirement for the tables to have the similar num

How do you make an image clickable in HTML, How do you make an image clicka...

How do you make an image clickable in HTML? Give an example. To create an image or text clickable hyperlinks are used, that use the and tags. Such tag has different paramet

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