Tải bản đầy đủ (.doc) (27 trang)

Tiểu luận môn hệ phân tán Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (359.56 KB, 27 trang )

Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG
KHOA CÔNG NGHỆ THÔNG TIN

TIỂU LUẬN MÔN HỌC

HỆ TIN HỌC PHÂN
TÁN
Đề tài:

CÁC CHIẾN LƯỢC CUNG
CẤP TÀI NGUYÊN

GVHD : PGS. TS. Lê Văn Sơn
HVTH : Trần Quốc Huy
Lớp
: KHMT K10(2012-2014)

Đà Nẵng, tháng 7/2014


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 2

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 lồ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 Các chiến lược cung cấp
tài nguyên trong hệ thống tin học 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 hồn thành tiểu luận này. Tơi cũng xin cảm ơn các bạn lớp
Khoa học máy tính khố K10 2008 – 2010 Đại học Đà Nẵng đã nhiệt tình góp ý
giúp tơi hồn thành tiểu luận này.

Phần I : LÝ THUYẾT


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 3

CHƯƠNG I: TỔNG QUAN VỀ HỆ TIN HỌC PHÂN TÁN
I. Các khái niệm cơ bản
Hệ tin học phân tán là một trong những lĩnh vực tri thức vừa mang tính chất
cơ sở, vừa mang tính chất tiên tiến của ngành công nghệ thông tin mà việc nắm bắt
và vận dụng tốt các nguyên lý của nó sẽ mang lại cho các hệ thống thực tiễn
những hứa hẹn rất lớn về hiệu năng khai thác thiết bị trong các ứng dụng tin học.
I.1. Quá trình phát triển hệ thống tin học
I.1.1. Tổng quan về hệ tin học
Hệ tin học có thể bao gồm các thành phần cơ bản như phần cứng, hệ điều
hành, các chương trình ứng dụng và người sử dụng…Các thiết bị phần cứng bao

gồm bộ xử lý trung tâm, bộ nhớ, và các thiết bị ngoại vi đóng vai trị là một trong
hai loại tài nguyên cơ sở của hệ thống tin học. Các chương trình ứng dụng là thành
phần tiếp theo sau hệ điều hành ví dụ như các phần mềm ứng dụng.
Người sử dụng có thể là các nhà chun mơn, các máy tính, các hệ tự động
vận hành gắn với máy tính,… đang khai thác hệ thống thơng qua các lệnh điều
khiển theo một thuật tốn nào đó nhằm đạt được mục tiêu xác định từ trước. Ở
từng thời điểm, số lượng người sử dụng cho mỗi thành phần ứng dụng là khác
nhau và bị giới hạn trong khả năng kỹ thuật ghép.
I.1.2. Các hệ thống tin học đầu tiên
Chiếc máy tính đầu tiên ra đời trong những năm 50 của thế kỷ 20 là các hệ
thống đồ sộ, nặng nề, tiêu tốn nhiều năng lượng, hiệu quả hoạt động kém, dung
lượng bé và đặc biệt là rất khó khăn trong q trình sử dụng, vận hành nhưng
chính các hệ thống này đã đóng góp cho nhân loại những bài học về nguyên lý mà
giá trị của chúng vẫn còn ngun vẹn cho đến tận hơm này và có lẽ mãi mãi về
sau. Đặc trưng của thời kỳ này là tỷ trọng phần mềm trong hệ thống không đáng
kể so với phần cứng. Các chương trình trợ giúp hệ thống vừa thiếu về số lượng
vừa yếu về chức năng phục vụ.
Và theo thời gian, con người đã xây dựng nên các chương trình trợ giúp có
tính chất hệ thống như chương trình dịch từ hợp ngữ sang ngơn ngữ máy, chượng
trình soạn thảo theo dịng,…do đó làm giảm nhẹ cơng việc lập chương trình.
I.1.3. Các hệ thống tin học thế hệ thứ 2
Vào cuối những năm 50, đầu những năm 60, con người đã xay dựng các
chương trình monitor thường trú cho phép liên kết hợp các công việc lại với nhau
và thực hiện một lần. Việc liên kết ấy có ý nghĩa rất lớn trong tự động hố và các
hoạt động của hệ tin học.


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 4


