Multi-threaded concurrency programming with threads, Computer Engineering

Assignment Help:

Your task is to implement a memory manager that manages page reads and writes from multiple client threads. In the first programming task the memory manager keeps all the pages in a memory buffer large enough to fit all the pages and the server processes a list of requests and sends them to clients to log. In the second programming task a user is allowed to specify a memory buffer size limit. The memory manager needs to place some of the pages on disk in order to cope with the buffer size limit. To do this the memory manager uses the least recently used (LRU) page replacement algorithm in order to choose which page to evict from memory when the memory is full. In the third task you extend the solution for task 1 so that requests are sent from the client to the server instead of all the requests originating in the server.

Please look at the AssignmentDiagram.ppt file in the assignment folder to gain a better understanding of the assignment requirements. Sample input and output files are also provided in the SampleFilesForTasks1to3.zip file.

Please do not use sleep anywhere inside your code. Or something that simulates a sleep system call. Eg. while (1) { }. However you are allowed to use the pause(), pthread_cond_wait() or pthread_cond_timedwait() system calls and their Java equivalents to block a thread or process.

Please submit separate source files for each of the three tasks.


Related Discussions:- Multi-threaded concurrency programming with threads

How can you have an accession number, Accession number (bioinformatics), a ...

Accession number (bioinformatics), a unique identifier given to a biological polymer sequence (DNA, protein) when it is given to a sequence database.

What you mean by organizational effectiveness, Q. What you mean by organiza...

Q. What you mean by organizational effectiveness? Organizational effectiveness is measured in terms of productivity, structural flexibility, Employee involvement and Job satisf

What data structure is used by an operating system, What data structure is ...

What data structure is used by an operating system to keep track of process information? Explain A data structure termed as process control block (PCB ) is used by an operat

What is the difference among scrollbar and scrollpane, A Scrollbar is a Co...

A Scrollbar is a Component, but not a Container while Scrollpane is a Container and handles its own events and do its own scrolling.

Signalling connection control part and message transfer part, The Signallin...

The Signalling connection control part (SCCP) and message transfer part (MTP) together are referred to as (A) Signal Switching Points (SSPs) (B)  Signal Transfer Points

What are the advantages offered by data mining, What are the advantages off...

What are the advantages offered by data mining? Advantages offered through Data Mining are given below: a) Facilitates discovery of knowledge through massive, large data set

Explain three-way handshake mechanism, Explain Three-Way Handshake Mechanis...

Explain Three-Way Handshake Mechanism used by TCP to terminate a Session reliably. Just to guarantee that connection is sets up or terminated reliably, transfer control protoco

Explain the parallel data storage - application of flip flop, Explain the P...

Explain the Parallel Data Storage - application of flip flops? In digital systems, data are usually stored in groups of bits that represent numbers, codes, or other information

Describe generic framework for electronic commerce, Describe generic framew...

Describe generic framework for electronic commerce Generic Framework for electronic commerce contains the Applications of EC   (like as banking, shopping in online stores and m

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