Tuesday, Thursday: 12:30-1:45pm. AVW 1112.
Familiarity with concurrent programs, e.g. CMSC 412 or 612, or permission of instructor.
This course deals with the specification and design and verification of concurrent systems, particularly layered concurrent systems as found in operating systems and networking.
The methodology covers both syntatic (e.g. C++ prototypes) and semantic properties (e.g. order of calling, dependencies between paramenters). The semantic properties include both safety (e.g. consistency of distributed memory accesses) and progress (e.g. termination of every memory access). Time permitting, we will also consider concurrent real-time systems.
The methodology emphasizes separation of interfaces (i.e. specifications) and modules (i.e. implementations). The methodology will be applied to operating systems and networking problems, for example, cache coherence and distributed shared memory, sequential and other types of consistency, atomic broadcasts and multicasts, file systems, transaction processing, atomic commits and serializability, networking layers such as the TCP/IP stack, etc.
Notes and papers distributed in class.
Midterm exam approx 30% Final exam approx 40% Homework/project approx 30%
The MS comprehensive exam in this course consists of both the midterm exam and final exam.
Generated by latex2html-95.1