Distributed operating systems are potentially more powerful than tradi
tional operating systems due to their advantages of fault tolerance, p
arallelism, scalability, reliability, resource sharing and availabilit
y. The price to pay for such power is the complexity encountered in so
ftware design and implementation of such systems. Various software too
ls like Remote Procedure Calls (RPC) have been devised to help simplif
y the process of building distributed applications. Light-weight proce
sses or threads is another such tool that helps improve system perform
ance. In this project, support for atomic transactions has been provid
ed on an existing RPC system. By incorporating a multithreaded archite
cture in this system, the goal of improving performance has also been
attempted. A traditional banking system has been prototyped along the
above goals of combining high performance with support for atomic tran
sactions in distributed systems. (C) 1997 by Elsevier Science Inc.