Trong lĩnh vực Công Nghệ Thông Tin nói riêng, yêu cầu quan trọng nhất của người học đó chính là thực hành. Có thực hành thì người học mới có thể tự mình lĩnh hội và hiểu biết sâu sắc với lý thuyết. Với ngành mạng máy tính, nhu cầu thực hành được đặt lên hàng đầu. Tuy nhiên, trong điều kiện còn thiếu thốn về trang bị như hiện nay, người học đặc biệt là sinh viên ít có điều kiện thực hành. Đặc biệt là với các thiết bị đắt tiền như Router, Switch chuyên dụng
Điều khiển song hành giao tác ThS Hoàng Mạnh Hà hoangha84@gmail.com https://sites.google.com/site/hoangha84 Nội dung • Kĩ thuật khóa • Khóa pha • Deadlock Starvation • Deadlock Prevention • Deadlock Detection • Kĩ thuật nhãn thời gian • Kĩ thuật sử dụng nhiều phiên SGU - CNTT - Hệ quản trị sở d ữ liệu • Khóa nhị phân • Khóa đọc/ghi • Tìm hiểu số kĩ thuật điều khiển song hành (Concurrency control) sử dụng việc đảm bảo tính lập giao dịch thực • Các kĩ thuật đảm bảo tính khả lịch trình dựa giao thức điều khiển song hành – Concurrency control protocols (protocols – sets of rules) SGU - CNTT - Hệ quản trị sở d ữ liệu Giới thiệu KĨ THUẬT KHÓA SGU - CNTT - Hệ quản trị sở d ữ liệu Khái niệm • Một phương pháp để đảm bảo tính dựa khái niệm khóa (LOCKING) hạng mục liệu • Kĩ thuật khóa ngăn chặn nhiều giao dịch truy xuất hạng mục liệu thời điểm • Cơ chế khóa sử dụng hầu hết hệ quản trị CSDL thương mại • Yêu cầu việc truy xuất đến hạng mục liệu tiến hành theo kiểu loại trừ lẫn (mutual exclusion) • Một giao dịch truy xuất hạng mục liệu khơng cho phép giao dịch khác chỉnh sửa liệu SGU - CNTT - Hệ quản trị sở d ữ liệu Giao thức dựa khóa • Một khóa (lock) biến tương ứng với hạng mục liệu, quy định hành động cụ thể phép thực hạng mục liệu • Thơng thường: khóa cho hạng mục liệu • Có nhiều loại khóa sử dụng điều khiển song hành SGU - CNTT - Hệ quản trị sở d ữ liệu Giao thức dựa khóa KĨ THUẬT KHÓA SGU - CNTT - Hệ quản trị sở d ữ liệu Khóa nhị phân Khóa nhị phân • Đơn giản hạn chế nên khơng dùng thực tế • khóa nhị phân (binary lock) gồm trạng thái: • Các khóa khác hạng mục liệu khác • Nếu trạng thái khóa X 1, hạng mục liệu X truy xuất thao tác liệu khác • Lock(X) = SGU - CNTT - Hệ quản trị sở d ữ liệu • Locked (1) • Unlocked (0) Khóa nhị phân • thao tác khóa nhị phân: • Khi giao dịch muốn truy xuất X, trước tiên thực thao tác Lock_item(X) • Nếu Lock(X) = 1, giao dịch phải đợi • Nếu Lock(X) =0, giá trị Lock(X) gán thành 1, giao dịch thao tác X SGU - CNTT - Hệ quản trị sở d ữ liệu • Lock_item(X) • Unlock_item(X) Khóa nhị phân • Sau hồn tất thao tác X, giao dịch thực thao tác Unlock_item(X): • Khi đó, X truy xuất giao dịch khác • Giai đoạn Lock_item(X) Unlock_item(X), giao dịch gọi giữ khóa X • Chỉ giao dịch giữ khóa hạng mục liệu SGU - CNTT - Hệ quản trị sở d ữ liệu • Gán Lock(X)=0 10