Performance metrics for mutual exclusion Algorithm

Mutual exclusion is a program object that relates to the condition that no two concurrent processes be in the same crucial region at the same time. It is offered to prevent the race condition from occurring. If a current process is accessing the crucial part, it prohibits another concurrent process from entering there. In a nutshell, only one process is authorized to perform the vital part at any one moment.

What are performance metrics for mutual exclusion?

Programming object mutual exclusion describes the need that no two concurrent processes take place in a crucial region at the same time. It is put out to serve the competitive environment. A vital area can't be accessed by another concurrent process if the present process is using it. In other words, only one process is permitted to carry out the crucial function at any one time.

Universal approaches for executing distributed mutual exclusion

Token-based technique

A special authorization (also known as a PRIVILEGE message) is shared across sites using the token-based approach. A site can access its crucial portion as long as it possesses the token and keeps it till the critical section is finished. Because the token is unique, mutual exclusion is assured. Algorithms, according to this viewpoint, are fundamentally different from how a website delivers a search token. In the token ring algorithm, a token is passed sequentially around a ring of processes or threads. Only the process or thread that has the token can access the shared resource. The centralized token algorithm makes use of a central authority to handle token distribution. The distributed token algorithm distributes tokens among processes or threads in a decentralized manner.

Non-token-based technique

To choose which site will reach the crucial area next, at least two incremental rounds of communications are sent between sites. When the announcement stated by its local writers occurs, the site passes to the important portion. Method based on a quorum - In the quorum-based strategy, each site must obtain the approval of a significant subset of sites (called a quorum). When two sites request access to a critical area at the same time, quorums are meant to ensure that only one request fills the critical section at any one time.

Four Metrics

To evaluate the success of metrics in mutual extension, a number of performance measures can be used. This number represents the number of times a programme attempts to access a page that must be swapped in from the disc because it is not physically in memory. If the page failure rate is excessive, the system may be spending too much time swapping pages in and out of memory, which may impair system performance. The following are the Metrics of the Mutual extension.

Message complexity

The amount of messages necessary to finish a CS via the website. Message complexity denotes the maximum number of messages that may be transmitted across any given edge. A distributed algorithm's time complexity is generally defined as the number of rounds until the final node completes the process.

Sync Delay

The period between when a site leaves CS and when the following site arrives at CS. The synchronization delay is measured as the average message delay T [8] and is the period between when a site departs the CS and when the next site joins the CS. Token-based or non-token-based distributed mutual exclusion algorithms exist.

Response Time

The amount of time it takes for the request to be completed after sending inquiry messages to the CS. The time necessary to submit the request, process it in the computer, and send the result back to the terminal is included in the response time. Reaction time is commonly used to evaluate the performance of intelligent systems.

System efficiency

(CS) is the rate at which the system fulfills demands. The operating system must be built to enable for the quick development, testing, and implementation of new system functionalities while maintaining service.

Low and high load performance

The load is indicated by the number of incoming requests to complete a key portion. Low load occurs when there are several requests per key area. High load occurs when there is constantly a pending request. In the event of a heavy load, the site instantly begins the operation to meet the next important demand when the request is completed. Under heavy load conditions, the target is only inactive on rare occasions. Simple mathematical reasoning may be used to efficiently record performance measurements for several mutual exclusion algorithms under low and high loads. Overall, both low and high load performance indicators are crucial for evaluating a system or application's dependability and effectiveness since they shed light on how it operates under various usage scenarios and how it may be optimized to accommodate rising demand.

Requirements of mutual exclusion

There should be no deadlocks: Websites should not be kept waiting forever for pending messages to come.

No starvation

Requires a threshold below which one site cannot run a crucial portion repeatedly while another site waits without executing a vital part.

Fault Tolerance

It should identify its own faults automatically and continue operations with little interruption. The process by which an operating system responds to hardware or software failure is known as fault tolerance. According to this definition, fault tolerance refers to a system's ability to function even in the presence of errors or malfunctions.

What influence does the metric have on the efficacy of mutual exclusion?

Mutual exclusion algorithms often provide best-case and worst-case performance characteristics. In the best-case scenario, the gain circumstances are such that the performance measure reaches its maximum value. The best reaction time esteem for most common prohibited computations is the 2T E-return message delay as well as the critical segment execution time. In mutual exclusion algorithms, the best and worst scenarios frequently correlate to low and high loads, respectively. For example, the best and worst response times are obtained when the load is exceptionally low and high; in some mutual exclusion algorithms, the best and worst message traffic is created separately when the load is very low and high. The mutual exclusion algorithm's effectiveness can be significantly impacted by the statistic that is selected.

For example, the mutual exclusion method may prioritize quick lock acquisition if the measure is focused on reducing the system's average reaction time. This may result in increased contention and longer wait times for particular processes. The mutual exclusion method may prioritize allowing more processes to enter their critical sections concurrently, which could result in more conflicts and longer total execution durations, on the other hand, if the metric is focused on maximizing throughput.


Mutual exclusion algorithms nearly always offer measures for best-case and worst-case performance. In the best-case scenario, the winning condition is so favorable that key performance indicators reach their maximum value. Access requests to important portions are being processed. In a non-token-based method, the sequence of timestamps is important. As a result, fairness is assured. in their interaction when compared to token-based algorithms. Non-token-based algorithms require messages. There are no ideal algorithms since each has strengths and drawbacks. There is no need for a token to access CS because it is not token-based. A permission-based algorithm is the name given to this method.

Updated on: 19-Jul-2023


Kickstart Your Career

Get certified by completing the course

Get Started