1. Trang chủ
  2. » Luận Văn - Báo Cáo

Mô hình và chức năng của bộ cung cấp phân tán

28 339 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

Tiêu đề Mô hình và chức năng của bộ cung cấp phân tán
Tác giả Lí Quang Vũ
Người hướng dẫn PGS- TS Lí Văn Sơn
Thể loại Tiểu luận
Định dạng
Số trang 28
Dung lượng 260,5 KB

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

Nội dung

Một tiến trình nào đó cần sử dụng tài nguyên để phát triển công việc của mìnhphải yêu cầu bộ cung cấp một cách hợp thức bằng cách gởi thông điệp yêu cầu.. Bộ cung cấp có thể áp dụng nhiề

Trang 1

LỜI MỞ ĐẦU

Ngày nay, với sự phát triển thần kỳ, ngành công nghệ thông tin đã đem đến cho loài người rất nhiều tiện ích trong công việc và trong cuộc sống Dù ở bất cứ nơi đâu, chúng ta đều có thể giao tiếp, chia sẽ thông tin, tài liệu thông qua các hệ thống thông tin Các thành tựu mới được phát minh ra nối tiếp nhau, trong đó phải kể đến các phần mềm tăng khả năng điều hành, khai thác hiệu quả các tài nguyên của hệ thống tin học Đặc biệt, các nhà nghiên cứu và các lập trình viên chuyên nghiệp rất quan tâm đến việc nghiên cứu và ứng dụng hệ thống tin học phân tán.

Trong phạm vi của đề tài, tôi chủ yếu trình bày “Mô hình và chức năng của bộ cung cấp phân tán ” Tôi xin chân thành cảm ơn thầy giáo PGS- TS Lê Văn Sơn đã

nhiệt tình giảng dạy và giúp tôi hoàn thành tiểu luận này

Học viên: Lê Quang Vũ 1

Trang 2

CHƯƠNG I : MÔ HÌNH VÀ CHỨC NĂNG CỦA BỘ CUNG CẤP

PHÂN TÁN

I Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán:

I.1 Một số khái niệm

Vấn đề cung cấp tài nguyên thường được đánh giá như là một trong những lĩnhvực tri thức rất quan trọng vì nó được vận dụng thường xuyên trong quá trình triển khainghiên cứu, khảo sát, phân tích, thiết kế và xây dựng các hệ điều hành nói chung, hệ tinhọc phân tán nói riêng

Việc thực hiện xây dựng các tiến trình của một ứng dụng phân tán đòi hỏi phải

có các đối tượng khác nhau như bộ xử lý, bộ nhớ, thiết bị ngoại vi, các tập tin, Bêncạnh đó cần phải có quyền được truy cập theo kiểu loại trừ tương hỗ đến các thông tin,quyền được sử dụng các hàm, thủ tục và các chương trình

Tài nguyên được định nghĩa như một đối tượng mà trong đó các quy tắc sử dụng

và chia sẽ được kết hợp với nhau, đó là vấn đề quyền truy cập loại trừ hay truy cập chia

sẽ, có hạn chế số lượng người sử dụng hay không

Khái niệm giao dịch là một thực thể sử dụng chẳng hạn như người sử dụng cáctài nguyên thường được sử dụng trong hệ tin học phân tán Giao dịch là phép toán hợpthành một logic hoàn chỉnh mà việc triển khai nó có thẻ dẫn đến thực hiện một tiếntrình duy nhất hay nhiều tiến trình được định vị trên các trạm khác nhau

Một tiến trình nào đó cần sử dụng tài nguyên để phát triển công việc của mìnhphải yêu cầu bộ cung cấp một cách hợp thức bằng cách gởi thông điệp yêu cầu Thôngđiệp yêu cầu này được gọi ngắn gọn là yêu cầu Như vậy, một tiến trình có nhu cầu tàinguyên sẽ bị treo chừng nào đó tài nguyên đó còn chưa được giải phóng hay chưa đượccung cấp cho nó

Bộ cung cấp có thể áp dụng nhiều kiểu cung cấp khác nhau như tiến trình duynhất, tập hợp các tiến trình, tập hợp các thủ tục,…Các thông điệp yêu cầu sử dụng tàinguyên cũng có thể có các dạng khác nhau như gọi thủ tục, thông báo, thực hiện cáclệnh đặc biệt…

