% Engr 664: Theory of Concurrent Programming \
  Lecture Notes, Fall 2016 
% [H. Conrad Cunningham, D.Sc.](/~hcc/HOME_hcc.html) \
  [Department of Computer and Information Science](http://www.cs.olemiss.edu) \
  [The University of Mississippi](http://www.olemiss.edu) 
% 28 November 2016 


# Lecture Notes 

## Quick Links

-   [Demonstration programs
    ](<http://www.doc.ic.ac.uk/~jnm/book/book_applets/concurrency.html>)  
		 
-   [LTS analyzer
    ](<http://www.doc.ic.ac.uk/~jnm/book/ltsa/LTSA_applet.html>)  
  		 
## Schedule, Notes, and Examples 

0.  Introduction

    a.  (22 Aug) Discuss syllabus and class organization 

    b.  (24 Aug) Concurrent Programming Introduction 
        -- [HTML](<concurrent_programming_introduction.html>) 
        -- [PDF](<concurrent_programming_introduction.pdf>) 
		
1.  (24-26 Aug) Concurrency: Concepts, Models and Programs
    -- [PDF](<slides/ch1.pdf>) 
    -- [PPT](<slides/ch1.ppt>) 

2.  (29-31 Aug, 2 Sep) Processes and Threads 
    -- [PDF](<slides/ch2.pdf>) 
    -- [PPT](<slides/ch2.ppt>) 
	
3.  (2-9 Sep) Concurrent Execution
    -- [PDF](<slides/ch3.pdf>)
	-- [PPT](<slides/ch3.ppt>) 
	
4.  (12, 14, 19 Sep) Shared Objects and Mutual Exclusion
    -- [PDF](<slides/ch4.pdf>) 
    -- [PPT](<slides/ch4.ppt>) 
	
	No class on Friday, 19 Sep

5.  (19, 21, 26 Sep) Monitors and Condition Synchronization
    -- [PDF](<slides/ch5.pdf>) 
    -- [PPT](<slides/ch5.ppt>) 

    (23 Sep) Side discussion of the concept of invariant in various
    computing science contexts
	
6.  (26-30 Sep) Deadlock
    -- [PDF](<slides/ch6.pdf>) 
    -- [PPT](<slides/ch6.ppt>) 
	
7.  (3-7 Oct) Safety and Liveness
    -- [PDF](<slides/ch7.pdf>) 
    -- [PPT](<slides/ch7.ppt>) 
	
	(10 Oct) Review for Exam #1
	
	**(12 Oct) Examination #1**
	
8.  (14-19 Oct) Model-Based Design 
    -- [PDF](<slides/ch8.pdf>) 
    -- [PPT](<slides/ch8.ppt>)
	
	(24 Oct) Return Exam #1
	
	(26 Oct) Side talk about OO design
	
9.  (21, 28, 31 Oct) Dynamic Systems
    -- [PDF](<slides/ch9.pdf>) 
    -- [PPT](<slides/ch9.ppt>) 

10. (2-4? Nov) Message Passing
    -- [PDF](<slides/ch10.pdf>) 
    -- [PPT](<slides/ch10.ppt>) 

11. (7?-14 Nov) Concurrent Architectures

    (14 Nov) Review for Exam #2
	
    (16 Nov) No class because of Apple seminar
	
	**(18 Nov) Examination #2**
	
	(28 Nov) Return Exam #2
	
12. (28-30 Nov) Timed Systems 
    -- [PDF](<slides/ch12.pdf>) 
    -- [PPT](<slides/ch12.ppt>) 

13.  (Not used 2016) Logical Properties
     -- [PDF](<slides/ch14.pdf>) 
     -- [PPT](<slides/ch14.ppt>) 


## References 

101. [Textbook website](<http://www.doc.ic.ac.uk/~jnm/book/>)

     -   [demo programs  
	     ](<http://www.doc.ic.ac.uk/~jnm/book/book_applets/concurrency.html>)  
		 
	 -   [LTS analyzer  
	     ](<http://www.doc.ic.ac.uk/~jnm/book/ltsa/LTSA_applet.html>)  
 		 
102. [Local copies of textbook slides](<slides/>) 

103. [Local copies of LTSA tools](<tools/>)

104. [Local copies of demo applets](<demos/>)




