Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Do not need to run actual the actual timing . A loop for the amount of time entered will do. Kindly attach screen-capture of the
Do not need to run actual the actual timing . A loop for the amount of time entered will do. Kindly attach screen-capture of the outputs
Your task for this assignment is to investigate some of the properties of queues. Queues are commonly used in network systems. For example, e-mail is placed in queues while it is waiting to be sent and after it arrives at the recipient's mailbox. A problem occurs, however, if the outgoing mail processor cannot send one or more of the messages in the queue. For example, a message might not be sent because the recipient's system is not available. Write an e-mail simulator that processes mail at an average of 30 messages per minute. As messages are received, they are placed in a queue. For the simulation, assume that the messages arrive at an average rate of 30 messages per minute. Remember, the messages must arrive randomly, so you will need to use a random number generator to determine when messages are received. Each minute, you can dequeue up to 30 messages and send them. Assume that 25% of the messages in the queue cannot be sent in any processing cycle. Again, you will need to use a random number to determine whether a given message can be sent. If it cannot be sent, put it back at the end of the queue or enqueue it. Run the simulator for 15 minutes, tracking the number of times each message had to be requeued. At the end of the simulation, print the statistics that show: 1 The total messages processed. 2 The average arrival rate, that is, the average number of messages arriving per minute. 3 The average number of messages sent per minute. 4 The average number of messages in the queue in a minute. 5 The number of messages sent on the first attempt, the number of messages sent on the second attempt, and so forth. 6 The average number of times messages had to be requeued (do not include the messages sent the first time in this average.) NOTE: Since the question is to assess your understanding of the concept of Queue, you are NOT allowed to use the library of the language that implement queue. You need to write the codes (implementation) of Queue for this exercise. (See point (iii).) Sample Output: (Note: Since this exercise is a simulation exercise and involves random numbers, the output shown here are for your reference only. You may not necessarily be able to obtain the same output shown here.) Please enter the total minutes to run: 30 Total number of messages processed : 818 Average arrival rate : 29.03 Average number of messages sent per minute : 19.97 Average number of messages in the queue per minute : 122.77 Number of messages sent on 1st attempt : 491 Number of messages sent on 2nd attempt : 87 Number of messages sent on 3rd attempt : 18 Number of messages sent on 4th attempt : 1 Number of messages sent on 5th attempt : 2 Average number of times messages had to be requeued : 1.30 Standard Requirements for Programming question: (i) Java Version - JDK 6 update 17 or higher (Using Windows), or (ii) C++ / C compiler - g++ 4.0 or higher (Using Windows or UBUNTU). In the event that you use UBUNTU via VM, be careful with the memory function of the language and make sure that the functions are used properly and do not cause any segmentation error when the codes are compiled in Windows environment. (iii) All coding must be your own work. Standard libraries of data structures and algorithms such as STL may not be used, nor may code be sourced from textbooks, the internet, etc. (iv) Programs should be appropriately documented with comments. (v) Execute your program and screen-capture the output. Include in your submission all source code and libraries plus the screen-captures. (vi) Students are to place all compilation and instructions on how to run the program inside a readme.txt file. Your lecturer will refer to this file when marking. Without a readme.txt or clear instructions for compilation, your lecturer will compile basedStep by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started