Năm 1960, chương trình BPS( Batch processing system) được xây dựng
thành công nhằm vào các thiết bị phần cứng nhằm sử dụng hết hiệu năng của bộ
xử lý và bước đầu triển khai cơ chế bảo vệ
Năm 1969, hệ điều hành UNIX được xây dựng bởi ông Ken Thompson cho
phép người sử dụng làm việc theo kiểu chia sẽ thời gian trong hệ thống đa nhiệm.
I.1.4. Các hệ thống tin học thế hệ thứ 3
Thế hệ này được đặc trưng bởi các sự kiện lớn sau:
Vào những năm 70, các máy tính cá nhân ra đời với sự tiện ích cao, khả
năng vượt trội, và đặc biệt là giá cả hợp lý đã nhanh chóng chinh phục mọi người
và mở ra một trang mới trong việc phát triển ngành tin học.
Tiếp theo là sự xuất hiện của hệ thống song song cho phép cải tiến các máy
vốn sử dụng một bộ xử lý hay bộ vi xử lý duy nhất thành hệ thống đa bộ xử lý
nhằm tăng độ tin cậy của hệ thống.
Vào những năm 80. Hệ thống mạng cục bộ Ethernet và Token Ring được
phát minh là những mạng tiêu biểu cả về lý thuyết lẫn triển khai ứng dụng.
Hệ tin học phân tán địi hỏi phần cứng của mình phải trang bị bộ nhớ cục
bộ, các bộ xử lý trao đổi thông qua các hệ thống đường truyền khác nhau như cáp
chuyên dụng, bus trao đổi, đường điện thoại, đường cáp quang, mạng điện chiếu
sáng cao và hạ thế.’…
Hệ thống thời gian thực với hệ điều hành tiêu biểu là hệ tự động hố điều
khiển lị luyện thép.
Vào năm 1974, xuất hiện mạng Internet toàn cầu là mạng ARPANET với
giao thức NCP .Tuy nhiên, khi giao thức TCP/IP được xây dựng bởi Vint Cert và
Robert Kahn thì khái niệm mạng của các mạng mới được hình thành. Và đến năm
1990 thì mạng Internet phát triển vượt bậc với những kết quả mà chúng ta có được
như ngày hơm nay.
I.2. Hệ tin học phân tán
I.2.1. Khái niệm hệ tin học phân tán
Hệ tin học phân tán hay gọi tắt là hệ phân tán là một hệ thống xử lý thông

tin bao gồm nhiều bộ xử lý hoặc các bộ vi xử lý được đặt ở xa tại các vị trí khác
nhau và được liên kết với nhau thông qua các phương tiện viễn thông dưới sự
thống nhất của hệ điều hành
Hệ tin học phân tán là một hệ thống không chia sẽ bộ nhớ và đồng hồ. Các
tính tốn trong hệ tin học phân tán có thể được thực hiện trên nhiều bộ xử lý hay
vi xử lý của hệ thống đa bộ xử lý. Do đó hệ thống tin học phân tán địi hỏi hệ
thống của mình phải trang bị bộ nhớ cục bộ. Các bộ xử lý trao đổi thông tin thông
qua các đường truyền khác nhau như cáp mạng chuyên dụng, bus trao đổi, đường
điện thoại, cáp quang hoặc có thể là sóng…


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 5

Khơng như các máy tính đơn lẽ, mạng máy tính là tập hợp các thiết bị đầu
cuối được nối với nhau bởi hệ thống đường truyền, những đường truyền nối với
các trạm rất xa nhau có thể là một mạng viễn thơng. Các thiết bị đầu cuối của
mạng máy tính rất đa dạng, bao gồm tập hợp các máy tính, các thiết bị chuyên
dụng, các thiết bị truyền tin, các thiết bị nhận và hiển thị thơng tin…Hệ thống
mạng máy tính được điều khiển bằng hệ điều hành mạng. Hệ tin học này có thể là
hệ tập trung hay là hệ phân tán.
I.2.2 Đặc điểm cơ bản của hệ tin học phân tán
Căn cứ vào thành phần của hệ tin học, ta nhận thấy hệ tin học phân tán có thể
bao gồm bốn thực thể như hình 1 bên dưới.

Các hệ
thống phần
mềm


Hệ thống
truyền
thơng

Các hệ
thống phần
cứng

Hệ thống dữ
liệu

Hình 1: Bốn thực thể của hệ tin học phân tán.

Cấu hình phần cứng của mạng có thể bao gồm các bộ xử lý có cấu tạo hồn
tồn khác nhau về khả năng, tốc độ và được thiết kế cho các chức năng khơng
giống nhau. Chúng có thể là các bộ xử lý, các trạm làm việc, các máy tính trung và
các máy tính điện tử vạn năng lớn.
Bên cạnh hệ thống phần cứng, phần mềm, dữ liệu, hệ phân tán cịn có hệ
thống truyền thơng. Nhưng điều cơ bản để phân biệt hệ tin học phân tán với mạng
máy tính và hệ điều hành mạng chính là nguyên tắc xây dựng hệ được liệt kê như
bản dưới đây:


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Stt

