CS544: Distributed Software Systems Development

Douglas C. Schmidt
Department of Computer Science
School of Engineering and Applied Science
Washington University in St. Louis

Administrivia


Prerequisites


Handouts

The following are electronic versions of my course handouts. Most of these handouts are stored in compressed postscript 4-up on a page. Files ending in .gz are compressed with GNU Zip. To create .gz files use gzip; to uncompress them use gunzip (or gzip -d). You can use your favorite search engine to find the most recent versions of these tools or get them from the University of Texas. In addition, Eric S Rosenthal has donated a perl script that converts the 4-up handouts to 1-up handouts.

Intro Material

Network Programming

  1. Overview of C++ (Aug 28th)
  2. Overview of Remote Procedure Call (RPC) (Sept 4th)
  3. Overview of Sockets (Sept 9 - 11th)
  4. Overview of ACE C++ Socket Wrappers (Sept 16th)
  5. Alternative Techniques for Designing Concurrent Server Daemons using ACE (Sept 18th and Sept 25th)
  6. An Overview of Multi-threading Mechanisms (Sept 30th, October 2nd, October 9th, October 14th)
  7. An Overview of Java (October 7th)
  8. The ACE Service Configurator Framework (October 14th)
  9. CORBA Event Services (October 16th)
  10. Patterns and frameworks for WWW clients/servers using ACE (October 21st and 23rd)
  11. An Overview of Java Threading (October 28th, 30th, and November 4th)
  12. An Overview of CORBA (November 4th, 6th, 13th, 18th, 20th)
  13. Multi-threading CORBA Servers (November 25th)

Java

  1. Online Java Tutorial


Programming Assignments

The following is a partial list of the programming assignments in the class. More will be added shortly. Please following the submission guidelines when mailing your solutions electronically.

In addition, CS544 will have a final project. This project will involve building a substantial distributed software application using one or more of the technologies covered in the programming assignments. To get you started, Raman Kannan has some thoughts and ideas on improving WWW browser capabilities.


Related Links

Sockets

ACE

HTTP

CORBA

Java


Back to CS Courses home page.