Distributed Systems : Concepts and Design
معرفی کتاب «Distributed Systems : Concepts and Design» نوشتهٔ Quinn، Julia و George F Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair، منتشرشده توسط نشر Addison Wesley (Pearson Education Inc.) در سال 2012. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.
Broad and up-to-date coverage of the principles and practice in the fast moving area of Distributed Systems. Distributed Systems provides students of computer science and engineering with the skills they will need to design and maintain software for distributed applications. It will also be invaluable to software engineers and systems designers wishing to understand new and future developments in the field. From mobile phones to the Internet, our lives depend increasingly on distributed systems linking computers and other devices together in a seamless and transparent way. The fifth edition of this best-selling text continues to provide a comprehensive source of material on the principles and practice of distributed computer systems and the exciting new developments based on them, using a wealth of modern case studies to illustrate their design and development. The depth of coverage will enable readers to evaluate existing distributed systems and design new ones. Cover 1 Title Page 5 Copyright Page 6 CONTENTS 7 PREFACE 13 Acknowledgements 16 1 CHARACTERIZATION OF DISTRIBUTED SYSTEMS 19 1.1 Introduction 20 1.2 Examples of distributed systems 21 1.3 Trends in distributed systems 26 1.4 Focus on resource sharing 32 1.5 Challenges 34 1.6 Case study: The World Wide Web 44 1.7 Summary 51 2 SYSTEM MODELS 55 2.1 Introduction 56 2.2 Physical models 57 2.3 Architectural models 58 2.4 Fundamental models 79 2.5 Summary 94 3 NETWORKING AND INTERNETWORKING 99 3.1 Introduction 100 3.2 Types of network 104 3.3 Network principles 107 3.4 Internet protocols 124 3.5 Case studies: Ethernet, WiFi and Bluetooth 146 3.6 Summary 159 4 INTERPROCESS COMMUNICATION 163 4.1 Introduction 164 4.2 The API for the Internet protocols 165 4.3 External data representation and marshalling 176 4.4 Multicast communication 187 4.5 Network virtualization: Overlay networks 192 4.6 Case study: MPI 196 4.7 Summary 199 5 REMOTE INVOCATION 203 5.1 Introduction 204 5.2 Request-reply protocols 205 5.3 Remote procedure call 213 5.4 Remote method invocation 222 5.5 Case study: Java RMI 235 5.6 Summary 243 6 INDIRECT COMMUNICATION 247 6.1 Introduction 248 6.2 Group communication 250 6.3 Publish-subscribe systems 260 6.4 Message queues 272 6.5 Shared memory approaches 280 6.6 Summary 292 7 OPERATING SYSTEM SUPPORT 297 7.1 Introduction 298 7.2 The operating system layer 299 7.3 Protection 302 7.4 Processes and threads 304 7.5 Communication and invocation 321 7.6 Operating system architecture 332 7.7 Virtualization at the operating system level 336 7.8 Summary 349 8 DISTRIBUTED OBJECTS AND COMPONENTS 353 8.1 Introduction 354 8.2 Distributed objects 355 8.3 Case study: CORBA 358 8.4 From objects to components 376 8.5 Case studies: Enterprise JavaBeans and Fractal 382 8.6 Summary 396 9 WEB SERVICES 399 9.1 Introduction 400 9.2 Web services 402 9.3 Service descriptions and IDL for web services 418 9.4 A directory service for use with web services 422 9.5 XML security 424 9.6 Coordination of web services 429 9.7 Applications of web services 431 9.8 Summary 437 10 PEER-TO-PEER SYSTEMS 441 10.1 Introduction 442 10.2 Napster and its legacy 446 10.3 Peer-to-peer middleware 448 10.4 Routing overlays 451 10.5 Overlay case studies: Pastry, Tapestry 454 10.6 Application case studies: Squirrel, OceanStore, Ivy 467 10.7 Summary 476 11 SECURITY 481 11.1 Introduction 482 11.2 Overview of security techniques 490 11.3 Cryptographic algorithms 502 11.4 Digital signatures 511 11.5 Cryptography pragmatics 518 11.6 Case studies: Needham–Schroeder, Kerberos, TLS, 802.11 WiFi 521 11.7 Summary 536 12 DISTRIBUTED FILE SYSTEMS 539 12.1 Introduction 540 12.2 File service architecture 548 12.3 Case study: Sun Network File System 554 12.4 Case study: The Andrew File System 566 12.5 Enhancements and further developments 575 12.6 Summary 581 13 NAME SERVICES 583 13.1 Introduction 584 13.2 Name services and the Domain Name System 587 13.3 Directory services 602 13.4 Case study: The Global Name Service 603 13.5 Case study: The X.500 Directory Service 606 13.6 Summary 610 14 TIME AND GLOBAL STATES 613 14.1 Introduction 614 14.2 Clocks, events and process states 615 14.3 Synchronizing physical clocks 617 14.4 Logical time and logical clocks 625 14.5 Global states 628 14.6 Distributed debugging 637 14.7 Summary 644 15 COORDINATION AND AGREEMENT 647 15.1 Introduction 648 15.2 Distributed mutual exclusion 651 15.3 Elections 659 15.4 Coordination and agreement in group communication 664 15.5 Consensus and related problems 677 15.6 Summary 689 16 TRANSACTIONS AND CONCURRENCY CONTROL 693 16.1 Introduction 694 16.2 Transactions 697 16.3 Nested transactions 708 16.4 Locks 710 16.5 Optimistic concurrency control 725 16.6 Timestamp ordering 729 16.7 Comparison of methods for concurrency control 736 16.8 Summary 738 17 DISTRIBUTED TRANSACTIONS 745 17.1 Introduction 746 17.2 Flat and nested distributed transactions 746 17.3 Atomic commit protocols 749 17.4 Concurrency control in distributed transactions 758 17.5 Distributed deadlocks 761 17.6 Transaction recovery 769 17.7 Summary 779 18 REPLICATION 783 18.1 Introduction 784 18.2 System model and the role of group communication 786 18.3 Fault-tolerant services 793 18.4 Case studies of highly available services: The gossip architecture, Bayou and Coda 800 18.5 Transactions with replicated data 820 18.6 Summary 832 19 MOBILE AND UBIQUITOUS COMPUTING 835 19.1 Introduction 836 19.2 Association 845 19.3 Interoperation 853 19.4 Sensing and context awareness 862 19.5 Security and privacy 875 19.6 Adaptation 884 19.7 Case study: Cooltown 889 19.8 Summary 896 20 DISTRIBUTED MULTIMEDIA SYSTEMS 899 20.1 Introduction 900 20.2 Characteristics of multimedia data 904 20.3 Quality of service management 905 20.4 Resource management 915 20.5 Stream adaptation 917 20.6 Case studies: Tiger, BitTorrent and End System Multicast 919 20.7 Summary 931 21 DESIGNING DISTRIBUTED SYSTEMS: GOOGLE CASE STUDY 933 21.1 Introduction 934 21.2 Introducing the case study: Google 935 21.3 Overall architecture and design philosophy 940 21.4 Underlying communication paradigms 946 21.5 Data storage and coordination services 953 21.6 Distributed computation services 974 21.7 Summary 982 REFERENCES 985 INDEX 1043 Save money.
Lighten your backpack.
Reduce your carbon footprint.
دانلود کتاب Distributed Systems : Concepts and Design
Lighten your backpack.
Reduce your carbon footprint.
This title is available as an eTextbook from CourseSmart.
Learn more at coursesmart.com
The new edition of this bestselling title on Distributed Systems has been thoroughly revised throughout to reflect the state of the art in this rapidly developing field. It emphasizes the principles used in the design and construction of distributed computer systems based on networks of workstations and server computers.
"[This] book aims to provide an understanding of the principles on which the Internet and other distributed systems are based; their architecture, algorithms and design; and how they meet the demands of contemporary distributed applications."--Page xii