Tên gọi

Trang 6


Thuyết minh

1. Chia sẽ tài
nguyên

Thực tế phát triển mạng máy tính đặt ra một vấn đề lớn là cần
phải dùng chung tài nguyên. Một tiến trình trên một trạm nào đó
có thể cung cấp tài nguyên dùng chung ở một trạm khác.

2.

Liên lạc

Khi các hệ thống đã được mắc nối với nhau, các thực thể trong hệ
có thể trao đổi thơng tin với nhau.

Tin cậy

Một trạm trong hệ bị sự cố không làm cho tồn hệ ảnh hưởng mà
ngược lại, cơng việc đó được phân cho các trạm khác đảm nhận.
Ngoài ra, trạm bị sự cố có thể tự động phục hồi lại trạng thái ban
đầu trước khi có sự cố hay trạng thái ban đầu của nó

Tăng tốc

Đây là khái niệm mới về phân tán tải. Một tính tốn lớn nào đó
nếu chỉ sử dụng một trạm thì thời gian cho kết quả lâu. Tính tốn
này được chia nhỏ và thực hiện song song trên các trạm. Điều này
cũng cần thiết đối với các trạm quá tải


3.

4.

Một trong những tư tưởng lớn của hệ phân tán là phân tán hố các q trình
xử lý thơng tin và thực hiện cơng việc đó trên các trạm xa nhau. Đó là những cơ sở
căn bản cho việc xây dựng các ứng dụng lớn như thương mại điện tử, giáo dục
điện tử, chính phủ điện tử, thư viện điện tử và bệnh viện ảo.
I.2.3. Các vấn đề liên quan đến mạng máy tính
Liên lạc là thuật ngữ được sử dụng để chỉ các thao tác trao đổi thông tin
giữa các thực thể thuộc hệ thống. Trạm phát sẽ phát thông tin được gọi là thông
điệp, là một hình thức phổ biến trao đổi thơng tin đến trạm nhận.
I.2.3.1. Vấn đề trỏ thông tin
Nếu người sử dụng mạng muốn liên hệ với nhau, họ phải sử dụng hệ thống
tên quy ước hay còn gọi là địa chỉ mạng. Các địa chỉ này phải tuân theo nguyên
tắc xây dựng nhất định và không trùng nhau. Trong mạng, một người sử dụng nào
đó có thể sử dụng bất cứ trạm nào để liên lạc với người sử dụng mà họ muốn liên
lạc
Trong cấu trúc tập trung, ta có hệ thống máy trung tâm để cho phép lưu trữ
toàn bộ thơng tin, người sử dụng có thể truy cập vào đó để xử lý thơng tin của
mình. Giải pháp này dễ dàng triển khai và được ứng dụng rộng rãi trong thập niên
60 và 70.
I.2.3.2. Giao thức
Khi nhiều người sử dụng liên lạc với nhau trong mạng để thực hiện cơng
việc nào đó thơng qua kênh truyền hình bằng cách sử dụng giao diện của mình,
giao thức là tập hợp những quy tắc cần thiết cho các dịch vụ tầng có thể thực hiện
được và cho phép việc nhận và gửi thông tin đến tầng tương ứng.



Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 7

I.2.3.3. Thông điệp
Người sử dụng có thể chia cắt thơng tin truyền theo các kiểu khác nhau,
song, chung quy có thể có hai kiểu là chia cắt logic và chia cắt vật lý.
Chia cắt logic thường khi các thông điệp bao gồm tập hợp thông tin gắn bó
với nhau theo một logic nào đó như bản ghi, tập tin, do đó kích cỡ của thơng điệp
thường không phải là đại lượng cố định, để truyền các thơng điệp này người ta
phải có thêm những thơng tin điều khiển như giá trị số chỉ kích cỡ, tín hiệu bắt đầu
và kết thúc một thơng điệp.
Chia cắt vật lý thơng thường được phân nhóm nhằm thoả mãn những ràng
buộc đường truyền hoặc ràng buộc về mặt lưu trữ. Những thơng điệp này thường
là những gói thơng tin có kích cỡ cố định. Trước khi phát thơng tin vào đường
truyền, trạm phát phải chia thông tin thành các gói theo những quy ước chặt chẽ.
Q trình này được tiến hành tự động ở các tầng thấp và người sử dụng khơng thể
nhận biết được q trình đó.
I.3. Các đặc trưng của hệ tin học phân tán
Đối tượng nghiên cứu của môn học hệ tin học phân tán là xử lý các vấn đề
đặt ra một cách tương đối chi tiết.
Các khía cạnh của hệ tin học phân tán chỉ dừng lại ở các vấn đề cơ bản có
tính chất nguyên lý .
Vấn đề lập trình và thực hiện ứng dụng phân tán mô tả các phương pháp
điều khiển thực hiện chương trình phân tán, vấn đề định danh và đặc biệt là vấn đề
cấu trúc truy vấn tổng quát trong hệ.
Trình tự và đồng bộ các tiến trình chỉ ra cho ta các vấn đề đồng bộ có thể
dẫn đến phải thiết chế một trật tự tổng quát của các sự kiện diễn ra trong hệ.
Cung cấp tài nguyên cho thấy được những khó khăn đang gặp phải trong
quá trình phân tán dữ liệu và cung cấp các tài nguyên vật lý và logic. Trong không

