Systems involving multiple processes are often most easily programmed using critical regions. Mutual exclusion is the dilemma of assurance that certain portions of program code are executed within the critical regions, where no two programs are permitted to be in critical regions at the same time. So, arranging mutual exclusion plays a significant role in the domain of both centralized and distributed systems. Unfortunately, all the three basic approaches – centralized, distributed and token ring proposed for achieving mutual exclusion in distributed systems are said to be good for distributed systems in some abstract way only. In this study, we have presented a ring–based algorithm for arranging mutual exclusion in distributed systems. We have compared the conventional algorithms with the algorithm presented in this study and shown that our algorithm is more fault–tolerant than all the traditional algorithms and requires less number of message–passing with reduced amount of load on coordinator.