AbstractThis paper is on the general discussion of memory consistency model like Strict Consistency, Sequential Consistency, Processor Consistency, Weak Consistency etc. Then the techniques for implementing distributed shared memory Systems and Synchronization Primitives in Software Distributed Shared Memory Systems are discussed. The analysis involves the performance measurement of the protocol concerned that is Multiple Writer Protocol. Each protocol has pros and cons. So, the problems that are associated with each protocol is discussed and other related things are explored. KeywordsDistributed System, Single owner protocol, Multiple owner protocol I. INTRODUCTION distributed system is an application that executes a collection of protocols to coordinate the actions of multiple processes on a network, such that all components cooperate together to perform a single or small set of related tasks. II. MEMORY CONSISTENCY MODEL A memory consistency model is a contract between programmers and shared memory which specifies how the memory operations of a program will be executed. Computer scientists have proposed different memory models to enhance distributed shared memory systems. In this section, we will give an introduction to those memory models and some terminology used in this paper. A. Strict Consistency Strict consistency is the most stringent memory model. It requires any read operation to a memory location to return the latest write. This definition uses a global time to define what a read operation can get from the memory. This model mimics the memory behavior in a single processor. Dalvinder Singh Dhaliwal is working with Computer Science & Engineering Department, RIMIT Institute of Engineering & Technology, Mandi Gobindgarh (Punjab), India Parvinder S. Sandhu is Professor with Computer Science & Engineering Department, Rayat & Bahra Institute of Engineering & Bio- Technology, Sahauran, Distt. Mohali (Punjab)-140104 India (Phone: +91-98555-32004; e-mail: parvinder.sandhu@gmail.com). S. N. Panda is is working as Principal at Regional Institute of Management and Technology, Mandi Gobindgarh (Punjab), India . B. Sequential Consistency A global clock is hard to capture in a distributed system. Each processor in the distributed system may have its own local clock with a different view of time. The idea of recent time can be inconsistent in the system. proposed another model, called sequential consistency, to extend the idea of the strict consistency model. C. Processor Consistency Processor consistency [6],[8] was proposed to relax the program order constraints in the case of a write followed by a read operation to a different location. It allows the read operation to bypass the write before the write is serialized or made visible to other processors [1]. D. Weak Consistency One family of relaxed memory models requires programmers to distinguish between data and synchronization operations. Accesses to synchronization variables are strongly ordered (for example, totally ordered), but data accesses follow a weaker order. Weak consistency was the first hybrid memory model proposed by [5], [7]. E. Release Consistency Release consistency [6] is an extension of weak consistency. Release consistency classifies operations on shared memory into two categories, special and ordinary. Special operations also are classified into sync and nsync. Sync operations are either release operations or acquire operations. Ordinary operations refer to data accesses without conflicting with other operations. Sync accesses are used to order data accesses such that data operations may not conflict with each other. Nsync accesses are asynchronous data accesses. Release is a write synchronization operation. Acquire is a read synchronization operation. F. Lazy Release Consistency. Even though the conventional release consistency allows ordinary accesses to be postponed until a release operation is executed, it still requires all ordinary accesses to be performed with respect to all processes. [9],[10] proposed the lazy release consistency which allows ordinary accesses to be performed with respect to some processes. (Because the lazy release consistency was implemented as a software distributed shared memory system, the term of process is used instead of processor.) Consistency Model and Synchronization Primitives in SDSMS Dalvinder Singh Dhaliwal, Parvinder S. Sandhu, and S. N. Panda A World Academy of Science, Engineering and Technology International Journal of Computer and Systems Engineering Vol:3, No:2, 2009 293 International Scholarly and Scientific Research & Innovation 3(2) 2009 scholar.waset.org/1307-6892/9612 International Science Index, Computer and Systems Engineering Vol:3, No:2, 2009 waset.org/Publication/9612