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

Make an instruction execution feasible, Q. Make an instruction execution fe...

Q. Make an instruction execution feasible? What are the functions that a control unit performs to make an instruction execution feasible? Instruction execution is achieved by e

Explain the transport layer in detail, Explain the transport layer in detai...

Explain the transport layer in detail. Transport Layer: The transport layer controls and makes sure the end-to-end integrity of the data message propagated by the network am

What is hypercube network, Q. What is Hypercube Network? The hypercube ...

Q. What is Hypercube Network? The hypercube architecture has played a significant role in development of parallel processing and is quite influential and popular. The highly sy

Define process control block, Define Process Control Block (PCB). Pr...

Define Process Control Block (PCB). Process Control Block (PCB): Information related with each process is stored into Process control Block. a)      Process state b)

What are the restrictions on subscreens, What are the restrictions on Subsc...

What are the restrictions on Subscreens? Subscreens have various restrictions.  They cannot: Set their own GUI status Have a named OK code Call another screen

What is software and hardware interrupt, What is Software and hardware inte...

What is Software and hardware interrupt The software interrupts are program instructions. These instructions are inserted at desired location in a program. A program formed int

Managerial benefits, MANAGERIAL BENEFITS Implement integrated relia...

MANAGERIAL BENEFITS Implement integrated reliability engineering and product assurance program in all aspects of the product life-cycle, covering purchase, engineering, R&D

Explain opening files for reading only in c, Opening Files for Reading Only...

Opening Files for Reading Only     : A data file is a file that you can open and read its contents visually - for example, C source files, .dat files, HTML etc - anything that look

What are the methods for handling deadlocks, What are the methods for handl...

What are the methods for handling deadlocks?  The deadlock problem can be dealt with in one of the three ways:  a. Use a protocol to prevent or avoid deadlocks, make sure th

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