Synopses & Reviews
Doreen Galli uses her considerable academic and professional experience to bring together the worlds of theory and practice providing leading edge solutions to tomorrow's challenges. Distributed Operating Systems: Concepts and Practice
offers a good balance of real world examples and the underlying theory of distributed computing. The flexible design makes it usable for students, practitioners and corporate training.
This book describes in detail each major aspect of distributed operating systems from a conceptual and practical viewpoint. The operating systems of Amoeba, Clouds, and Chorus (the base technology for JavaOS) are utilized as examples throughout the text; while the technologies of Windows 2000, CORBA, DCOM, NFS, LDAP, X.500, Kerberos, RSA, DES, SSH, and NTP demonstrate real life solutions. A simple client/server application is included in the appendix to demonstrate key distributed computing programming concepts. This book proves invaluable as a course text or as a reference book for those who wish to update and enhance their knowledge base. A Companion Website provides supplemental information.
- A broad range of distributed computing issues and concepts: Kernels, IPC, memory management, object-based operating systems, distributed file systems (with NFS and X.500), transaction management, process management, distributed synchronization, and distributed security
- A major case study of Windows 2000 to demonstrate a real life commercial solution
- Detail Boxes contain in-depth examples such as complex algorithms
- Project-oriented exercises providing hands-on-experience
- Relevant sources including 'core' Web and ftp sites, as well as research papers
- Easy reference with complete list of acronyms and glossary to aid readability
This book explores the concepts and practice in distributed computing, and is designed to be useful in helping practitioners and corporate training keep up with software technology that pertains to a majority of all computers and their applications. A two-part approach presents the basic foundation for distributed computing and then expands on these topics to cover advanced distributed operating systems. It describes in detail every major aspect of the topics, and includes relevant examples of real operating systems to reinforce concepts and illustrate decisions that must be made by distributed system designers. Chapters include information on interprocess communication, memory management, concurrency control, and object-based operating systems. More advance material covers distributed process management, file systems, synchronization, and security. For developers and managers active in the client/server technology industry who want to update and enhance their knowledge base.
Includes bibliographical references (p. 437-454) and index.
About the Author
As one of the emerging experts in distributed computing and system integration, DOREEN L. GALLI, Ph.D., currently working within the telecommunications industry in Atlanta, Georgia. Besides her industry contributions to IBM Center for Advanced Studies, Premiere Technologies and the successful deployment for the Centennial Olympic Games, Dr. Galli has been recognized by Who's Who Among America's Teachers. As an Associate Professor of Computer Science, she has taught many courses on advanced system and network technologies. She received her Ph.D. degree from the University of Waterloo.
Table of Contents
1. Introduction to Distributed Systems.
What is an Operating System? What is a Distributed System? What is a Real-Time System? What is a Parallel System? Sample Distributed Application. Summary. References for Further Study. Exercises.
2. The Kernel.
Kernel Types. Processes and Threads. Process Management. Process Scheduling. Summary. References for Further Study. Exercises.
3. Interprocess Communication.
Selection Factors. Message Passing. Pipes. Sockets. Remote Procedure Calls. Summary. References for Further Study. Exercises.
4. Memory Management.
Review of Centralized Memory Management. Simple Memory Model. Shared Memory Model. Distributed Shared Memory. Memory Migration. Summary. References for Further Study. Exercises.
5. Concurrency Control.
Mutual Exclusion and Critical Regions. Semaphores. Monitors. Locks. Software Lock Control. Token-Passing Mutual Exclusion. Deadlocks. Summary. References for Further Study. Exercises.
6. Object-Based Operating Systems.
Introduction to Objects. The Clouds Object Approach. Chorus V3 and COOL v2. Amoeba. Distributed Component Object Model (DCOM). CORBA Overview. Summary. References for Further Study. Exercises.
7. Distributed Process Management.
Distributed Scheduling Algorithm Choices. Scheduling Algorithm Approaches. Coordinator Elections. Orphan Processes. Summary. References for Further Study. Exercises.
8. Distributed File Systems.
Distributed Name Service. Distributed File Service. Distributed Directory Service. NFS. X.500. Summary. References for Further Study. Exercises.
9. Transaction Management & Consistency Models.
Transaction Management Motivation. ACID Properties of a Transaction. Consistency Models. Two-Phase Commit Protocol. Nested Transactions. Implementation Issues for Transactions. Summary. References for Further Study. Exercises.
10. Distributed Synchronization.
Introduction to Global Time. Physical Clocks. Network Time Protocol (NTP). Logical Clocks. Summary. References for Further Study. Exercises.
11. Distributed Security.
Crytography and Digital Signatures. Authentication. Access Control (Firewalls). Summary. References for Further Study. Exercises.
12. CASE STUDY: Windows 2000.
Overview: Windows 2000 Design. Kernel Mode Overview. Plug and Play. NT Files System in Windows 2000 (NTFS). Active Directory. Microsoft Management Console (MMC). Cluster Service. Windows 2000 Security. HYDRA-A Thin Client. Summary. References for Further Study. Exercises.
Appendix A. Surgical Scheduling Program.
Documentation Overview. Design Documentation. Functional Descriptions. Data Dictionary. User Documentation. Client Source Code. Server Source Code. Common Source Code. File Initialization Source Code: write_ca.c.
List of Acronyms.
Glossary of Terms.