gian phân tán ta có thể nắm bắt được ngay lập tức trạng thái tổng quát của việc
cung cấp tài nguyên và cũng khó có thể tránh được tình trạng bế tắc diễn ra.
Thời hạn truyền thông tin trong hệ không giống nhau. Các thơng điệp có
thể bị mất trong q trình chuyển tải, các thơng điệp có thể truyền kép và hệ thống
có thể rơi vào sự cố.
Một hay nhiều máy tính cấu thành của hệ phân tán có thể bị sự cố và hoạt
động của toàn bộ hệ sẽ trở nên kém hiệu quả
Khơng có phương pháp xử lý duy nhất cho các vấn đề về độ tin cậy của hệ
phân tán, các phương pháp nhằm tăng độ tin cậy chủ yếu nhằm vào các vấn đề
chống dư thừa, tái lập cấu hình, phát hiện sự cố,….


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 8

CHƯƠNG II : CÁC CHIẾN LƯỢC CUNG CẤP TÀI NGUYÊN
TRONG HỆ TIN HỌC PHÂN TÁN
II.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ĩnh vự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 khai nghiê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ệ tin họ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ên cạ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ác tà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ợp thành một logic hồn chỉnh mà việc triển khai nó có thẻ dẫn đến thực
hiện một tiến trì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 ngun để phát triển cơng việc của
mình phải 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à u cầu. Như vậy, một tiến
trình có nhu cầu tài nguyên sẽ bị treo chừng nào đó tài ngun đó cịn chưa được
giải phóng hay chưa được cung 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
duy nhấ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ài nguyê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ác lệ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ấp vớ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ất củ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
cung cấp là :


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 9

• Giải phóng: là tiến trình phát tín hiệu ngừng sử dụng tài ngun.
• 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ùng chung đượ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ĩnh viễ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ống cị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ại phát yêu cầu về nhu cầu sử dụng tài ngun 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 tit, rừ rng hn qua hỡnh 2 bờn
di:
T
1

T
3

Tr1

Tr2

T
2
Hỗnh 2

Tr3

T
4

ọử thở cung cáúp taìi nguyãn bë bãú tàõc


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ài nguyê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 Tr2 chờ tài nguyên T1 do Tr1 đang chiếm giữ. Tiến trình Tr1 chờ tài nguyên
T2 được giải phó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à u
cầu củ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ều như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ài nguyê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ệu nă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


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 10

đượ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ánh cá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án , nó cần phải tạo điều kiện để tránh tình hình mà ở đó các 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ại rỗ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ến trình hay số các giao dịch được chọn (trúng tuyển) sử dụng toàn bộ
hay từng phầ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ác quy 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ằm duy 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 ngun phân tán cịn ít và chúng ta cũng
khơng có nhiều kinh nghiệm về việc hoạt động của hệ này
II.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ện theo 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
II.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ài nguyê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ự


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 11

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ương trì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 u cầu và gởi trả kết quả>
Kết thúc vòng lặp
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ài
ngun. Tiến trình server có thể được lập trình để triển khai tồn bộ chiến lược
liên quan đế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).
II.2.2 Truy cập các tương tranh có điều kiện
Trong trường hợp này tài ngun đượ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ầu dướ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ẽ 3 dưới đây cho thấy việc truy cập bằng một chương trình duy nhất.
S1

Tr1

Hn g âåüi cạc u cáưu
T

Tr2

D

T: Ti nguyón Tr: Tióỳn trỗnh
Si: Server
D aùn h thổùc


