Process optimizer
Loading...
Date
2024-04-04
Journal Title
Journal ISSN
Volume Title
Publisher
UMT Lahore
Abstract
The dissertation demonstrates that the conventional techniques used for CPU scheduling, mutual exclusion, deadlocks related to mutual exclusion, and synchronization between processes are narrow in scope. However, all of these conventional techniques are valid in their own scenarios. These techniques do not provide flexibility for all classes of processes. One technique, which is suitable for one type of process, is not suitable for another kind of process. When we are using a technique for process scheduling, there is always a possibility that a situation occurs where that technique fails. So, if we use one of these conventional techniques, it does not fulfill all the requirements in different situations.
This research is basically about the concept that we should have a technique that removes almost all factors that can cause problems. Therefore, it will be better to merge the concepts of two or more techniques and develop a new technique that covers all the better aspects of these techniques. For this purpose, we merge round robin, shortest process next, and first come first serve to develop our new technique. We actually remove the drawbacks of these techniques and collect the admirable features of all these techniques to make our new technique.
As far as mutual exclusion and deadlocks relating to mutual exclusion are concerned, we introduce a new algorithm, which is SSA’s algorithm. The concept of exception handling is used in this algorithm. This algorithm guarantees mutual exclusion and prevents deadlocks regarding mutual exclusion. Keeping the backup of the signal prevents improper synchronization.
The dissertation focuses on the following major problems in the conventional techniques:
There is a possibility in the round robin technique that if there is a short process in the queue of ready processes, or a short part of a process remains to be executed, it will have to wait for a longer process that completes all its allocated cycles. As a result, the throughput is decreased.
In the shortest process next technique, the longer process will have to wait for a long time, and there may arise a condition where all the shorter processes, even if they come after the longer one, will be served before it. So, the longer process will have to wait excessively.
Most operating systems do not know the number of instructions in a process. Therefore, it is difficult to estimate the CPU cycles for a process in order to designate a process as the shortest.
Peterson’s algorithm is 100% valid. However, from a performance point of view, it uses a large number of comparisons and variables for manipulation even for only two processes. Our algorithm provides a more efficient solution.
In multiprogramming systems, processes are synchronized, but sometimes it may occur that the signal sent by a process is not received by another, which can cause improper synchronization.