Đang chuẩn bị liên kết để tải về tài liệu:
Concepts, Techniques, and Models of Computer Programming - Chapter 11

Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ

Distributed Programming Một hệ thống phân phối là một tập hợp các máy tính được liên kết với nhau bởi một mạng lưới. Hệ thống phân phối được phổ biến trong xã hội hiện đại. Ví dụ kinh điển của hệ thống như vậy, Internet, đã được phát triển theo cấp số nhân kể từ khi thành lập vào cuối những năm 1970. Số lượng máy chủ là một phần của nó đã được tăng gấp đôi mỗi năm kể từ năm 1980. Câu hỏi làm thế nào để chương trình một hệ thống phân phối do đó. | Chapter 11 Distributed Programming A distributed system is a set of computers that are linked together by a network. Distributed systems are ubiquitous in modern society. The canonical example of such a system the Internet has been growing exponentially ever since its inception in the late 1970 s. The number of host computers that are part of it has been doubling each year since 1980. The question of how to program a distributed system is therefore of major importance. This chapter shows one approach to programming a distributed system. For the rest of the chapter we assume that each computer has an operating system that supports the concept of process and provides network communication. Programming a distributed system then means to write a program for each process such that all processes taken together implement the desired application. For the operating system a process is a unit of concurrency. This means that if we abstract away from the fact that the application is spread over different processes this is just a case of concurrent programming. Ideally distributed programming would be just a kind of concurrent programming and the techniques we have seen earlier in the book would still apply. Distributed programming is complicated Unfortunately things are not so simple. Distributed programming is more complicated than concurrent programming for the following reasons Each process has its own address space. Data cannot be transferred from one process to another without some translation. The network has limited performance. Typically the basic network operations are many orders of magnitude slower than the basic operations inside one process. At the time of publication of this book network transfer time is measured in milliseconds whereas computational operations are done in nanoseconds or less. This enormous disparity is not projected to change for the foreseeable future. Copyright 2001-3 by P. Van Roy and S. Haridi. All rights reserved. 714 Distributed .