1. Trang chủ
  2. » Công Nghệ Thông Tin

Lecture Operating systems Internals and design principles (6 E) Chapter 16 William Stallings

61 379 0
Tài liệu được quét OCR, nội dung có thể không chính xác

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 61
Dung lượng 632 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Chapter 16 Client server computing. In this chapter, we begin with an examination of some of the key concepts in distributed software, including client server architecture, message passing, and remote procedure calls. Then we examine the increasingly important cluster architecture

Trang 1

Chapter 16 Client/Server Computing

Patricia Roy Manatee Community College, Venice,

Trang 2

Client/Server Computing

• Client machines are generally single-user PCs or workstations that provide a highly user-friendly interface to the end user

• Each server provides a set of shared

services to the clients

• The server enables many clients to share access to the same database and enables the use of a high-performance computer system to manage the database

Trang 3

Client/Server Terminology

Trang 4

Generic Client/Server

Environment

Trang 5

Client/Server Applications

• Basic software is an operating system

running on the hardware platform

• Platforms and the operating systems of

client and server may differ

• These lower-level differences are

irrelevant as long as a client and server

share the same communications protocols and support the same applications

Trang 6

Generic Client/Server

Architecture

Trang 7

Client/Server Applications

• Bulk of applications software executes on the server

• Application logic is located at the client

• Presentation services in the client

Trang 8

Database Applications

• The server is a database server

• Interaction between client and server is in the form of transactions

– the client makes a database request and

receives a database response

• Server is responsible for maintaining the database

Trang 9

Client/Server Architecture for

Database Applications

Trang 10

Client/Server Database Usage

Trang 12

Classes of Client/Server

Applications

• Host-based processing

– Not true client/server computing

– Traditional mainframe environment

Trang 13

Classes of Client/Server

Applications

• Server-based processing

– Server does all the processing

– Client provides a graphical user interface

Trang 16

Three-tier Client/Server

Architecture

• Application software distributed among

three types of machines

Trang 17

Three-tier Client/Server

Architecture

Trang 18

File Cache Consistency

• File caches hold recently accessed file

Trang 19

Distributed File Cacheing in

Sprite

Trang 20

• Set of tools that provide a uniform means and style of access to system resources across all platforms

• Enable programmers to build applications that look and feel the same

• Enable programmers to use the same

method to access data

Trang 21

Role of Middleware in Client/Server Architecture

Trang 22

Logical View of Middleware

Trang 23

Distributed Message Passing

Trang 26

Basic Message-Passing

Primitives

Trang 27

Reliability versus Unreliability

• Reliable message-passing guarantees

delivery if possible

– Not necessary to let the sending process

know that the message was delivered

• Send the message out into the

communication network without reporting success or failure

– Reduces complexity and overhead

Trang 28

Blocking versus Nonblocking

• Nonblocking

– Process is not suspended as a result of

issuing a Send or Receive

– Efficient and flexible

– Difficult to debug

Trang 29

Blocking versus Nonblocking

Trang 30

Remote Procedure Calls

• Allow programs on different machines to interact using simple procedure call/return semantics

• Widely accepted

• Standardized

– Client and server modules can be moved

among computers and operating systems

easily

Trang 31

Remote Procedure Call

Mechanism

Trang 33

– Does not block the caller

– Enable a client execution to proceed locally in parallel with server invocation

Trang 36

– Illusion is one machine

– System can run on its own

Trang 38

Cluster Configurations

Trang 39

• Shared nothing

– Reduces communication overhead

– Disks partitioned into volumes

– Each volume owned by a computer

– If computer fails, another computer has ownership of the volume

Trang 40

Cluster Configurations

Trang 41

• Shared disk

– Multiple computers share the same disks at the same time

– Each computer has access to all of the

volumes on all of the disks

Trang 42

Clustering Methods: Benefits

and Limitations

Trang 43

Clustering Methods: Benefits

and Limitations

Trang 44

Operating System Design

Issues

• Failure management

– Highly available cluster offers a high

probability that all resources will be in service

• No guarantee about the state of partially executed transactions if failure occurs

– Fault-tolerant cluster ensures that all

resources are always available

Trang 45

Operating System Design

Trang 46

Operating System Design

Trang 47

Cluster Computer Architecture

• Cluster middleware services and functions

– Single entry point

– Single file hierarchy

– Single control point

– Single virtual networking

Trang 48

Cluster Computer Architecture

• Cluster middleware services and functions

– Single memory space

– Single job-management system

– Single user interface

– Single I/O space

Trang 49

Cluster Computer Architecture

• Cluster middleware services and functions

– Single process space

– Checkpointing

– Process migration

Trang 50

Cluster Computer Architecture

Trang 51

Clusters Compared to SMP

• SMP is easier to manage and configure

• SMP takes up less space and draws less power

• SMP products are well established and stable

Trang 53

Windows Cluster Server

Trang 54

Windows Cluster Server

Trang 55

Windows Cluster Server Block

Diagram

Trang 57

Sun Cluster Structure

Trang 58

Sun Cluster File System

Extensions

Trang 59

Beowulf and Linux Clusters

• Key features

– Mass market commodity components

– Dedicated processors (rather than scavenging cycles from idle workstations)

– A dedicated, private network (LAN or WAN or internetted combination)

– No custom components

– Easy replication from multiple vendors

Trang 60

Beowulf and Linux Clusters

• Key features

– Scalable I/O

– A freely available software base

– Use freely available distribution computing

tools with minimal changes

– Return of the design and improvements to the community

Trang 61

Generic Beowulf Configuration

Ngày đăng: 16/05/2017, 13:42

TỪ KHÓA LIÊN QUAN