This Project concerns the development and testing of a Communication Manager, a monitor with functions to perform send/receive operations.
CIS 5512 Fall 2014 Project 3
This project is concerned with the design and development of a communication system, the Communication
Manager. The system is constructed around a “monitor”. Tasks that communicate do so through the
monitor functionality. This project requires the implementation of the monitor and a set of tasks to use for
experimentation with the monitor.
An Inter-thread message communication system uses an asymmetric naming convention, and adheres to
the following rules:
To send a message, a sender provides the id of the destination task to which the message is to be
delivered, and the text of the message.
To receive a message, a task simply provides the name of a variable in which the message should be
deposited; the system provides the task with a message sent to it by some thread.
The system consists of a monitor named Communication_Manager and 4 tasks (threads). The monitor
provides the operations of send and receive, which implement message passing using a global pool of 20
message buffers. The system is to operate as follows:
1. Each thread (task) has a cyclic behavior with a random delay at the end of each pass. Its operation is
governed by commands in a “command file” that is used exclusively by the thread. During each iteration, the
thread reads a command from the file and invokes an appropriate operation on the monitor. Three commands
a. the thread should send a message: send
b. the thread should receive a message: receive
c. the thread should complete (quit) its operation: quit
2. When a thread invokes a send operation, the monitor copies the text of the message into a free message buffer
from the global pool of message buffers. If the destination thread for the message is currently blocked on a
receive operation, the message is delivered to the receiver thread as described in item 3 below and the
receiver thread is activated. When the message is sent, control is then returned to the thread executing the
send operation. If none of the message buffers in the global pool of 20 message buffers is free, the thread
performing the send operation is blocked until a message buffer becomes free.
3. When a thread invokes a receive operation, it is given a message sent to it, in FIFO order. The monitor finds the
message buffer that contains the first undelivered message that has been sent to the receiving thread, copies
the text of the message into the variable designated by the thread, and frees the message buffer. If a thread
executing the send operation had been previously blocked waiting for a free buffer, as mentioned in 2 above,
the thread is activated to attempt access to the buffer . The thread performing the receive operation is blocked
if no message exists for it. The thread would be activated when a future message is sent to it.
1 CIS 5512 Fall 2014 Project 31. After performing a send operation or a receive operation, the monitor writes details of the actions
performed by it to a log file.
5. The monitor is able to detect a deadlock situation, in which the threads are blocked indefinitely. The monitor writes
details of the deadlock situation into the log file and terminates itself.
6. The inter-thread message communication system terminates itself when all threads have completed their
Write the monitor Communication_Manager, and test its operation with several sets of sample command files
for the threads. These test samples you develop are to create various interesting situations in message passing,
including some deadlock situations. Describe your test set development and the intention of each set. Include
results that demonstrate your test sets and their results.
YOU CAN ALSO PLACE OTHER SIMILAR ORDERS ON OUR WEBSITE AND GET AMAZING DISCOUNTS!!!
Our Service Charter
Excellent Quality / 100% Plagiarism-FreeWe employ a number of measures to ensure top quality essays. The papers go through a system of quality control prior to delivery. We run plagiarism checks on each paper to ensure that they will be 100% plagiarism-free. So, only clean copies hit customers’ emails. We also never resell the papers completed by our writers. So, once it is checked using a plagiarism checker, the paper will be unique. Speaking of the academic writing standards, we will stick to the assignment brief given by the customer and assign the perfect writer. By saying “the perfect writer” we mean the one having an academic degree in the customer’s study field and positive feedback from other customers.
Free RevisionsWe keep the quality bar of all papers high. But in case you need some extra brilliance to the paper, here’s what to do. First of all, you can choose a top writer. It means that we will assign an expert with a degree in your subject. And secondly, you can rely on our editing services. Our editors will revise your papers, checking whether or not they comply with high standards of academic writing. In addition, editing entails adjusting content if it’s off the topic, adding more sources, refining the language style, and making sure the referencing style is followed.
Confidentiality / 100% No DisclosureWe make sure that clients’ personal data remains confidential and is not exploited for any purposes beyond those related to our services. We only ask you to provide us with the information that is required to produce the paper according to your writing needs. Please note that the payment info is protected as well. Feel free to refer to the support team for more information about our payment methods. The fact that you used our service is kept secret due to the advanced security standards. So, you can be sure that no one will find out that you got a paper from our writing service.
Money Back GuaranteeIf the writer doesn’t address all the questions on your assignment brief or the delivered paper appears to be off the topic, you can ask for a refund. Or, if it is applicable, you can opt in for free revision within 14-30 days, depending on your paper’s length. The revision or refund request should be sent within 14 days after delivery. The customer gets 100% money-back in case they haven't downloaded the paper. All approved refunds will be returned to the customer’s credit card or Bonus Balance in a form of store credit. Take a note that we will send an extra compensation if the customers goes with a store credit.
24/7 Customer SupportWe have a support team working 24/7 ready to give your issue concerning the order their immediate attention. If you have any questions about the ordering process, communication with the writer, payment options, feel free to join live chat. Be sure to get a fast response. They can also give you the exact price quote, taking into account the timing, desired academic level of the paper, and the number of pages.