Coordination (a.k.a. Synchronization) Problems and Protocols
                   
                  An Introduction
                | 
            
            
               | 
                   
                      
                   
                  
                     Prof. David Bernstein
                      
                     
                        James Madison University
                     
                   
                | 
            
            
                | 
            
            
               | 
                  Computer Science Department
                | 
            
            
               | 
                  bernstdh@jmu.edu
                | 
            
         
         
            
               
                  
               
            
         
       
      
      
      
      
         
         
         
            
         
         
         
            
               - Informal Definition:
      
                     - An agreement about how communication will proceed
 
                  
                
               - Formal Definition:
      
                     - An agreement that governs the procedures used to exchange
	      information between cooperating entities
 
                  
                
            
          
       
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
         Rendezvous Problems (cont.)
         
         
            
         
         
         
            
               - Number of Permutations:
      
                     - There are \(4! = 24\) possible orderings of the
              four tasks
 
                     - 
                        
                      
                  
                
               - Sequence-Satisfying Permutations:
      
                     - There are six permutations that satisfy the two 
              cross-person sequencing requirements: 
              (A1, B1, A2, B2), (A1, B1, B2, A2), (A1, B2, B1, A2),
              (B1, A1, A2, B2), (B1, A1, B2, A2), (B1, A2, A1, B2)
              
 
                     - Only four of these are consistent with the within-person
              sequencing: 
              (A1, B1, A2, B2), (A1, B1, B2, A2),
              (B1, A1, A2, B2), (B1, A1, B2, A2)
              
 
                  
                
            
          
       
      
         
          There's Always More to Learn