Thuật ngữ tải là tập hợp các yêu cầu tuân theo các quy tắc của một bộ cung cấpvới các tham số đặc trưng : số lượng các yêu cầu được cung cấp tài nguyên, bản chấtcủa các vấn đề , phân tán theo thời gian các yêu cầu tạo ra nó

Một yêu cầu được thoả mãn bởi bộ cung cấp tài nguyên cho tiến trình đề nghịvới điều kiện là yêu cầu đó phải tuân thủ các quy định nhất định

Có hai điều kiện cho tiến trình mất khả năng sử dụng tài nguyên đã được cungcấp là :

Giải phóng: là tiến trình phát tín hiệu ngừng sử dụng tài nguyên.

Trang 3

Thu hồi: là sự lấy lại tài nguyên đã được cung cấp cho tiến trình Bộ cung

cấp tài nguyên sẽ tiến hành công việc này

Hoạt động của một tập hợp các tiến trình trên một tập hợp các tài nguyên dùngchung được xem là tuyệt vời nếu không để xảy ra bế tắc và thiếu thốn tài nguyên vĩnhviễn

Bế tắc hay còn gọi là khóa tương hỗ là sự kẹt chéo lẫn nhau có tính chất sốngcòn của các tiến trình Bế tắc diễn ra khi hai tiến trình đang sử dụng hai tài nguyên lạiphát yêu cầu về nhu cầu sử dụng tài nguyên mà tiến trình còn lại đang sử dụng

Chúng ta sẽ hình dung vấn đề một cách chi tiết, rõ ràng hơn qua hình 2 bên dưới:

Theo hình vẽ, ta có bốn tài nguyên T1, T2, T3, T4 và có ba tiến trình nhu cầu tàinguyên Tr1, Tr2, Tr3, Cả ba tiến trình này đều đang ở trạng thái bế tắc Tiến trình Tr2chờ tài nguyên T1 do Tr1 đang chiếm giữ Tiến trình Tr1 chờ tài nguyên T2 được giảiphóng bởi Tr1 và Tr3 Thêm vào đó tiến trình Tr1 chờ tiến trình Tr2 giải phóng T1

Thiếu tài nguyên vĩnh viễn là sự chờ đợi bất tận của một tiến trình mà yêu cầucủa nó trễ đến mức không thể xác định được Nguyên nhân của hiện tượng này có nhiềunhưng chúng ta có thể chỉ ra ví dụ thường gặp là do sử dụng luật ưu tiên để cung cấp tàinguyên

Một chiến lược cung cấp tài nguyên tồi cũng có thể là nguồn gốc huỷ hoại hiệunăng hoạt động của hệ do các hiện tượng sốc làm tăng các yêu cầu mà không được đápứng của một số tài nguyên Chẳng hạn như sự sụp đổ của hệ đa chương trình Để tránhcác hiện tượng đó, bộ cung cấp tài nguyên cần phải đảm bảo chức năng điều khiển

Ta có thể chia thành hai phương diện để nghiên cứu:

Phương diện 1: Phân tán các yêu cầu giữa các tài nguyên tương đương có

khả năng thỏa mãn Chức năng này gọi là phân phối tải Trong hệ thống phân tánHọc viên: Lê Quang Vũ 3

T 3

T 1

Trang 4

, nó cần phải tạo điều kiện để tránh tình hình mà ở đó các yêu cầu đợi đến lượtđược thoã mãn trên một trạm bị đầy, trong khi đó các tài nguyên tương đương lạirỗi trên các trạm khác.

Phương diện 2: Giới hạn số lượng các yêu cầu được phép cho một số tài

nguyên Việc đó có thể thực hiện bằng cách hạn chế ( tĩnh hay động) số các tiếntrình hay số các giao dịch được chọn (trúng tuyển) sử dụng toàn bộ hay từngphần tài nguyên Ta gọi trưòng hợp này là điều khiển tải tổng quát

Tóm lại, Bộ cung cấp cần phải phân phối các tài nguyên trên cơ sở tuân thủ cácquy tắc sử dụng, tránh xảy ra bế tắc và thiếu thốn vô hạn, phân bố tải tương đối đồngđều giữa các tài nguyên cùng loại ( cùng có thể thỏa mãn) và giới hạn nhu cầu nhằmduy trì hệ thống hoạt động đạt mức hiệu quả nhất định

Mục đích của phần này là phân tích các vấn đề mới phát sinh chỉ trong các hệphân tán và giới thiệu các giải thuật hoạt động trong môi trường phân tán

