Question: When to run the deadlock detection algorithm. You are to design an algorithm (A1) that decides for when to invoke a deadlock detection algorithm (A2).

When to run the deadlock detection algorithm. You are to design an algorithm (A1) that decides for when to invoke a deadlock detection algorithm (A2). This question concerns A1 and does not concern A2. A simple A1 algorithm would be to use some fixed clock tick, and to invoke A2 on every clock tick, say every 2000 ms. But this would be inefficient and would incur high overhead. Your algorithm (A1) will attempt to do better. It can make use of only two of the following kernel- level variables about the processes (two of your choice): 1. Process id 2. process age (how long the process has been around in the system) 3. process CPU utilization (how much CPU time the process has received in total since it started) 4. number of children processes 5. number of semaphores created by the process 6. memory size of the address space of the process You can assume you have access to the two variables for all processes currently in the system. Clearly state your two choices from the above list and use them in your algorithm. Describe your algorithm clearly. You may use other non-process related variables or constants. Describe your algorithm in a pseudo code style (such as the code style of Q1), adding comments in the pseudo code to clarify. A comment starts with the symbol "%
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
