next up previous contents
Next: Unix Tools Up: Michaelmas Term 1998: Part Previous: ECAD

Concurrent Systems

Lecturer: Dr J.M. Bacon (jmb@cl.cam.ac.uk)

No. of lectures: 12

Prerequisite course: Operating Systems

This course is a prerequisite for Distributed Systems (Part II) and Further Java (Part IB).

Requirements.
Requirements for support of concurrency in systems. Overview of OS structure and dynamic invocation; modules, processes and protocols. Microkernel versus closed OS structure. Object modelling. [2 lectures]

Device, I/O and process management.
Revision overview of device and process management and process scheduling. Support for concurrency in programming languages. Thread management in language systems and operating systems. [2 lectures]

Interprocess communication (IPC).
System structure; synchronisation primitives; concurrency control without hardware support. Semaphores and their implementation; examples. Shared memory mechanisms; no-shared-memory mechanisms. Distributed IPC; remote procedure call (RPC). [4 lectures]

Transactions.
Composite operations. Crashes and persistent data. Deadlock. Concurrency control for composite operations. Crash recovery; distributed transactions. [4 lectures]

Recommended books:


Bacon, J. (1997). Concurrent Systems. Addison-Wesley (2nd ed.).

Tanenbaum, A.S. (1992). Modern Operating Systems. Prentice-Hall.

Silberschatz, A. & Galvin, P.C. (1998). Operating System Concepts. Addison-Wesley (5th ed.).

Gray, J. & Reuter, A. (1993). Transaction Processing: Concepts and Techniques. Morgan Kaufmann.


next up previous contents
Next: Unix Tools Up: Michaelmas Term 1998: Part Previous: ECAD
Christine Northeast
1998-10-01