Việc triển khai vấn đề cung cấp tài nguyên phân tán còn ít và chúng ta cũngkhông có nhiều kinh nghiệm về việc hoạt động của hệ này

I.2 Cung cấp tài nguyên duy nhất

Vấn đề cung cấp tài nguyên duy nhất trên một trạm trong hệ phân tán liên quanđến việc phân phối tài nguyên này cho một tập hợp các tiến trình trên cơ sở quy tắc:truy cập loại trừ hay chia sẽ, có hệ số ưu tiên, không được mất,…Các tiến trình có thể

đề nghị sử dụng tài nguyên ngay tại trạm có tài nguyên mà cũng có thể ở các trạm khác

từ xa

Việc quản lý các truy cập đến một tài nguyên duy nhất có thể được thực hiệntheo hai cách sau:

Truy cập bằng một tiến trình duy nhất.

Truy cập bằng các tiến trình tương tranh

I.2.1 Truy cập bằng một tiến trình duy nhất.

Một tiến trình duy nhất hay còn gọi là server được giao nhiệm vụ quản lý tàinguyên Nó xử lý tất cả các yêu cầu truy cập từ các tiến trình và các khách Sự loại trừtruy cập được bảo đảm bởi tính duy nhất của server Server đồng thời cũng là chươngtrình đánh thức

Chương trình có thể viết như sau:

Vòng lặp:

M:=cho_thong_diep(nil) {Treo}

<Chương trình xử lý các yêu cầu và gởi trả kết quả>

Kết thúc vòng lặp

Trang 5

Do vậy, sơ đồ này loại bỏ tất cả các đặc tính song song để truy cập vào tàinguyên Tiến trình server có thể được lập trình để triển khai toàn bộ chiến lược liênquan đến loại trừ tương hỗ của các yêu cầu (độ ưu tiên, quyền truy cập tài nguyên).

I.2.2 Truy cập các tương tranh có điều kiện

Trong trường hợp này tài nguyên được truy cập bởi nhiều server, thông thường

có số lượng thay đổi Các server này thực hiện các truy cập tương ứng với các yêu cầudưới dạng thực hiện các thủ tục Việc thực hiện các thủ tục này được điều khiển bởi cơchế đảm bảo tôn trọng các quy tắc truy cập

Các quy tắc này được bắt đầu bằng hai cách bởi các tiến trình khách , hình vẽ 3dưới đây cho thấy việc truy cập bằng một chương trình duy nhất

Tiến trình đánh thức duy nhất D đứng sau hàng đợi làm nhiệm vụ phân phối yêucầu cho các server cục bộ Các tiến trình khách không biết server

Ở hình 4 bên dưới việc truy cập được tiến hành trực tiếp với các server Các máyserver đều được các tiến trình khách biết trước

Học viên: Lê Quang Vũ 5

Trang 6

Việc triển khai đặc biệt đối với các server có liên quan đến việc phối hợp chúngvới các điểm vào một modul quản lý tài nguyên như chương trình monitor thường đượcdùng trong các hệ điều hành.

I.3 Cung cấp một tập hợp các tài nguyên Vấn đề bế tắc

Tiến trình p đưa ra yêu cầu cung cấp tài nguyên e để thực hiện phép toán cài then

có tình loại trừ v_loai_tru_th(e) Ngoại trừ một số trường hợp đặc biệt, tất cả các tài

nguyên đều được truy cập theo kiểu loại trừ Nếu việc cung cấp hoàn toàn hợp thức thìtài nguyên này được giao cho p sử dụng Ta nói rằng tài nguyên này đã được p càithen , nếu không thì p bị treo và tất nhiên là p không cài then được tài nguyên này

Trong hệ phân tán, ta sẽ tập trung xem xét các giao dịch Ti có thể sử dụng các tàinguyên được định vị trên các trạm Mỗi một giao dịch được triển khai nhờ một tập hợpcác tiến trình thể hiện là các đại diện của chúng trên các trạm có thể thực hiện songsong Nhằm thu hồi lại tài nguyên e trên trạm Si , giao dịch thực hiện phép toán

V_loai_tru_th(e) thông qua đại diện Pij của mình trên trạm này

Ngoại trừ một số trường hợp đặc biệt, việc cung cấp tài nguyên diễn ra không cóthu hồi Một tài nguyên bị khóa bởi một tiến trình không thể rút nó trở về được Như thế

nó cần được giải phóng một cách tường minh bởi tiến trình này nhờ phép mở then cài

mo_then(e).

