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

Define baud rate, Define baud rate The rate of data transfer in serial...

Define baud rate The rate of data transfer in serial data communication is signified in bps. Bits per second (bps) is the rate of transfer of information bits. Baud is the num

Radius of curvature in differential calculas, find the radius of curvature ...

find the radius of curvature at the point (3,3) at a point x3+xy2-6y2=0?

What are the steps in executing the program, What are the steps in executin...

What are the steps in executing the program? 1.Fetch 2.Decode 3.Execute 4.Store

ip address and port number at the remote host, How many TCP connections ar...

How many TCP connections are in the "Established" state? Contain relevant output. For one of the established TCP connections, what are the IP address and port number at the remote

What is nv-ram, Nonvolatile Read Write Memory, also kown as Flash memory. I...

Nonvolatile Read Write Memory, also kown as Flash memory. It is also called as shadow RAM.

What is sap luw or update transaction, What is SAP LUW or Update Transactio...

What is SAP LUW or Update Transaction? Update transaction (or "SAP LUW") This is a set of updates terminated by an ABAP/4 commit.  A SAP LUW may last much longer than a data

Rational performance of an agent - artificial intelligence, Rational perfor...

Rational performance of an agent - artificial intelligence: To summarize, an agent takes input from its violence and affects that environment. The rational performance of an a

Problem solving in parallel-, Problem Solving In Parallel Introduction ...

Problem Solving In Parallel Introduction to Parallel Computing This section examines how a particular task can be broken into minor subtasks and how subtasks can be answer i

Drill-down features provided by abap/4 in interactive lists, What are the d...

What are the drill-down features provided by ABAP/4 in interactive lists? ABAP/4 gives some interactive events on lists such as AT LINE-SELECTION (double click) or AT USER-COM

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