Distributed Computer Systems: Theory and Practice is a collection of papers dealing with the design and implementation of operating systems, including distributed systems, such as the amoeba system, argus, Andrew, and grapevine. One paper discusses the concepts and notations for concurrent programming, particularly language notation used in computer programming, synchronization methods, and also compares three classes of languages. Another paper explains load balancing or load redistribution to improve system performance, namely, static balancing and adaptive load balancing. For program efficiency, the user can choose from various debugging approaches to locate or fix errors without significantly disturbing the program behavior. Examples of debuggers pertain to the ada language and the occam programming language. Another paper describes the architecture of a real-time distributed database system used for computer network management, monitoring integration, as well as administration and control of both local area or wide area communications networks. The book can prove helpful to programmers, computer engineers, computer technicians, and computer instructors dealing with many aspects of computers, such as programming, hardware interface, networking, engineering or design.