Như vậy có thể xảy ra rủi ro do bế tắc, khi các tiến trình truy cập loại trừ đượcphân phối mà không có khả năng thu hồi các tiến trình cần phải sử dụng đồng thờinhiều tài nguyên

Ví dụ có hai tiến trình p và q cùng sử dụng hai tài nguyên e1 và e2, chúng được

mô tả trong đoạn chương trình như sau:

không được giải phóng

Bế tắc có thể được giải quyết bằng cách dự báo và phòng tránh ( gọi là dựphòng) có nghĩa là tài nguyên được cung cấp theo kiểu có đề phòng trường hợp bế tắc.Một phương pháp khác có liên quan đến vấn đề này là phát hiện và chữa trị có nghĩa làkhi có sự cố thì quay trở về trạng thái trước đó

Các thuật toán dự phòng, phát hiện và chữa trị đã được nghiên cứu cho trườnghợp là tất cả các tài nguyên đều được quản lý bởi bộ cung cấp duy nhất Bộ cung cấpnày tiếp nhận tất cả các yêu cầu và biết rất rõ trạng thái của tất cả các tài nguyên

Trang 7

I.4 Phân tán chức năng cung cấp

Ví dụ rằng chức năng cung cấp tài nguyên không thể tin tưởng giao phó hoàntoàn cho một bộ cung cấp duy nhất mà được phân tán thành một tập hợp các bộ cungcấp trên các trạm khác nhau, trong đó mỗi bộ cung cấp chỉ quản lý các đối tượng cục bộcủa trạm đó mà thôi Chúng ta có hai nhóm phương pháp cho vấn đề đặt ra:

Duy trì tính duy nhất của trạng thái tài nguyên

Biểu hiện duy nhất của trạng thái tài nguyên được chia sẽ bởi tập hợp các bộcung cấp Biểu hiện này tuần hoàn giữa các trạm khác nhau dưới dạng một thôngđiệp Các trạm luân phiên đóng vai trò của bộ cung cấp tài nguyên mà mình đangchịu trách nhiệm quản lý Giải pháp này loại bỏ tất cả các khả năng song song,không loại bỏ khả năng mất thông điệp trạng thái, thiếu thốn tài nguyên mộtcách vô hạn

Phân tán biểu hiện trạng thái và chức năng cung cấp

Có rất nhiều giải pháp có thể:

Giải pháp 1: Ta duy trì tại mỗi trạm một bản sao trạng thái tài nguyên tổng quát.

Trong trường hợp này, cần phải bảo đảm sự gắn bó hữu cơ của các bản sao

Giải pháp 2: Ta phân tán biểu hiện trạng thái trên các trạm mỗi một trạm chỉ có

trạng thái của các tài nguyên cục bộ của mình Các quyết định được đưa ra trêncác trạm khác nhau cần phải được phối hợp theo kiểu sao cho dữ liệu của việccung cấp phải được gắn bó với nhau

Giải pháp 3: Một phương pháp đầy ấn tượng là nhóm sắp xếp nhằm bảo đảm

cho tất cả các yêu cầu tài nguyên xuất phát từ các tiến trình đến được các bộcung cấp khác nhau theo một trật tự duy nhất được cố định từ trước

Vấn đề thứ nhất là vấn đề nhiều bản sao thông tin Các phương pháp khác mangtính năng động cao cho phép ra các quyết định cung cấp tài nguyên xuất phát từ quanđiểm từng phần của trạng thái tài nguyên

I.4.1 Các phương pháp cung cấp sử dụng trạng thái tổng quát

Vấn đề quan trọng được đặt ra là tại sao có thể áp dụng thuật toán dự phòng bếtắc của các hệ tập trung vào môi trường phân tán theo kiểu duy trì trên mỗi trạm mộtbản sao trạng thái cung cấp của tất cả các tài nguyên

Nội dung của các bản sao trên các trạm của hệ có thể được phản ánh trong bảnsau đây:

Học viên: Lê Quang Vũ 7

Trang 8

Stt Nội dung của bản sao

1 Tập hợp tất cả các tài nguyên còn chưa được cung cấp

2 Tập hợp các tài nguyên đã cung cấp

3 Đối tượng đang chiếm giữ tài nguyên

4 Kiểu sử dụng

5 Tập hợp các yêu cầu không được thỏa mãn

6 Tập hợp các thông điệp dành cho trường hợp đã được sử dụng

7 Tập hợp các thông điệp dành cho trường hợp thất bại

