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

EME, How can i made Carnot engine

How can i made Carnot engine

What are the four factors of open source software, What are the four signif...

What are the four significant factors that led to the development of open source software? 1. To diminish the high control value of the Proprietary Software 2. To avoid disc

BCD ADDER, create a BCD adder combinational ckt. that adds 2 digit BCD inpu...

create a BCD adder combinational ckt. that adds 2 digit BCD inputs

Describe the properties of attributes and operations, Describe the properti...

Describe the properties of Attributesand operations Attributes are named slots for data values that belong to the class. Previously we have studied in MCS-024, different o

What is telnet explain, Q. What is Telnet explain? TELNET stands for TE...

Q. What is Telnet explain? TELNET stands for TErminal NETwork. Telnet is both a protocol for connecting a local computer to a remote computer and a TCP/IP application. Telnet i

How many lines of address bus used for memory of 2048 bytes, How many lines...

How many lines of address bus must be used to access 2048 bytes of memory when available RAM chips 128 × 8.  How many lines of these will be common to each chip? Ans. AS chips

What is hysteresis, What is hysteresis? Hysteresis is well known in fer...

What is hysteresis? Hysteresis is well known in ferromagnetic materials. When an external magnetic field is applied to a Ferro magnet, the atomic dipoles align themselves with

What is called that switch if switch capacity is full, When a switch capaci...

When a switch capacity is full, calls coming into that switch are said to be                 . (A)  open                                            (B)  shorted (C) bloc

Determine the uses of defparam, Using defparam Parameter values can be ...

Using defparam Parameter values can be changed in any module instance in the design with keyword defparam. Hierarchical name of the module instance can be used to override para

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