Program 3.22 using message passing
The Collatz conjecture concerns what happens when we take any positive integer n and apply the following algorithm
The conjecture states that when this algorithm is continually applied all positive integers will eventually reach 1. Write a C program using fork() system call that generates this sequence in the child process. The starting number will be provided from the command line. Because the parent and the child processes have their own copies of the data, it will be necessary for the child to output the sequence in Exercise 3.21. Another approach to designing this program is to create message queues, one for the parent process and one for the child process. The parent can write a message containing the starting number of the sequence to the child’s message queue. After the child process receives the message, the child process will generate the sequence, and send the entire sequence to the parent’s message queue. The parent will receive the sequence from its message queue, then output the sequence to the screen. Before the processes terminate, they will each destroy its own message queue.
One area of concern with cooperating processes involves synchronization issues. In this exercise, the parent and child processes must be coordinated so that the parent does not output the sequence until the child finishes execution. These two processes will be synchronized using synchronous message sending and receiving.
useful example msg-passing-outline
Delivering a high-quality product at a reasonable price is not enough anymore.
That’s why we have developed 5 beneficial guarantees that will make your experience with our service enjoyable, easy, and safe.
You have to be 100% sure of the quality of your product to give a money-back guarantee. This describes us perfectly. Make sure that this guarantee is totally transparent.Read more
Each paper is composed from scratch, according to your instructions. It is then checked by our plagiarism-detection software. There is no gap where plagiarism could squeeze in.Read more
Thanks to our free revisions, there is no way for you to be unsatisfied. We will work on your paper until you are completely happy with the result.Read more
Your email is safe, as we store it according to international data protection rules. Your bank details are secure, as we use only reliable payment systems.Read more
By sending us your money, you buy the service we provide. Check out our terms and conditions if you prefer business talks to be laid out in official language.Read more