Cung cấp tài nguyên chỉ được chấp thuận nếu trạng thái xuất phát từ việc cungcấp đó được đánh giá là chấp nhận được theo thuật toán đã sử dụng Trên cơ sở thựchiện một thuật toán và có cùng thông tin , mỗi trạm ra quyết định cung cấp căn cứ vàobản sao trạng thái cục bộ của nó Việc cung cấp cho tiến trình đề nghị sẽ thực hiện ngaytrên trạm có tài nguyên

Để cập nhật thông tin, mỗi tiến trình phát đi cho tập hợp nhất định các trạm:

Các thông điệp của mình.

Các yêu cầu của mình.

Các thông điệp giải phóng của mình.

Các bản sao trạng thái tổng quát trên các trạm phải có cùng các bước chuyểntrạng thái Để đảm bảo điều đó, cần phải xử lý các yêu cầu trong cùng một trật tự trêntất cả các trạm Trật tự này có thể khác với trật tự đến Ta có thể sử dụng các kỹ thuật

đã được kiểm tra như dấu, bộ tuần tự tuần hoàn để giải quyết vấn đề đồng bộ thông tin

Khi thực hiện một giao dịch Ti thì giao dịch này cần phải phát thông điệp hợpthức của tập hợp các tài nguyên mà nó định sử dụng Một tài nguyên chỉ có thể thu hồi,nếu đó là một phần của thông điệp

Ta định nghĩa một quan hệ là phụ thuộc thế năng giữa hai giao dịch TJ và Tk và

ký hiệu là Tj>Tk điều đó nói lên rằng Tj chậm hơn Tk

TJ >Tk nghĩa là tồn tại ít nhất một tài nguyên bị cài then bởi TJ và là thành phầnthuộc thông điệp Tk

Quan hệ này có thể được biểu diễn bằng đồ thị G, biến theo thời gian gọi là đồthị các xung đột thế năng Tồn tại vòng lặp trong đồ thị này sinh ra bế tắc

Trang 9

Ví dụ: Hãy đánh giá 3 giao dịch T1, T2 và T3 sử dụng ba tài nguyên e1,e2 và e3.

Ta ký hiệu a_loai_tru_th() là phép tốn thơng điệp.

Giả sử rằng các lệnh thực hiện theo trình tự t11, t21 ,t31, t12 , t22, t32 vào thời điểm tsau khi thực hiện các lệnh này, đồ thị G cĩ thể biểu diễn như sau Bế tắc khơng tránhkhỏi được Đồ thị G được biểu diễn trong hình vẽ 5 sau:

Để tránh bế tắc diễn ra, chúng ta phải duy trì tại mỗi trạm một bản sao của đồ thị

G và ta chỉ được cung cấp tài nguyên nếu việc cung cấp đĩ khơng phát sinh vịng lặptrên đồ thị này

Mỗi một thơng cáo, thơng điệp hay khuyến nghị giải phĩng đều nhận một dấurồi phát ra cho tất cả các trạm Để cập nhật bản sao của mình với đồ thị G, mỗi trạm xử

lý các thơng điệp mà nĩ nhận được trong một trật tự chặt chẽ được xác định bởi dấu căn

cứ theo phương pháp chỉ dẫn trong chương 4

I.4.2 Các phương pháp cung cấp theo kiểu sử dụng trạng thái từng phần.

Cĩ hai thuật tốn rất thích hợp với mơi trường phân tán Mỗi trạm chỉ quản lýcác tài nguyên cục bộ của mình và các quyết định cung cấp được đưa ra dựa trên thơngtin cục bộ Tất cả các tài nguyên đều được truy cập theo kiểu loại trừ

.

t 22 :v_loải_tru_th(e 2 ) .

.

t 23 :v_excl(e 3 )

t 31 :a_loải_tru_th(e 3 ,e 1 ) .

.

t 32 :v_excl(e 3 ) .

Trang 10

Đây là thuật toán Lomet với phiên bản sử dụng trạng thái từng phần.

Xét một ví dụ minh hoạ các khó khăn trong khi ứng dụng vào hệ phân tán

Trở lại với ví dụ đã xét ở phần trên, bổ sung thêm các điểm như sau : giả sử rằngcác tài nguyên e1,e2, và e3 được bố trí trên các trạm tương ứng với S1, S2 và S3 Nếu trạm

Si chỉ nhận các thông cáo tương ứng với tài nguyên mà nó quản lý thì nó chỉ duy trì đồthị Gi là hình ảnh thu nhỏ của G cho các giao dịch đã phát thông cáo Như vậy, sau khi

