Các phương pháp cung cấp sử dụng trạng thái từng phần, thuật toán dự phòng bế tắc.. LÝ THUYẾT:Các phương pháp cung cấp sử dụng trạng thái từng phần, thuật toán dự phòng bế tắc.. 03/23/
Trang 1Các phương pháp cung cấp sử dụng trạng thái
từng phần, thuật toán dự phòng bế tắc.
ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CÔNG NGHỆ THÔNG TIN
LỚP KHOA HỌC MÁY TÍNH - KHÓA 10
BÁO CÁO TIỂU LUẬN
HỆ TIN HỌC PHÂN TÁN
Trang 203/23/15 Nguyễn Văn Hùng 2
NỘI DUNG BÁO CÁO
Giới thiệu đề tài
Trang 3A LÝ THUYẾT:
Các phương pháp cung cấp sử dụng trạng thái từng
phần, thuật toán dự phòng bế tắc.
B BÀI TẬP
Trong hệ thống có 3 Server phục vụ việc đăng ký du
lịch bao gồm: Tour du lịch, Xe vận chuyển và khách
sạn Hãy xây dựng chương trình giao dịch lồng ghép để thực hiện đăng ký các tài nguyên trên.
GIỚI THIỆU ĐỀ TÀI
Trang 403/23/15 Nguyễn Văn Hùng 4
Một số khái niệm cơ bản
Bế tắc và vấn đề thiếu tài nguyên
Chiến lược cung cấp tài nguyên
Các phương pháp cung cấp theo kiểu sử dụng trạng thái từng phần
Thuật toán dự phòng bế tắc
CƠ SỞ LÝ THUYẾT
Trang 5 Tiến trình là chương trình hay đoạn chương trình đang
trong quá trình thực hiện
Giao dịch là phép toán hợp thà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 hay nhiều tiến trình trên các trạm khác nhau
Tài nguyên là 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
Thông điệp yêu cầu là một thông điệp được gửi bởi
một tiến trình khi nó có nhu cầu về tài nguyên
MỘT SỐ KHÁI NIỆM CƠ BẢN
Trang 603/23/15 Nguyễn Văn Hùng 6
Bế tắc (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 xảy 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 nguyên
mà tiến trình kia đang còn nắm giữ
BẾ TẮC VÀ VẤN ĐỀ THIẾU TÀI NGUYÊN
Trang 7Chẳng hạn, ta có 4 tài nguyên T1, T2, T3, T4 và 3 tiến trình nhu cầu tài nguyên là Tr1, Tr2, Tr3 được minh họa như sau:
BẾ TẮC VÀ VẤN ĐỀ THIẾU TÀI NGUYÊN
Có hai chu trình kín trong đồ thị:
Tr1 – T1 – Tr2 – T3 – Tr3 - T2 -
Tr1
Tr3 – T2 – Tr2 – T3 – Tr3
Trang 803/23/15 Nguyễn Văn Hùng 8
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ầu của nó trễ đến mức không thể xác định được
BẾ TẮC VÀ VẤN ĐỀ THIẾU TÀI NGUYÊN
Trang 9 Có một số chiến lược cung cấp tài nguyên:
Các phương pháp sử dụng trong hệ tập trung
Phân tán chức năng cung cấp
Các phương pháp cung cấp sử dụng trạng thái tổng quát
Các phương pháp cung cấp sử dụng trạng thái từng phần
CHIẾN LƯỢC CUNG CẤP TÀI NGUYÊN
Trang 1003/23/15 Nguyễn Văn Hùng 10
Mỗi trạm chỉ quản lý các tài nguyên cục bộ của mình
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 được truy cập theo kiểu loại trừ
Hai thuật toán được đề cập:
PHƯƠNG PHÁP CUNG CẤP SỬ DỤNG
TRẠNG THÁI TỪNG PHẦN
Trang 11 Là một trong những phiên bản của thuật toán Lomet
Sử dụng trạng thái từng phần
Phát biểu bài toán
Cho 3 giao dịch T1, T2 và T3 sử dụng 3 tài nguyên e1, e2 và e3của 3 trạm S1, S2 và S3 Ta ký hiệu a_loai_tru_th() là
phép toán thông điệp
THUẬT TOÁN DỰ PHÒNG BẾ TẮC
Trang 1603/23/15 Nguyễn Văn Hùng 16
Nguyên lý và thuyết minh thuật toán:
một điều kiện khác mạnh hơn
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
vòng lặp cho các đồ thị Gi
=> Chỉ ra G có được tình trạng không vòng lặp?
THUẬT TOÁN DỰ PHÒNG BẾ TẮC
Trang 17 Nguyên lý và thuyết minh thuật toán:
giao dịch
được đánh số thứ tự từ 0 … n-1 trong trật tự của vòng lặp của trật tự xác định bởi quan hệ >
chiều quan hệ >> và q = p-1 modulo n ta có
T >>T
THUẬT TOÁN DỰ PHÒNG BẾ TẮC
Trang 1803/23/15 Nguyễn Văn Hùng 18
Thuật toán: Thứ tự thực hiện như sau
tiến hành, nếu việc cung cấp đó không tạo ra vòng lặp trong
trên trạm S được đưa vào hàng đợi cục bộ tại S
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
THUẬT TOÁN DỰ PHÒNG BẾ TẮC
Trang 19 Minh họa: Sử dụng lại ví dụ trên
THUẬT TOÁN DỰ PHÒNG BẾ TẮC
Trang 2003/23/15 Nguyễn Văn Hùng 20
Nhận xét
nhưng nó tránh được sự thiếu thốn vô hạn
điều kiện mạnh hơn điều kiện tối thiểu
THUẬT TOÁN DỰ PHÒNG BẾ TẮC
Trang 21 Phát biểu bài toán
Trong hệ thống có 3 Server phục vụ việc đăng ký du lịch bao gồm: Tour du lịch, Xe vận chuyển, Khách sạn Anh/ chị hãy xây dựng chương trình giao dịch lồng ghép để thực hiện đăng
ký tài nguyên nêu trên
Xây dựng chương trình
BÀI TẬP
Trang 2203/23/15 Nguyễn Văn Hùng 22
Xây dựng 3 database tương ứng là Tour, Hotel và Transport
XÂY DỰNG CHƯƠNG TRÌNH
Trang 23 Phân chia các hệ thống Server quản lý các database
XÂY DỰNG CHƯƠNG TRÌNH
Trang 2403/23/15 Nguyễn Văn Hùng 24
Lồng ghép các server:
XÂY DỰNG CHƯƠNG TRÌNH
Begin_transaction Register Begin
Begin_transaction Tour
… End {Tour}
Begin_transaction Hotel
… End {Hotel}
Begin_transaction Car
… End {Car}
End.
Begin_transaction Register Begin
Begin_transaction Tour
… Begin_transaction Hotel
Begin_transaction Car
… End {Car}
End {Hotel}
End {Tour}
End.
Trang 25 Xây dựng các module xử lý chính cho các Server
ClientHandle, nó có chức năng nhận dữ liệu từ các chương
trình Client để lưu vào cơ sở dữ liệu
MobListHandle, nó có chức năng nhận dữ liệu từ module ClientHandle và cập nhật vào tất cả các server theo giải thuật
danh sách di chuyển
XÂY DỰNG CHƯƠNG TRÌNH
Trang 2603/23/15 Nguyễn Văn Hùng 26
GIẢI THUẬT DANH SÁCH DI CHUYỂN
Trang 2803/23/15 Nguyễn Văn Hùng 28
XIN CHÂN THÀNH CẢM ƠN!
BÁO CÁO HỆ TIN HỌC PHÂN TÁN