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

State the important features of operating system, a. Define operating syste...

a. Define operating system? State the important features of operating system? b. Describe the following facilities for implementing interacting processes in programming language

Features and utilities available in java, Explain the features and utilitie...

Explain the features and utilities available in java, which makes it suitable for developing e-commerce applications.     1.  In a network, the transmission of passive informati

Differences between flexgrid control and dbgrid control, Normal 0 ...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4

Subtraction 11011-11001 using 2's complement, Subtraction 11011-11001 using...

Subtraction 11011-11001 using 2's complement. Ans. 11011 - 11001 = A - B 2's complement of B = 00111 1 1 0 1 1 + 0 0 1 1 1 1 0 0 0 1 0 Ignore carry to get answer as 00010 = 2.

Define the term grade of service, Define the term Grade of Service. Gr...

Define the term Grade of Service. Grade of Service: In loss systems, the traffic carried through the network is usually lower than the actual traffic offered to the network t

Explain the term recursion, Explain the term recursion A recursive functi...

Explain the term recursion A recursive function is one which calls itself. Recursive functions are useful in evaluating certain types of mathematical function. Here is a recursiv

Dbms, aggregation in dbms?

aggregation in dbms?

What is stack, Stack is a portion of RAM used for saving the content of Pro...

Stack is a portion of RAM used for saving the content of Program Counter and common purpose registers. LIFO stacks, also called as "push down" stacks, are the conceptually easi

How many two-input AND and OR gates are required to realize , How many two-...

How many two-input AND and OR gates are required to realize Y=CD+EF+G ? Ans. Y=CD+EF+G No. of two i/p AND gates=2 No. of two i/p OR gates = 2 One OR gate to OR CD and EF

What is ale and explain the functions of ale in 8085, ALE-> Address latch e...

ALE-> Address latch enable...In the case of microcontroller (8051)& microprocessor 8085 the data line and low order 8 bit address lines are multiplexed. In order to getting address

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