đã thực hiện t32, ta có các hình ảnh như hình 6 sau:

Rõ ràng thông qua ba đồ thị trên đây, ta không phát hiện mạch khép kín có thểdẫn đến tình trạng bế tắc Nhưng, nếu ở hệ tập trung hay trạng thái không phải từngphần, ta có đồ thị như hình 7 bên dưới

Trong thực tế mặc dù rằng không có đồ thị nào trong số này cho phép phát hiện

sự hình thành một vòng lặp bế tắc, nhưng trên một trạm cho trước nào đó, ta lại khôngthể dự phòng bế tắc có kết quả được

Ta sẽ thay thế điều kiện cung cấp trong đồ thị G không vòng một điều kiện khácmạnh hơn nhưng được kiểm tra bằng các thông tin cục bộ trên từng trạm

Để làm được điều đó, ta thêm vào cho từng đồ thì Gi’ hình ảnh thu nhỏ cho Si

của đồ thị một quan hệ trật tự toàn bộ chặt chẽ được xác định trên tập hợp các giaodịch Quan hệ trật tự này có thể có được nhờ phương tiện dấu Điều kiện cung cấp tàinguyên là duy trì tình trạng không vòng lặp cho các đồ thị Gi Căn cứ theo cấu trúc,điều kiện này có thể được kiểm tra cục bộ trên từng trạm.Ta sẽ được chỉ ra G có đượctình trạng không vòng lặp như thế nào Để làm việc đó, ta bắt đầu chỉ ra sự tồn tại củavòng trong G kéo theo sự tồn tại của vòng trong ít nhất một Gi’

Trang 11

Ta ký hiệu TJ>Tk lă quan hệ trật tự toăn phần chặt chẽ trín câc giao dịch Lúcnăy, Gi’ lă hình ảnh thu nhỏ của trạm Si của đồ thị quan hệ >> xâc định bởi

Tj>>Tk tương đương Tj>Tk hay Tj >> Tk

Giả sử rằng G có vòng lặp bao gồm một tập hợp của n giao dịch được đânh số

từ 0 đến n-1 trong trật tự của vòng lặp của trật tự xâc định bởi quan hệ > Giả sử rằng TP

lă nguyín tố của tập hợp năy đến trước tất cảc câc câi khâc theo chiều của quan hệ >>

Thuật toân dự phòng được triển khai như sau:

Bước 1 : Việc cung cấp tăi nguyín tại trạm S cho giao dịch Ti được tiến hănh nếu việccung cấp đó không tạo ra vòng lặp trong đồ thị Gi’

Bước 2: Trong trường hợp bị từ chối, tiến trình thực hiện giao dịch trín trạm S được

đưa văo hăng đợi cục bộ tại S

Bước 3: Khi tăi nguyín được giải phóng, tất cả câc tiến trình của hăng đợi được kiểm

tra nếu câc yíu cầu của chúng có thể được thỏa mên

Quâ trình vận hănh thuật toân được minh hoạ bởi ví dụ sau đđy:

Ví dụ :

Xĩt lại thí dụ 1 Khi T1 thực hiện T12: v_loai_tru_th(e1), yíu cầu năy văo xungđột với thông câo a_loai_tru_th(e1) thực hiện bởi T3 Như thế cung T1-T3 được thănh lậptrong G Lúc năy, yíu cầu vẫn được chấp nhận vì T1>>T3

Sau khi diễn ra việc cung cấp năy, câc đồ thị Gi’ trín ba trạm sẽ như hình vẽ 8sau:

Học viín: Lí Quang Vũ 11

T3

T2Trạm S3

Hình 8: Trạng thái cung cấp tài nguyên

trên 3 trạm

Trang 12

Yêu cầu t22 :v_loai_tru_th(e2) kéo trên trạm S2 sự tạo nên cung T2-T1 bị loại bỏ,bởi vì nó sinh ra vòng lặp trên S2 Tương tự như vậy, yêu cầu t32:v_loai_tru_th(e3) bị từchối bởi vì nó tạo ra vòng lặp trên S3 Nhưng ta cần lưu ý là nếu trật tự theo dạng T1,T2,

T3 thì yêu cầu vừa nêu có thể được chấp nhận

Thuật toán này đặt ra một nguyên tắc tương tự như các nhóm sắp xếp Duy chỉ