Trn

Hỗnh 3

S2

Sn

ọử thở truy cỏỷp vaỡo taỡi nguyón bũn g mọỹt chổồng trỗnh trỉûc 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êu cầ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áy server đều được các tiến trình khách biết trước


Tiểu luận Các chiến lược cung cấp tài nguyên trong h tin hc phõn tỏn

Tr1

S1

Tr2

S2

Trn


Trang 12

Sn

T

Hỗnh 4

ọử thở truy cỏỷp trỉûc tiãúp vo cạc server

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úng vớ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 được dùng trong các hệ điều hành.
II.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ài then , 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 T i có thể sử dụng
các tài nguyê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ợp cá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 song song. Nhằm thu hồi lại tài nguyên e trên trạm S i , giao dịch thực
hiện phép tố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 ngun diễn ra
khơng có thu hồi. Một tài ngun 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ừ

được phâ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ời nhiều tài ngun.
Ví dụ có hai tiến trình p và q cùng sử dụng hai tài nguyên e 1 và e2, chúng
được mơ tả trong đoạn chương trình như sau:


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Tiến trình p

Tiến trình q

p1: v_loai_tru_th(e1)

q1: v_loai_tru_the(e2)

p1: v_loai_tru_th(e2)

Trang 13

q1 : v_loai_tru_the(e1)

Nếu các yêu cầu được thỏa mãn theo trình tự p 1, q1 thì tất yếu xảy ra vấn đề
chặn nhau giữa p và q. Lý do hiển nhiên là p 2 và q2 không bao giờ được đáp ứng,
nếu e1 và e2 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 tốn dự phịng, phát hiện và chữa trị đã được nghiên cứu cho

trường hợ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ấp nà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.
II.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 ngun khơng thể tin tưởng giao phó
hồn tồ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ộ cung cấ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 ngun
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 hồn giữa các trạm khác nhau dưới
dạng một thơng điệp. Các trạm ln phiên đóng vai trị của bộ cung cấp tài
nguyên mà mình đang chị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ột cá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ên cá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ệc cung cấp phải được gắn bó với nhau.


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 14


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
mang tí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.
II.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 tố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ột bả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ản sau đây:

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

8

…………………….

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
cung cấp đó được đánh giá là chấp nhận được theo thuật toán đã sử dụng. Trên cơ
sở thực hiện một thuật tốn và có cùng thơng tin , mỗi trạm ra quyết định cung cấp
căn cứ vào bả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 ngay trên trạm có tài ngun.
Để 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 u cầu của mình.
 Các thơng điệp giải phóng của mình.


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán


Trang 15

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ển trạ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ên tấ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 hồ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ợp thứ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 T J 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 T J và là thành
phần thuộ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.
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.

Giao dëch T1

Giao dëch T 2

t 11 :a_loaûi _tru_th(e 1 ,e 2 )
...
...
t 12 :v_loaûi _tru_th(e 1 )
...
...
t 13 :v_loaûi _tru_th(e 2 )


Giao dëch T 3

t 21 :a_loaûi _tru_th(e 2 ,e 3 )
...
...
t 22 :v_loaûi _tru_th(e 2 )

...
...
t 23 :v_excl(e 3 )

t 31 :a_loaûi _tru_th(e 3 ,e 1 )
...
...
t 32 :v_excl(e 3 )

...
...
t 33 :v_loaûi _tru_th(e 1 )

Giả sử rằng các lệnh thực hiện theo trình tự t 11, t21 ,t31, t12 , t22, t32 vào thời
điểm t sau 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ánh khỏi được. Đồ thị G được biểu diễn trong hình vẽ 5 sau:
T1
e2

e1
e3


T2

Hình 5: Vịng trịn khép kín trên đồ thị

T3


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 16

Để 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 ngun nếu việc cung cấp đó khơng phát sinh
vịng lặp trê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ấu rồ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.
II.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ông tin cục bộ. Tất cả các tài nguyên đều được truy cập theo kiểu loại trừ.
 Thuật tốn dự phịng bế tắc
Đây là thuật tố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ằng các tài nguyên e1,e2, và e3 được bố trí trên các trạm tương ứng với S 1, 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ị G i 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:

T1

e1

T3

T2

Âäư thë G1 trãn S1

e2

T1

T3

Âäö thë G2 trãn S2

e3

T2

Âäö thë G3 trãn S3

Hỗnh 6 ọử thở trón caùc traỷm

Rừ rng 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ừng phn, ta cú th nh hỡnh 7 bờn di
T1

