CS 536S
- Distributed Systems Design (FL '03)
(Formerly
CS 576S)
Dr. Catalin Roman
Class
notes on certain topics are now available here.
Class
Information
| Instructor | : Catalin Roman (935-6132) roman@wustl.edu |
| Meeting Time | : M-W 5:30 P.M. - 7:00 P.M. |
| Location | : Cupples II 202 |
| Prerequisites | : Senior or graduate standing |
| Credit | : 3 units |
| Textbook | : Selected articles (subject to change) |
| Grading | : They are assigned based on the homework alone. In order to obtain a passing grade, all homework must be completed. No late homework is accepted without instructor’s permission as solutions are discussed in class. All homework must be typeset. |
| Newsgroup | : wu.cs.class.536 |
Overview
• Concurrency
and communication
• Mobile computing
• Security
• Real-time processing
• Multimedia computing
Modern computing environments
are highly distributed. This has been the result of major advances in networking
technology and their rapid assimilation by a society that functions in a highly
distributed and decentralized manner. The goal of this course is to familiarize
students with basic concepts, models, and languages that shaped recent developments
in distributed computing. The focus is on exploring new ways of thinking about
computing and communication that made the development of distributed software
systems possible. Competing concepts and design strategies will be examined
both from a theoretical and a practical perspective. The course starts with
a review of a broad range of models of concurrency and gradually shifts attention
to specialized areas of growing import to the computing field, e.g., real-time
processing, security, and multimedia. The emerging field of mobile computing
will receive special coverage throughout the course.
Homeworks
Homeworks will be assigned
in class. They will be due in class, and the due date will be determined when
the homework is handed out. All homeworks must be completed in order to pass
the class. All homeworks must be typeset.
[List of assigned
homeworks]
Syllabus
1. Shared Variables
* Andrews, G. R., Concurrent Processing: Principles and Practice, Benjamin/Cummings Pub. Co., 1991. (ch. 2-6)
* Homework #1
2. Message Passing
* Andrews, G. R., Concurrent Processing: Principles and Practice, Benjamin/Cummings Pub. Co., 1991. (ch. 7-8)
* Bernstein, A. J., "Output Guards and Nondeterminism in 'Communicating Sequential Processes'," TPLS 2, No. 2., April 1980, pp. 234-238.* Homework #2
3. Remote Procedure Call* Andrews, G. R., Concurrent Processing: Principles and Practice, Benjamin/Cummings Pub. Co., 1991. (ch. 9)
* Liskov, B., An Overview of the Argus Language and System, MIT Technical Memo, 1984.
* Homework #3
4. Shared Dataspace (Linda, UNITY, Swarm)
* Cunningham, H. C., Roman, G.-C., and Plun, J. Y., "Assertional Reasoning about Dynamic Systems," Parallel Computations: Paradigms and Applications, Zomaya, A. Y., (editor), Chapman & Hall (London, UK).
* Homework #4
5. I/O Automata
* Lynch, N. A., and Tuttle, M. R., "An Introduction to Input/Output Automata," MIT Technical Memo MIT/LCS/TM-373, Nov. 1988.
* Homework #5
6. CSP
* Olderog, E.R., and Hoare, C. A. R., "Specification-Oriented Semantics for Communicating Porcesses," Acta Informatica 23, 1986, pp. 9-66.
* Homework #6
7 . Petri nets* Peterson, J. L., "Petri Nets," Computing Surveys 9, No. 3, Sept. 1977, pp. 223-252.
* Homework #7
8. Object-Oriented Models (Actors)
* Lieberman, H., "Concurrent Object-Oriented Programming in Act 1," Object-Oriented Programming, Yonezawa, A., and Tokoro, M., (editors), MIT Press, 1987, pp. 9-36.
* Agha, G., and Hewitt, C., "Concurrent Programming Using Actors" Object-Oriented Programming, Yonezawa, A., and Tokoro, M., (editors), MIT Press, 1987, pp. 37-53.* Homework #8
9. Data flow
* Davis, A. L., and Keller, R. M., "Data Flow Program Graphs," Computer 15, No. 2, 1984, pp. 26-41.
* Homework #9
10. Logic programming
* Clark, R. L., "Parallel Logic Programming," Computer Journal 33, No. 6, 1990, pp. 482-493.
* Homework #10
Mobile Computing (subject to change)
11. Research issues in wireless information systems
* Katz, R. H., "Adaptability and Mobility in Wireless Information Systems," IEEE Personal Communications, First Quarter, 1994, pp. 6-17.
* Imielinski, T., and Badrinath, B. R., "Mobile Wireless Computing: Solutions and Chalanges in Data Management," Technical Report, Rutgers University. Short version published in CACM 37, No. 10, October 1994, pp. 18-28.* Homework #11
12. High-water mark, access matrix, information flow, etc.
* Landwehr, C. E., "Formal Models of Computer Security," Computing Surveys 13, No. 3, September 1981, pp. 248-278.
* Homework #12
Real-time Processing (subject to change)
13. Reasoning about real-time behavior
* Alur, R., and Henzinger, T. A., "Logics and Models of Real-Time," (de Bakker et al, editors), LNCS 600, 1992, SpringerVerlag, pp. 74-106.
* Homework #13
Multimedia Computing (subject to change)
14. Hypermedia models and issues
* Halsz, F., and Schwartz, M., "The Dexter Hypertext Reference Model," CACM 37, No. 2, February 1994, pp. 30-39.
* Grønbæk, K., and Trigg, R. H., "Design Issues for a Dexter-Based Hypermedia System," CACM 37, No. 2, February 1994, pp. 40-49.* Hardman, L., Bulterman, D. C, A., and van Rossum, G., "The Amsterdam Hypermedia Model: Adding Time and Context to the Dexter Model," CACM 37, No. 2, February 1994, pp. 50-62.
* Grønbæk, K., Hem, J. A., Madsen, O. L., and Sloth, L., "Cooperative Hypermedia Systems: A Dexter-Based Architecture," CACM 37, No. 2, February 1994, pp. 64-74.
* Homework #14