có khác nhau một điều là nó tránh được sự thiếu thốn vô hạn, bởi vì trật tự tổng quátđược triển khai cho các giao dịch chứ không phải cho các tài nguyên Một giao dịch trởnên rất cần thiết là giao dịch có thời gian chờ dài nhất sau một khoảng thời gian xácđịnh, do vậy nó trở thành giao dịch được ưu tiên nhất trên tất cả các trạm mà nó đã gởithông điệp

Thuật toán phát hiện bế tắc.

Khi các tài nguyên được sử dụng bởi giao dịch được xác định theo kiểu độngtrong quá trình thi hành giao dịch, các phương pháp dự phòng bế tắc dựa trên nền tảngcác thông điệp không còn phù hợp được nữa Lúc này, ta phải sử dụng các phương phápphát hiện và chữa trị

Phương pháp này được mô tả bởi Menasce sẽ được trình bày Phương pháp nàyđặt ra vấn đề sử dụng một đồ thị các tranh chấp mà việc kiểm tra các tranh chấp đó chophép phát hiện bế tắc

Tương tự như thuật toán vừa nêu, mỗi một trạm quản lý các đối tượng tiêng củamình và việc phát hiện chỉ dựa vào thông tin cục bộ Các trạm khởi sự các giao dịch bịtreo được đề phòng phát sinh bế tắc mà bế tắc này có thể phát hiện tai một trạm nào đócần phải đề ra các biện pháp chữa trị cho mình

Ta cần xác định trong mọi thời điểm giữa hai giao dịch Tj và Tk quan hệ chặntrực tiếp như sau:

TJ > Tk tương đương tồn tại ít nhất một tài nguyên bị cài then bởi TJ và yêu cầubởi Tk nhưng không được đáp ứng

Quan hệ này được biểu hiện bằng một đồ thị gọi là đồ thị các xung đột hữu hiệu

Sự tồn tại một vòng lặp trong đồ thị này báo hiệu cho ta biết sẽ có bế tắc diễn ra Mộtgiao dịch không bị chặn có nghĩa là trong đồ thị biểu hiện bằng một nút mà tại đókhông có cung nào dẫn đến

Giả sử rằng Tk là một giao dịch bị chặn Tập hợp tất cả các giao dịch mà có thểđạt được bằng cách chạy khắp các cung xuất phát từ Tk theo chiều ngược lại với hướngcủa chúng và gọi là tập hợp các chặn của Tk kí hiệu là R(Tk) Các giao dịch thuộc vàoR(Tk) là các giao dịch có nguồn gốc từ sự chặn của Tk

Tại một thời điểm cho trước, đồ thị các xung đột hiện hữu hiệu sinh ra các quan

hệ chặn tồn tại giữa các giao dịch của hệ Ta ký hiệu B(Tk) là tập hợp các giao dịch bịchặn do Tk có nghĩa là các giao dịch có thể đạt được bằng cách chạy khắp các cung xuấtphát từ Tk

Trang 13

Cho đồ thị các xung đột hữu hiệu như hình 9 sau:

Tồn tại k: B(Tk) E(Tk) khác 0 {tồn tại vòng lặp}

Nếu ta không muốn duy trì trên mỗi trạm một bản sao của đồ thị tổng quát thìcần phải xây dựng một ảnh cục bộ cho phép đánh giá các điều kiện vừa nêu trên

Đó là điều mà ta thực hiện trong giải thuật sau đây:

Thuật toán:

Ta ký hiệu S(Tk) là trạm nguồn của giao dịch Tk Để cho mỗi giao dịch Tk, trạmS(Tk) duy trì các tập hợp B(Tk) và E(Tk).Việc cập nhật E(Tk) cần phải được biểu hiệntrên tất cả các trạm nguồn của các giao dịch thuộc B(Tk) Thực tế, giao dịch chặn Tk làphần tử của toàn bộ tập hợp chặn của các giao dịch thuộc B(Tk)

Giả sử rằng Tk đã yêu cầu một tài nguyên e của trạm Si nào đó Trên trạm này, tathực hiện các phép toán sau đây:

Bước 1: Nếu e là có sẵn để dùng, yêu cầu được thỏa mãn và ta ghi nhận là Tk đang cótài nguyên

Bước 2: Nếu e đã được cung cấp cho giao dịch TJ thì thông điệp TJ chặn Tk được truyềncho trạm S(Tj) và S(Tk) Sau này( j,k) chỉ một thông điệp như vậy

