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

bài giảng hệ điều hành mạng nâng cao chương iv các cơ chế giao tiếp giữa các tiến trình phân tán

20 398 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 20
Dung lượng 1,51 MB

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

Nội dung

Mô h ình truyền thông gi ữacác tiến trình... Các phương th ức truy ền thông• Truyền thông giữa các tiến trình Inter Process Communication - IPC được hỗ trợ bởi HĐH mạng/HĐH phân tán theo

Trang 1

Hệ điều hành m ạng

nâng cao

Giảng viên: Ho àng Xuân D ậu

Email: dauhoang@vnn.vn Khoa Công ngh ệ thông tin 1

Học viện Công ngh ệ BC-VT

Trang 2

IV C ác cơ ch ế giao ti ếp giữa các tiến trình phân t án

Trang 3

Mô h ình truyền thông gi ữa

các tiến trình

Trang 4

Các phương th ức truy ền thông

• Truyền thông giữa các tiến trình (Inter

Process Communication - IPC) được hỗ

trợ bởi HĐH mạng/HĐH phân tán theo 2

phương thức chủ yếu:

– Truyền thông điệp (Message Passing)

– Các cuộc gọi thủ tục từ xa (Remote

Procedure Calls)

Trang 5

Middlewares ph ục vụ truyền thông

Trang 6

Truy ền thông đi ệp

• Là phương thức truyền thông cơ sở được

hỗ trợ bởi hệ điều hành

• Cho phép một tiến trình trên một máy

truyền môt gói dữ liệu hoặc một chuỗi

bytes đến một tiến trình khác trên máy đó hoặc máy khác

• Socket là một trong những kỹ thuật được dùng phổ biến nhất trong phương thức

truyền thông điệp.

Trang 7

Socket v à Ports

Socket = Internet address + Port

Trang 8

Sockets (ti ếp)

• Các đặc điểm:

– Là điểm giao tiếp trong truyền thông giữa các tiến

trình

– Các thông điệp được truyền giữa các sockets

– Socket có thể tạo dựa trên giao thức TCP hoặc UDP – Mỗi tiến trình có thể sử dụng nhiều cổng để tạo nhiều sockets

– Không thể chia sẻ các cổng, trừ trường hợp sử dụng

IP multicast.

• Cài đặt:

– Socket được hỗ trợ bởi hầu hết các HĐH

– Java sockets

Trang 9

Sockets: tương t ác server -client

Trang 10

Gọi thủ tục từ xa - RPC

• Là phương thức truyền thông giữa các tiến trình được thực hiện theo cơ chế gọi thủ tục/hàm

• Khác với gọi thủ tục cục bộ (trong một tiến

trình), thủ tục được gọi từ xa được thực hiện

trong ngữ cảnh của một tiến trình khác, và tiến trình đó có thể chạy ở máy khác

• RPC giúp đơn giản hoá lập trình truyền thông,

do người lập trình không phải tự viết toàn bộ

phần mã phục vụ truyền thông giữa các tiến

trình

Trang 11

Gọi thủ tục từ xa (ti ếp)

Trang 12

Các lớp/nh óm RPC

• RPC nhóm 1:

– RPC được tích hợp vào ngôn ngữ lập trình

– Ví dụ: Java RMI

• RPC nhóm 2:

– Một ngôn ngữ đặc biệt (Interface Definition

nghĩa giao diện giao tiếp

– Độc lập với ngôn ngữ lập trình

– Ví dụ: Sun RPC, CORBA

Trang 13

RPC đ ồng bộ và không đ ồng b ộ

(a) - RPC đồng bộ; (b) - RPC không đồng bộ

Trang 14

Cơ ch ế thực hiện RPC

Proxies, stubs, dispatchers được tạo ra tự động nhờ trình biên dịch IDL

Trang 15

Client: c ác thành ph ần chính

• Proxies:

– Đóng vai trò như phiên bản cục bộ của giao diện từ xa

– Chuyển hướng tất cả các cuộc gọi đến client stub

• Client stub:

– Thực hiện marshalling các cuộc gọi và yêu

cầu truyền lại thông điệp

Trang 16

Server: c ác thành ph ần chính

– Tiếp nhận các thông điệp đến và chuyển

chúng cho server stub ph ù hợp

– Unmarshals các thông điệp và triệu gọi thực hiện các đoạn mã phù hợp

– Marshals các thông điệp trả lời và khởi tạo việc gửi chúng cho client

Trang 17

RPC - Ví dụ

Trang 18

RPC - Ví dụ

Trang 19

RPC - Ví dụ

Trang 20

Cơ chế thực hiện Java RMI

Ngày đăng: 22/07/2014, 20:52

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w