Evolving the Unix System Interface to Support Multithreaded Programs
Author
Paul R McJones,Garret F Swart
Abstract
Multiple threads (program counters executing in the same address space) make it
easier to write programs that deal with related asynchronous activities and
that execute faster on shared-memory multiprocessors. Supporting multiple
threads places new constraints on the design of operating system interfaces.
Part I of this report presents guidelines for designing (or redesigning)
interfaces for multithreaded clients. We show how these guidelines were used
to design an interface to UNIX-compatible file and process management
facilities in the Topaz operating system. Two implementations of this interface
are in everyday use: a native one for the Firefly multiprocessor, and a layered
one running within a UNIX process. Part II is the actual programmer's manual
for the interface discussed in Part I.
Address
Palo Alto, CA 94301
Institution
Digital Systems Research Center
Publication Date
0000-00-00
Location
A hard-copy of this is in the Papers Cabinet