An example of the LTS (Labeled Transition System) Course Information ... a systematic treatment of the concepts and issues in concurrency; a rigorous technique to ...
Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.
Parallel & Distributed Programming Shietung Peng
Course Information • Teaching materials • Text-book (option) • Concurrency:State Models & Java Programs by J. Magee & J. Kramer • Lecture notes: http://cis.k.hosei.ac.jp/~speng • Toolkit: http://cis.k.hosei.ac.jp/~speng/docu/Web.zip • LTS (Labeled Transition System) Analyzer • Example viewer
Course Information (Conti.) • An example of the LTS (Labeled Transition System)
Course Information (Conti.) • An example of the Java Applet:
Course Features • The features of the course • a systematic treatment of the concepts and issues in concurrency; • a rigorous technique to specify and model concurrent behavior, with analysis tools for animation and verification; • a wide range of Java examples to illustrate the concepts and issues in concurrent programming.
The Model-based Approach • A model is a simplified representation of the real world and includes only those aspects of the real-world system relevant to the problem at hand. • We take a model-based approach to the design of concurrent programs. • Our models represent the behavior of the real concurrent programs written in Java.
Course Contents • 1. Introduction • 2. Processes and Threads • 3. Concurrent Execution • 4. Shared Objects and Mutual Exclusion • 5. Monitors and Conditional Synchronization • 6. Deadlock • 7. Safety and Liveness Properties • 8. Model-based Design • 9.Timed Systems • 10. Parcel Router Design • 11. Game Design: Space Invader
Grading Policy • No exam • Homework: 6 exercises and1 project • Grade: 10% per exercise, 30% for project, and 10% for class attendance
Final Words • Concurrency is a fascinating and challenging area of software design. • Concurrent Java programs have applications in many fields in computer science. • I hope you will find this course interesting and enjoyable.