Khi nhận một thông điệp (j,k) trên một trạm S nào đó, ta thực hiện các động tácsau đây:

 Trên trạm S(Tj) nguồn của giao dịch chặn Tk ta thêm Tk vào tập hợp B(Tj) vàkiểm tra rằng ta không làm phát sinh bế tắc có nghĩa là :

Ta gửi tiếp thông điệp (l,k) về phía các trạm nguồn của các giao dịch T1 chặn Tj

nhằm cho phép các trạm S(Ti) cập nhật các tập hợp B(Ti) của các giao dịch bị chặn bởiHọc viên: Lê Quang Vũ 13

Trang 14

Ti Song song với tác động trên, các thông điệp (l,k) được gởi về trạm nguồn của cácgiao dịch Tk để cập nhật tập hợp E(Tk) của các giao dịch chặn Tk.

 Trên trạm S(Tk) nguồn của giao dịch bị chặn Tk, ta thêm Tj cho tập hợp E(Tk)

và kiểm tra không có bế tắc, có nghĩa là:

B(Tj) giao E(Tk) =0

Ta tiếp tục gởi thông điệp (j,m) về phía các trạm nguồn của các giao dịch Tm bịchặn bởi Tk nhằm cho phép các trạm S(Tm ) cập nhật các tập hợp E(Tm) của các giaodịch chặn Tm

I.5 Điều khiển tải

Chức năng quan trọng nhất của việc điều khiển tải là duy trì một cách nhịpnhàng các yêu cầu về tài nguyên của hệ trong một giới hạn chấp nhận được trên cơ sở

số lượng tài nguyên hiện hành và các thông số hiệu năng cần tuân thủ

Vai trò của việc điều khiển tải trong hệ được thể hiện dưới hai phương diện sau:

Điều khiển tổng quát: Điều khiển tải một cách tổng quan trong hệ như là

người giữ nhịp cho các hoạt động cung cấp tài nguyên

Điều khiển phân tán: Phân tán tải cho các đối tượng có khả năng cung cấp

như là người điều khiển hợp lý việc phân bố các tài nguyên

I.5.1.Điều khiển tải tổng quát.

Về mặt tổ chức, các yêu cầu về sử dụng tài nguyên được gửi đến hệ thống thôngqua sự trung gian của một tiến trình gọi là bộ phân phối tải và được thể hiện bởi hìnhsau:

Trình tự làm việc như sau: đầu tiên, yêu cầu tài nguyên được hình thành bởi một

đề nghị phục vụ nào đó cho một server xác định trong số các server có khả năng phục

vụ Bộ điều khiển tải có chức năng cung cấp thông tin kịp thời và tương đối chính xác

về khả năng của các server chấp nhận hay không chấp nhận các yêu cầu

Ngày đăng: 30/12/2013, 20:54

HÌNH ẢNH LIÊN QUAN

Hình 2: Đồ thị cung cấp tài nguyên bế tắc - Mô hình và chức năng của bộ cung cấp phân tán
Hình 2 Đồ thị cung cấp tài nguyên bế tắc (Trang 3)
Hình 4   Đồ thị truy cập trực tiếp vào các server - Mô hình và chức năng của bộ cung cấp phân tán
Hình 4 Đồ thị truy cập trực tiếp vào các server (Trang 5)
Hình 3   Đồ thị truy cập vào tài nguyên bằng một - Mô hình và chức năng của bộ cung cấp phân tán
Hình 3 Đồ thị truy cập vào tài nguyên bằng một (Trang 5)
Hình II.1.  Mô phỏng bãi đậu xe ô tô Trong đó, BV - người bảo vệ có nhiệm vụ phân phối chỗ cho các xe ô tô, VT - vị trí cho từng ô tô cụ thể - Mô hình và chức năng của bộ cung cấp phân tán
nh II.1. Mô phỏng bãi đậu xe ô tô Trong đó, BV - người bảo vệ có nhiệm vụ phân phối chỗ cho các xe ô tô, VT - vị trí cho từng ô tô cụ thể (Trang 19)
Hình II.2. Sự không gắn bó giữa 4 người bảo vệ - Mô hình và chức năng của bộ cung cấp phân tán
nh II.2. Sự không gắn bó giữa 4 người bảo vệ (Trang 20)
Hình II.2  cho thấy, nếu ta không có ràng buộc nào đối - Mô hình và chức năng của bộ cung cấp phân tán
nh II.2 cho thấy, nếu ta không có ràng buộc nào đối (Trang 20)

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