A small project demonstrating the working of Ricart Agrawala algorithm to achieve mutual exclusion in distributed systems. The project has two main components: Server and Client. The Server is a program that accepts a program(C,C++ or Java), compiles the same, runs it , and returns the output to the client. We assume that the server can only accept one request at a time. Hence,accessing of the server to run programs is the critical section. The project uses Java RMI(Remote method invocation) classes to achieve connections between any two clients or between client and the server. This project was built for windows. To run the same in Linux or any other O.S. you should make the necessary changes in the script files.