e2

e1
e3

T2

Hỗnh 7

T3

Vng trn khẹp kên trãn âäư thë


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 17

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ơng thể 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ác mạ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
giao dị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ài nguyên là duy trì tình trạng khơng vịng lặp cho các đồ thị G i. 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ó được tì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ủa vòng trong G kéo theo sự tồn tại của vịng trong ít nhất một Gi’

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úc nà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ệ >> và giả sử rằng q=p-1 modulo n . Ta có:
Tp >> Tq vì Tp đến trước các cái khác.
Tj>Tk trong vịng lặp của đồ thị G
Nếu S là số của trạm chứa tài nguyên bị cài then bởi T q và thuộc quyền sở
hữu của thơng báo của Tp thì Gi’ chứa vịng lặp.
 Thuật tốn
Thuật tốn dự phịng được triển khai như sau:
Bước1 : Việc cung cấp tài nguyên tại trạm S cho giao dịch T i được tiến hành nếu
việc cung 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 ngun đượ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.
Q trình vận hành thuật tố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(e 1) thực hiện bởi T3. Như thế cung T1-T3
được thành lập trong G. Lúc này, yêu cầu vẫn được chấp nhận vì T 1>>T3.


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 18


Sau khi diễn ra việc cung cấp này, các đồ thị G i’ trên ba trm s nh hỡnh
v 8 sau:
T3

T1

T2

T1
Traỷm S1

Hỗnh 8

T3

T2
Traỷm S2

Traỷm S3

Traỷng thại cung cáúp ti ngun trãn 3 trảm

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 S 2. 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 S 3. Nhưng ta cần lưu ý
là nếu trật tự theo dạng T1,T2, T3 thì 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 qt đượ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ởi thơng điệp.
 Thuật tố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
động trong 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ảng cá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áp phá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 đó cho phé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ủa mì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 T j và Tk quan hệ
chặn trực tiếp như sau:


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 19

TJ > Tk tương đương tồn tại ít nhất một tài nguyên bị cài then bởi T J và yêu
cầu bở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ột giao 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ừ T k theo chiều ngược lại

