This document discusses mutual exclusion algorithms for ensuring processes can access shared resources safely. It introduces the critical section problem and requirements for a solution. Centralized and decentralized mutual exclusion approaches are described. Popular algorithms are compared, including Dekker's, Lamport's bakery, and Peterson's algorithms. The document outlines how these algorithms work and their limitations. It proposes improvements using time-stamped and lock-based approaches and discusses future work applying these algorithms in distributed systems.