với hướng của chúng và gọi là tập hợp các chặn của T k kí hiệu là R(Tk). Các giao
dịch thuộc vào R(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(T k) 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ất phát từ Tk.
Cho đồ thị các xung đột hữu hiệu như hỡnh 9 sau:
T1
T2
T5
Hỗnh 9

T3

T4

ọử thở caùc xung õọỹt hổợu hióỷu

Cỏc giao dịch khơng bị chặn là T3,T4,T5
Ta có: E(T 1 ) ={T 2 ,T 3 ,T 4 ,T 5 }
B(T 5 )= {T 1 ,T 2 }

Đồ thị các xung đột hữu hiệu chứa vòng lặp nếu và chỉ nếu tồn tại giao dịch T k mà
tập hợp chặn của nó chứa một giao dịch bị chặn bởi Tk:
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 T k. Để cho mỗi giao dịch Tk,
trạm S(Tk) duy trì các tập hợp B(T k) và E(Tk).Việc cập nhật E(Tk) cần phải được


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 20

biểu hiện trên tất cả các trạm nguồn của các giao dịch thuộc B(T k). 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 S i nào đó. Trên trạm
này, ta thự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à T k đang
có tài nguyên.
Bước 2: Nếu e đã được cung cấp cho giao dịch T J thì thơng điệp TJ chặn Tk được
truyền cho 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ác sau đây:
 Trên trạm S(Tj) nguồn của giao dịch chặn T k 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 T 1
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ởi 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ác giao 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(T m ) cập nhật các tập hợp E(T m) của
các giao dịch chặn Tm.

II.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ịp
nhà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 tn 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.


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 21

II.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ông qua 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ình sau:

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.
Trong khi vận hành hệ, bộ điều khiển chỉ biết được giá trị gần đúng của tải
này, đó chính là nguyên nhân cơ bản của hai vấn đề khó khăn sau đây:

Nếu tải vượt quá mức cho phép, bộ điều khiển tải có thể quyết định

sai là đẩy các yêu cầu ra ngồi tầm phục vụ. Điều đó có thể dẫn đến việc sử
dụng dưới mức giới hạn cho phép của các tài nguyên được điều khiển bởi
các server.

Nếu tải còn dưới mức cho phép, bộ điều khiển tải chấp nhận một u
cầu, nếu các server khơng có sự điều khiển tải riêng của mình. Điều đó dẫn
đến việc sử dụng quá mức giới hạn của các tài nguyên.
Cần lưu ý rằng, chức năng của các server là đảm bảo cho hệ nói chung mỗi
khi tiếp nhận các yêu cầu mới cần phải tính ngay đến việc là các yêu cầu này sẽ
cần phải kết thúc một cách bình thường.
II.5.2 Điều khiển phân tán tải
Để các server có thể thực hiện được các yêu cầu thì việc đầu tiên là các yêu
cầu này phải được dịch sang ngôn ngữ đang được sử dụng của chính server đó.
Việc phân bố tải được tiến hành sao cho các server có khả năng phục vụ phải có
tải tương đương nhau.
Bộ phân phối tải được hình thành chỉ để sử dụng cho những tài nguyên
phần cứng như là bộ xử lý, các thiết bị ngoại vi, đường truyền và không phải cho
các tài nguyên đã được giao hẳn cho các trạm như là các tập tin.


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 22

Nguời ta phân chi ra hai loại chiến lược phân tán tải như sau:
 Chiến lược tĩnh: Việc phân tán các yêu cầu giữa các server được xác
định theo kiểu cố định
 Chiến lược thích nghi: là việc phân tán này được xác định như là chức
năng tải của hệ.
II.5.3.Triển khai quá trình điều khiển

Trong các hệ phân tán, việc điều khiển tải được tiến hành ở tầng giao vận,
nơi bao gồm nhiều tài nguyên phần cứng như các đường truyền thông tin hay các
bộ nhớ đệm trong các nút mạng.
Trong các ứng dụng khác, các trạm thơng thường được chun mơn hố, do
vậy có rất ít cơ hội để thực hiện các cơng việc này.
*Kết luận:
Để chọn lựa phương án triển khai giải quyết vấn đề tải trong hệ phân tán,
người ta quan tâm hàng đầu đến độ tin cậy, ổn định và chi phí thực hiện của
chúng. Tuyệt đại bộ phận các giải thuật đã được nghiên cứu cho vấn đề tải đến nay
vẫn cịn là những giải thuật tương đối chính xác có nghĩa là chưa có giải thuật nào
đạt đến mức độ hoàn hảo như mong muốn. Như vậy, trong trường hợp chọn đường
theo kiểu thích nghi như mạng Arpanet hay internet là giải pháp chấp nhận được.
.


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

PHẦN II:

Trang 23

BÀI TẬP

Đề bài:
1. Hãy tưởng tượng là ta đang triển khai công tơ sự kiện phân tán trên N
trạm. Giả sử rằng trong thời gian đầu các trạm hoạt động rất ổn định và ta cài đặt
trên mỗi trạm một công tơ sự kiện cục bộ. Hãy cho biết làm thế nào một trạm có
thể có giá trị ảnh của cơng tơ sự kiện trên mỗi trạm. Hãy trình bày ý kiến của bạn
khi có một trạm bị sự cố.
2. Bây giờ ta cài đặt trên N trạm một ảnh của công tơ sự kiện phân tán,

được tăng một số gia truyền cho mỗi lần sự kiện đến. Bạn hãy cho biết các vấn đề
gì sẽ được đặt ra khi ta sử dụng phương pháp này.
Phương pháp giải:
1. Công tơ sự kiện là cơ chế đồng bộ sử dụng các biến trạng thái nguyên không
lùi cho phép sử dụng các bản sao gần đúng.
Mỗi một công tơ, biến nguyên không lùi, được kết hợp với 1 nhóm đặc biệt
các sự kiện. Trên một cơng tơ sự kiện nào đó có phối hợp với nhóm đặc biệt các
sự kiện E được xác định bởi các hàm nguyên thủy.
Increase(E): tăng nội dung công tơ lên 1 đơn vị có nghĩa là một sự kiện
nhóm E đến
Query(E) : cung cấp giá trị hiện hành của công tơ phối hợp với E.
Wait(E,n): theo tiến trình chừng nào giá trị cơng tơ cịn nhỏ hơn n.
Send(S): gửi thơng điệp đến trạm S
Receive(S): nhận thông điệp từ trạm S.
Xét bài toán người sản xuất- người tiêu dùng. Trong bài toán này ta xét hai
trạm là trạm sản xuất ký hiện là P và trạm tiêu thụ ký hiệu là C.
Ta gọi NP số lượng sản phẩm đã được sản xuất ra trên trạm sản xuất P và
NC là số lượng sản phẩm đã được trạm C tiêu thụ.
Tại trạm sản xuất P ta đặt thêm một công tơ N. Trạm sản xuất P sẽ tăng giá
trị của công tơ sự kiện N thêm một đơn vị mỗi khi nhận được thông điệp từ trạm
tiêu thụ C thông báo cho biết đã tiêu thụ thêm một sản phẩm.


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 24

Tương tự, trên trạm tiêu thụ C ta đặt một công tơ M. Giá trị của công tơ sự
kiện được tăng lên một đơn vị khi trạm tiêu thụ C nhận được thông điệp từ trạm
sản xuất P thơng báo đã có một sản phẩm vừa được sản xuất.

Tại trạm tiêu thụ C khi nhận được thơng điệp từ trạm sản xuất P thơng báo
có sản phẩm vừa được sản xuất ( Receive (P)), trạm tiêu thụ C sẽ tăng giá trị công
tơ sự kiện N thêm một đơn vị (Increase(N)).
Sau mỗi lần tiêu thụ sản phẩm, trạm tiêu thụ C sẽ tăng biến N C thêm một
đơn vị (NC=NC+1) và gửi thông điệp thông báo cho trạm sản xuất P biết có sản
phẩm vừa được tiêu thụ ( Send(P)).
Sau khi nhận được thông báo từ trạm tiêu thụ C (Receive(C)), trạm sản xuất
P sẽ tăng giá trị của công tơ sự kiện N thêm một đơn vị (Increase(N)).
Như vậy, khi ta đặt trên mỗi trạm một công tơ sự kiện cục bộ. Để một trạm
có giá trị ảnh của cơng tơ sự kiện trên mỗi trạm ta dựa trên hệ thống nhiều bản sao
cho phép đăng ký từ xa. Hệ thống cục bộ đều có lưu trữ một bản sao của tất cả các
thơng tin liên quan đang ở tất cả các hệ cục bộ bằng cách gửi và nhận thông điệp .
Khi một trạm bị sự cố:
Một trạm hoạt động có thể xảy ra rất nhiều sự cố khác nhau, đó có thể là
một sự cố về truyền thông, về giao dịch, về phần mềm hay phần cứng….Để một
trạm bị sự cố xảy ra mà khơng ảnh hưởng gì đến hoạt động của các trạm khác và
có thể thiết lập được trạng thái sau khi đã khắc phục để đưa vào trong mạng ta nên
dùng tệp nhật ký. Nhật ký là công cụ để chống lại tình trạng mất dữ liệu khi xảy ra
sự cố hệ thống. Nhật ký là bản ghi chép các thay đổi được thực hiện và tình trạng
của mỗi giao dịch .
Nếu một vị trí M phát hiện rằng N bị sự cố, M sẽ ghi sự kiện này vào nhật
ký. Khi N khơi phục, nó gửi thơng báo đến mỗi vị trí. Nếu M nhận được thơng báo
này, nó sẽ xem lại nhật ký và tìm lại điểm N gặp sự cố rồi gửi giá trị mới nhất của
các mục chung của M và N cho N
Đồng thời khi một trạm bị sự cố, mạng cần phải gởi thơng điệp
vang_mat( tức là vắng mặt) cho các trạm cịn lại. Và khi một trạm được vào lại
trong mạng sau khi có sự cố và được khắc phục nó phải phát đi thông điep
vao_lai(vào lại) để kiến tạo lại trạng thái hiện hành.
2. Cài đặt trên N trạm một “ảnh” của công tơ sự kiện phân tán, được tăng một số
gia truyền mỗi lần sự kiện đến. Vấn đề sẽ xảy ra khi dùng phương pháp này là : sự

không gắn bó dữ liệu.
Sự tồn tại nhiều bản sao ở mỗi trạm khác nhau dẫn đến:


Tiểu luận Các chiến lược cung cấp tài nguyên trong hệ tin học phân tán

Trang 25

• Cập nhật thơng tin diễn ra do đăng ký hoặc sự thay đổi thông tin cục bộ
trên một hệ cục bộ nào đó cần phải được tiến hành cho tất cả các hệ thống và
khơng được phép bỏ sót hệ thống nào cả. Trong khoảng thời gian làm tươi thông
tin phải đảm bảo sao cho việc truy vấn dữ liệu cho kết quả kịp thời hay đặt truy
vấn trong trạng thái treo.
• Để thực hiện việc truy cập vào các bản sao, ta cần phải cài then chúng
một cách hợp thức theo kiểu loại trừ.
Để cho i=1 đến n thực hiện v_viêc(ei)
Và chép chúng vào tất cả các bản>
Để cho i=1 đến n thực hiện giai_phong(ei)

The end!


×