Nghiên cứu các thuật toán lập lịch trong hệ thống thời gian thực Nghiên cứu các thuật toán lập lịch trong hệ thống thời gian thực Nghiên cứu các thuật toán lập lịch trong hệ thống thời gian thực luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp
bộ giáo dục đào tạo trường đại học bách khoa hµ néi ĐỖ QUỐC HUY ĐỖ QUỐC HUY ngµnh CNTT NGHIÊN CứU THUậT TOáN LậP LịCH TRONG Hệ ThốNG ThờI GIAN THựC luận văn thạc sĩ NGàNH CÔNG NGHệ THÔNG TIN khoá 2006-2008 Hà nội 2008 giáo dục đào tạo trường đại học bách khoa hà nội ĐỖ QUC HUY NGHIÊN CứU THUậT TOáN LậP LịCH TRONG Hệ ThốNG ThờI GIAN THựC luận văn thạc sĩ CÔNG NGHệ THÔNG TIN người hướng dẫn khoa học : PGS.TS NGUYễN §øC NGHÜA Hµ Néi – 2008 Lời Cảm Ơn Để hồn thành Luận Văn Tốt nghiệp Cao Học khố 2006-2008, em xin gửi lời cảm ơn chân thành tới thầy giáo PGS.TS Nguyễn Đức Nghĩa, người trực tiếp hướng dẫn tận tình giúp đỡ em trình nghiên cứu hồn thành luận văn Em xin gửi lời cảm ơn tới thầy, cô giáo Khoa Công Nghệ Thông Tin, thầy, cô giáo trường Đại Học Bách Khoa Hà Nội truyền thụ kiến thức bổ ích trình em học tập nghiên cứu trường Em xin gửi lời cảm ơn sâu sắc tới gia đình bạn bè, người bên em suốt thời gian qua, giúp đỡ động viên em q trình học tập hồn thành Luận Văn Tốt nghiệp lần Mặc dù có nhiều cố gắng thời thời gian kiến thức hạn chế nên luận văn cịn có nhiều thiếu sót Em mong nhận ý kiến đóng góp quý báu từ thầy, cô giáo bạn Hà Nội, ngày 28 tháng 11 năm 2008 Học viên thực hiện: ĐỖ QUỐC HUY Mục lục Lời Cảm Ơn Danh mục thuật ngữ Danh mục bảng Danh mục hình vẽ Lời mở đầu 10 Chương1 CÁC KHÁI NIỆM CƠ SỞ 12 1.1 Các ứng dụng thời gian thực 12 1.1.1 Các vấn đề liên quan đến ứng dụng thời gian thực 12 1.1.2 Kiến trúc vật lý kiến trúc logic, hệ điều hành 14 1.2 Các khái niệm sở cho lập lịch tác vụ thời gian thực 22 1.2.1 Miêu tả tác vụ 22 1.2.2 Các định nghĩa, giải thuật thuộc tính lập lịch 28 1.2.3 Lập lịch hệ điều hành truyền thống 35 Chương LẬP LỊCH CÁC TÁC VỤ ĐỘC LẬP 42 2.1 Các giải thuật lập lịch trực tuyến cho tác vụ có chu kỳ 43 2.1.1 Lập lịch đơn điệu tỉ lệ 44 2.1.2 Thuật tốn đảo hạn chót (hay đơn điệu hạn chót) 52 2.1.3 Các thuật toán với gắn kết ưu tiên động 53 2.2 Lập lịch tập tác vụ lai 55 2.2.1 Lập lịch tác vụ khơng có chu kỳ mềm dẻo 56 2.2.2 Lập lịch chặt chẽ tác vụ không theo chu kỳ 65 Chương 3.LẬP LỊCH CÁC TÁC VỤ PHỤ THUỘC 72 3.1 Các tác vụ với mối quan hệ trước sau 72 3.1.1 Các ràng buộc trước sau thuật toán ưu tiên tĩnh (RM DM) 74 3.1.2 Các ràng buộc trước sau thuật toán thời hạn sớm trước 75 3.1.3 Ví dụ minh họa 76 3.2 Các tác vụ chia sẻ tài nguyên găng 77 3.2.1 Đánh giá thời gian phản hồi tác vụ 78 3.2.2 Hiện tượng đảo mức ưu tiên 82 3.2.3 Hiện tượng tắc nghẽn 84 3.2.4 Các giao thức truy cập tài nguyên chia sẻ 86 3.2.5 Kết luận 91 CHƯƠNG 95 Thiết kế xây dựng chương trình 95 4.1 Mục đích thực nghiệm 95 4.2 Thiết kế xây dựng chương trình 96 4.2.1 Thiết kế chương trình 96 4.2.2.Thiết kế liệu biểu diễn 98 4.3.Thiết kế mô đun 101 4.3.1 Mô đun chương trình 101 4.3.2 Mô đun nhập liệu 102 4.3.3 Mô đun tạo liệu ngẫu nhiên 103 4.3.4.Mô đun so sánh kết thực giải thuật 104 4.3.5.Mô đun xuất liệu 104 4.3.6 Mô đun thực giải thuật RM 105 4.3.7 Mô đun thực giải thuật ID 110 4.3.8 Mô đun thực giải thuật EDF 113 4.3.9 Mô đun thực giải thuật LLF 118 4.4 Một số hình ảnh minh hoạ giao diện chương trình 122 4.5.Kết thực nghiệm đánh giá 125 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 147 Tài liệu tham khảo 149 Danh mục thuật ngữ STT Từ viết tắt Giải nghĩa tiếng Anh Giải nghĩa tiếng Việt RM Rate Monotic Tên giải thuật đơn điệu tỉ lệ ID Inverse Deadline Đảo thời hạn EDF Earliest Deadline First Thời hạn sớm trước LLF Least Laxity First LCM Least Common Multiple Bội chung nhỏ CPU Central Processing Unit Bộ xử lý trung tâm Preemptive Có ưu tiên Non preemptive Không ưu tiên Slack stealing Tên thuật toán ưu tiên tác vụ thời gian trì hỗn trước Tên giải thuật lập lịch cho tập tác vụ có khơng có chu kỳ 10 A priori Tiên nghiệm 11 deadlock tắc nghẽn 12 13 Hybrid task set RR Round Robin Tập tác vụ bao gồm tác vụ có khơng có chu kỳ Tên giải thuật lập lịch dựa lượng tử thời gian 14 Deferrable server Máy chủ trì hỗn 15 Polling server Máy chủ bầu chọn 16 Sporadic server Máy chủ không thường xuyên Thời điểm tác vụ kích 17 Critical instant hoạt tạo thời gian phản hồi lớn 18 Interconnected sites Các điểm liên kết 19 Processor utilization factor Hệ số sử dụng xứ lý 20 21 Semaphore Monitor Tên kỹ thuật đưa Dijstra để đồng hoá tiến trình Tên kỹ thuật đồng hố tiến trình Danh mục bảng Bảng 3.1 Ví dụ ánh xạ độ ưu tiên có ràng buộc trước sau sử dụng thuật toán RM 75 Bảng 3.2 Tập hợp năm tác vụ thay đổi tham số theo ràng buộc trước sau (4 giá trị ưu tiên cao nhất) 77 Bảng 3.3 Tổng kết giao thức mgăn ngừa tắc nghẽn đảo mức ưu tiên 92 Bảng 4.1 Cấu trúc liệu biểu diễn tác vụ 99 Bảng 4.2 Cấu trúc liệu biểu diễn tác vụ chuẩn bị lập lịch 100 Bảng 4.3.Cấu trúc thông tin tác vụ lịch làm việc 100 Bảng 4.4 Tập tác vụ cho thực nghiệm 125 Bảng 4.5 Bảng kết thực giải thuật cho tập tác vụ 126 Bảng 4.6 Tập tác vụ cho thực nghiệm 126 Bảng 4.7 Bảng kết thực giải thuật cho tập tác vụ 127 Bảng 4.8 Tập liệu cho thựuc nghiệm 128 Bảng 4.9.Kết thực giải thuật ID,RM,EDF,LLF với tập tác vụ 128 Bảng 4.10.Tập liệu bước 129 Bảng 4.11.Kết thực giải thuật ID,RM,EDF,LLF với tập tác vụ bước 129 Bảng 4.12.Tập liệu bước 130 Bảng 4.13.Kết thực giải thuật ID,RM,EDF,LLF với tập tác vụ bước 130 Bảng 4.14.Tập liệu bước 131 Bảng 4.15.Kết thực giải thuật ID,RM,EDF,LLF với tập tác vụ bước 131 Bảng 4.16.Tập liệu bước 132 Bảng 4.17.Kết thực giải thuật ID,RM,EDF,LLF với tập tác vụ bước 132 Bảng 4.18.Tập liệu bước 133 Bảng 4.19.Kết thực giải thuật ID,RM,EDF,LLF với tập tác vụ bước 133 Bảng 4.20.Tập liệu bước 134 Bảng 4.21.Kết thực giải thuật ID,RM,EDF,LLF với tập tác vụ bước 134 Bảng 4.22.Miêu tả tập tác vụ tạo ngẫu nhiên với chu kỳ khoảng [1,500] 135 Bảng 4.23.Kết thực với test 136 Bảng 4.24.Kết thực với test 136 Bảng 4.25.Kết thực với test 137 Bảng 4.26.Kết thực với test 137 Bảng 4.27.Kết thực với test 137 Bảng 4.28 Miêu tả tập tác vụ dùng để đo thời gian tính toán giải thuật 139 Bảng 4.29 Kết lập lịch với liệu test6 140 Bảng 4.30 Kết lập lịch với liệu test7 140 Bảng 4.31 Kết lập lịch với liệu test8 140 Bảng 4.32 Kết lập lịch với liệu test9 141 Bảng 4.33 Kết lập lịch với liệu test10 141 Bảng 4.34.Miêu tả tập tác vụ sử dụng thực nghiệm 143 Bảng 4.35 Kết thực giải thuật với liệu đầu 143 Bảng 4.36 Kết thực giải thuật với liệu 144 Danh mục hình vẽ Hình 1.1 Mơ hình ứng dụng thời gian thực 13 Hình 1.2 Sự phát triển kết hợp phần mềm phần cứng 15 Hình 1.3 Kiến trúc đa xử lý đối xứng với nhớ chia xẻ Dune 3000 17 Hình 1.4 Một kiến trúc phân tán ứng dụng thời gian thực 17 Hình 1.5 Các loại hệ thống tính tốn 19 Hình 1.6 Cấu trúc hệ thống thuận tiện 20 Hình 1.7 Mơ hình ứng dụng thời gian thực 22 Hình 1.8 Sự biến thiên tham số động 25 Hình 1.9 Các trạng thái tác vụ 26 Hình 1.10 Đồ thị precedance với tác vụ 27 Hình 1.11 Tài nguyên găng dùng chung tác vụ 27 Hình 1.12 Ví dụ giải thuật Round Robin 37 Hình 1.13 Ví dụ lập lịch ưu tiên (chỉ số ưu tiên nhỏ độ ưu tiên tác vụ cao) 37 Hình 1.14 Ví dụ lập lịch đa cấp độ ưu tiên 38 Hình 2.1 Phân tích thời gian phản hồi tác vụ τ2 (0, 10, 14, 14) hàm thời gian phản hồi tác vụ τ1 (r1, 1, 4, 4) 45 Hình 2.2 Chuỗi thực thi với hai tác vụ τ1 τ2 vói độ ưu tiên tác vụ τ2 cao τ1 46 Hình 2.3 Chuỗi thực thi với hai tác vụ τ1 τ2 với độ ưu tiên tác vụ τ1 cao tác vụ τ2 (gắn kết độ ưu tiên theo RM ) 46 Hình 2.4 Phân tích hàm hệ số tiện ích hoá xử lý C1 49 Hình 2.5 Ví dụ lập lịch rate monotonic với ba tác vụ có chu kỳ τ1 (0, 3, 20, 20), τ2 (0, 2, 5, 5) τ3 (0, 2, 10, 10) 50 Hình 2.6 Ví dụ lập lịch với ba tác vụ có chu kỳ: τ1 (0, 20, 100, 51 100), τ2 (0, 40, 150, 150) τ3 (0, 100, 350, 350) 51 Hình 2.7 Lịch làm việc đảo thời hạn 52 Hình 2.8 Lịch làm việc EDF 54 Hình 2.9 Lịch làm việc Least Laxity First 55 Hình 2.10 Lập lịch 57 Hình 2.11 Ví dụ máy chủ polling 59 Hình 2.12 Ví dụ saprodic server 61 Hình 2.13 Ví dụ lập lịch slack stealing 63 Hình 2.14 Ví dụ lập lịch sử dụng kỹ thuật ghép nối 64 Hình 2.15 Lập lịch tác vụ không theo chu kỳ 68 Hình 2.16 Ví dụ lập lịch chung tác vụ có khơng có chu kỳ 70 Hình 3.1 Ví dụ hai đồ thị trước sau tập chín tác vụ 73 Hình 3.2 Ví dụ tổng qt hố quan hệ trước sau hai tác vụ khác khoảng thời gian 73 Hình 3.3 Đồ thị trước sau tập hợp sáu tác vụ 74 Hình 3.4 Những thay đổi tham số tác vụ trường hợp lập lịch EDF 76 Hình 3.5 Đồ thị trước sau liên kết năm tác vụ 77 Hình 3.6 Thời gian phản hồi tác vụ có ưu tiên cao chia sẻ tài nguyên găng: 80 Hình 3.7 Thời gian phản hồi tác vụ chia sẻ tài nguyên găng: 82 Hình 3.8 Ví dụ tượng đảo mức ưu tiên 83 Hình 3.9 (a) Ví dụ tượng tắc nghẽn 85 (b) Giải pháp ngăn chặn tắc nghẽn cách áp đặc trật tự tổng truy xuất tài nguyên 85 Hình 3.10 Ví dụ ứng dụng giao thức kế thừa mức ưu tiên 88 Hình 3.11 Ví dụ ứng dụng giao thức ưu tiên trần 90 Hình 4.1.Các chức chương trình 97 Hình 4.2 Mơ đun chương trình 101 Hình 4.3 Mơ đun nhập liệu 102 Hình 4.4 Mơ đun sinh liệu ngẫu nhiên 103 Hình 4.5 Mơ đun so sánh kết thực 104 Hình 4.6 Mơ đun xuất liệu 105 Hình 4.7 Lược đồ mơ tả bước giải thuật RM 106 Hình 4.8 Lược đồ mơ tả bước khởi tạo danh sách tác vụ ban đầu 107 Hình 4.9 Lược đồ mơ tả bước kiểm tra khả lập lịch tập tác vụ 108 Hình 4.10 mơ tả bước xây dựng lịch theo giải thuật RM 109 Hình 4.11.Miêu tả bước biểu diễn lịch thực tác vụ 109 Hình 4.12 Lược đồ mơ tả bước giải thuật ID 110 Hình 4.13 Lược đồ mơ tả bước khởi tạo danh sách tác vụ ban đầu 111 Hình 4.14 Lược đồ mơ tả bước kiểm tra khả lập lịch tập tác vụ 112 Hình 4.15 mơ tả bước xây dựng lịch theo giải thuật ID 112 Hình 4.16.Miêu tả bước biểu diễn lịch thực tác vụ 113 Hình 4.17 Lược đồ mơ tả bước giải thuật EDF 114 Hình 4.18 Lược đồ mơ tả bước khởi tạo danh sách tác vụ ban đầu 115 Hình 4.19 Lược đồ mơ tả bước kiểm tra khả lập lịch tập tác vụ 116 Hình 4.20 mơ tả bước xây dựng lịch theo giải thuật EDF 117 Hình 4.21.Miêu tả bước biểu diễn lịch thực tác vụ 117 Hình 4.22 Lược đồ mô tả bước giải thuật LLF 118 Hình 4.23 Lược đồ mơ tả bước khởi tạo danh sách tác vụ ban đầu 119 Hình 4.24 Lược đồ mơ tả bước kiểm tra khả lập lịch tập tác vụ 120 Hình 4.24 mơ tả bước xây dựng lịch theo giải thuật LLF 121 Hình 4.25.Miêu tả bước biểu diễn lịch thực tác vụ 121 Hình 4.26 Giao diện ban đầu chương trình 122 Hình 4.27.Chức nhập thơng tin tác vụ 122 Hình 4.28.Chức nhập thơng tin tác vụ từ file 123 Hình 4.29.Chức chọn giải thuật để thực 123 Hình 4.30.Minh hoạ lịch thực tập tác vụ 124 Hình 4.31 Chức sinh liệu ngẫu nhiên 124 Hình 4.32 Chức so sánh giải thuật 125 Hình 4.33 Biểu đồ so sánh tập tác vụ test1,test2,test3,test4,test5 136 Dưới kết thực giải thuật RM, ID, EDF,LLF với tập tác vụ 136 Hình 4.34.Biểu đồ so sánh số tác vụ lập lịch đáp ứng thời hạn vởi tập tác vụ test1,test2,test3,test4,test5 138 Hình 4.35 Biểu đồ so sánh thời gian phản hồi trung bình tác vụ lập lịch theo giải thuật RM,ID,EDF,LLF 138 Hình 4.37 So sánh số tác vụ lập lịch hạn 141 Hình 4.38 So sánh thời gian phản hồi tác vụ lập lịch theo giải thuật RM, ID, EDF LLF 142 135 Nhận xét: Sau bổ sung tác vụ t9, bốn giải thuật không đưa lịch làm việc khả thi Các tác vụ bị trễ hạn giải thuật khác (hầu hết t7, t8 t1; EDF t6 t1 Khi loại bỏ tác vụ t6 giải thuật EDF đưa lịch làm việc khả thi) Trong trường hợp này, giải thuật EDF tỏ hiệu so với giải thuật lại: số tác vụ bị trễ hạn hơn, thời gian chờ thời gian phản hồi nhỏ Nhận xét chung: Qua thực nghiệm ta thấy khơng phải không thoả điều kiện giải thuật RM, ID, EDF LLF không lập lịch Trong số trường hợp định tồn lịch làm việc cho tập tác vụ Hai giải thuật ID LLF thường cho kết tốt so với hai giải thuật lại Giải thuật EDF đưa kết tốt trường hợp tập tác vụ có nhiều tác vụ mà thời hạn hồn thành thời gian trì hỗn nhỏ Thực nghiệm 5: Tiến hành thực nghiệm tập tác vụ tạo ngẫu nhiên Thực nghiệm tiến hành tập tác vụ có số tác vụ ban đầu 10, chu kỳ khoảng [1,500] Bộ Số tác vụ lập Chu kỳ Số tác vụ không Hệ số sử Hệ số tải liệu lịch chu kỳ theo chu kỳ dụng CPU xử lý Test1 70 336 100% 83% Test2 138 459 99% 38% Test3 109 492 100% 59% Test4 68 376 100% 88% Test5 52 164 99% 64% Bảng 4.22.Miêu tả tập tác vụ tạo ngẫu nhiên với chu kỳ khoảng [1,500] 136 600 Số tác vụ 500 Chu kỳ 400 Số tác vụ không chu kỳ 300 200 Hệ số sử dụng CPU 100 Hệ số tải CPU Test1 Test2 Test3 Test4 Test5 Hình 4.33 Biểu đồ so sánh tập tác vụ test1,test2,test3,test4,test5 Dưới kết thực giải thuật RM, ID, EDF,LLF với tập tác vụ Giải thuật RM ID EDF LLF Số tác vụ hạn 38 38 69 38 Thời gian phản hồi trung bình 1424.6 1424.6 882.9 1424.6 Thời gian chờ trung bình 1369.9 1369.9 828.2 1369.9 Bảng 4.23.Kết thực với test Giải thuật RM ID EDF LLF Số tác vụ hạn 124 124 138 134 Thời gian phản hồi trung bình 4493.4 2237.1 3846.7 4474.2 Thời gian chờ trung bình 4369.2 2175 3784.6 4350 Bảng 4.24.Kết thực với test 137 Giải thuật RM ID EDF LLF Số tác vụ hạn 72 72 104 72 Thời gian phản hồi trung bình 2037.9 2034.8 7023 2034.8 1969 1965.9 6885.2 1965.9 Thời gian chờ trung bình Bảng 4.25.Kết thực với test Giải thuật RM ID EDF LLF Số tác vụ hạn 64 64 68 64 Thời gian phản hồi trung bình 1850.4 1849.2 2221.8 1849.2 1784 1782.8 2155.4 1782.8 Thời gian chờ trung bình Bảng 4.26.Kết thực với test Giải thuật RM ID EDF LLF Số tác vụ hạn 15 15 51 15 Thời gian phản hồi trung bình 794.4 791.9 911.6 Thời gian chờ trung bình 755.8 753.3 834.4 Bảng 4.27.Kết thực với test 791.9 753.3 138 140 120 100 RM ID EDF LLF 80 60 40 20 Test1 Test2 Test3 Test4 Test5 Hình 4.34.Biểu đồ so sánh số tác vụ lập lịch đáp ứng thời hạn vởi tập tác vụ test1,test2,test3,test4,test5 8000 7000 6000 5000 RM ID EDF LLF 4000 3000 2000 1000 Test1 Test2 Test3 Test4 Test5 Hình 4.35 Biểu đồ so sánh thời gian phản hồi trung bình tác vụ lập lịch theo giải thuật RM,ID,EDF,LLF 139 Nhận xét: Thực nghiệm cho thấy với tập tác vụ có hệ số sử dụng CPU nhỏ 100%, giải thuật EDF đưa lịch làm việc có số tác vụ thời hạn nhiều so với giải thuật lại Tuy nhiên thời gian phản hồi hay thời gian chờ đợi trung bình tác vụ cao số giải thuật Thực nghiệm 6: Thực nghiệm tập tác vụ có số tác vụ ban đầu 20 chu kỳ khoảng [1,1000] Các tập tác vụ có hệ số sử dụng lớn 100% đồng nghĩa với việc không thoả mãn điều kiện cần để lập lịch Mục đích thực nghiệm đánh giá giải thuật trường hợp tác vụ khơng có khả lập lịch Hệ số sử Bộ Số tác vụ Chu kỳ Số tác vụ liệu lập lịch chu khơng theo chu dụng CPU Hệ số tải xử lý kỳ kỳ Test6 1119 588 871% 91% Test7 4290 976 878% 38% Test8 772 893 856% 59% Test9 1999 752 1080% 88% Test10 3490 944 109% 64% Bảng 4.28 Miêu tả tập tác vụ dùng để đo thời gian tính toán giải thuật Kết thực giải thuật đối vời tứng tập tác vụ đầu vào miêu tả bảng Kết thực bốn giải thuật với test miêu tả bảng 4.29 140 Giải Số tác vụ Thời gian phản hồi trung Thời gian chờ trung thuật hạn bình bình RM 96 2102.303 10745.81 ID 97 2100.095 2095.763 EDF 44 1735.971 1731.639 LLF 97 2100.148 2095.817 Bảng 4.29 Kết lập lịch với liệu test6 Giải Số tác vụ Thời gian phản hồi trung Thời gian chờ trung thuật hạn bình bình RM 258 3710.917 6511.918 ID 258 3710.597 3708.671 EDF 164 3894.224 3892.297 LLF 258 3710.714 3708.787 Bảng 4.30 Kết lập lịch với liệu test7 Giải Số tác vụ Thời gian phản hồi trung Thời gian chờ trung thuật hạn bình bình RM 58 3267.791 39444.9 ID 58 3266.642 3257.054 EDF 3598.727 3589.139 LLF 58 3266.642 3257.054 Bảng 4.31 Kết lập lịch với liệu test8 141 Giải thuật Số tác vụ hạn Thời gian phản hồi trung bình Thời gian chờ trung bình RM 66 3652.359 18881.78 ID 67 3651.021 3647.098 EDF 3091.761 3087.838 LLF 67 3651.077 3647.154 Bảng 4.32 Kết lập lịch với liệu test9 Giải thuật Số tác vụ Thời gian phản hồi trung bình Thời gian chờ trung bình hạn RM 183 4494.348 15306.58 ID 184 4493.497 4490.634 EDF 11 4355.947 4353.084 LLF 184 4493.679 4490.817 Bảng 4.33 Kết lập lịch với liệu test10 300 250 200 RM ID EDF LLF 150 100 50 Test6 Test7 Test8 Test9 Test10 Hình 4.37 So sánh số tác vụ lập lịch hạn 142 4500 4000 3500 3000 RM ID EDF LLF 2500 2000 1500 1000 500 Test6 Test7 Test8 Test9 Test10 Hình 4.38 So sánh thời gian phản hồi tác vụ lập lịch theo giải thuật RM, ID, EDF LLF Nhận xét: Thực nghiệm cho thấy với tập tác vụ có hệ số sử dụng CPU lớn 100%, hầu hết giải thuật đưa lịch làm việc với tỉ lệ nhỏ số tác vụ hạn, tỉ lệ nhỏ số lượng tác vụ lập lịch lớn Điều hiệu ứng domino, tác vụ bị lỡ hạn kéo theo tác vụ lập lịch vị trí sau bị lỡ hạn theo Giải thuật EDF thường đưa lịch làm việc có số tác vụ trễ hạn nhiều so với ba giải thuật lại Thời gian phản hồi trung bình tập tác vụ ba giải thuật RM, ID LLF Thực nghiệm 7: Thực nghiệm tập trung đánh giá thay đổi thời gian tính tốn giải thuật số lượng tác vụ cần lập lịch tăng lên Các liệu tập hợp thoả mãn điều kiện đủ để lập lịch bao gồm tác vụ có chu kỳ khơng theo chu kỳ Thông tin tập tác vụ miêu tả bảng 4.34 143 Bộ liệu Số tác vụ lập lịch Chu kỳ Hệ số sử Số tác vụ dụng CPU khơng theo chu kỳ chu kỳ Test1 1137 4940 0.993927 Test2 1256 5544 0.998377 Test3 1518 5607 0.998573 Test4 1553 6800 0.997206 Test5 2024 9504 0.999684 Test6 2137 6384 0.995301 Test7 2806 13680 0.999196 Test8 3717 15824 0.97706 Test9 3784 15249 0.975539 Test10 5229 9555 0.980534 Bảng 4.34.Miêu tả tập tác vụ sử dụng thực nghiệm Giải thuật Test1 Test2 Test3 RM 0.740234 0.69043 1.082031 1.391602 2.233398 ID 0.711914 0.720703 1.210938 1.402344 2.342773 EDF 0.620117 0.601563 LLF 1.305664 1.450195 1.260742 2.234375 3.139648 1.12207 Test4 1.200195 Test5 2.0625 Bảng 4.35 Kết thực giải thuật với liệu đầu 144 Giải thuật Test6 Test7 Test8 Test9 Test10 RM 2.392578 4.206055 8.250977 7.651367 14.12109 ID 2.503906 4.526367 EDF 2.203125 3.935547 6.508789 7.029297 10.81445 LLF 3.705078 6.305664 10.64063 7.8125 8.332031 14.79102 10.9043 18.61914 Bảng 4.36 Kết thực giải thuật với liệu 6000 5000 4000 3000 Số lượng tác vụ 2000 1000 Test1 Test4 test7 test10 Hình 4.39 Biểu đồ so sánh số lượng tác vụ cần lập lịch tập tác vụ 20 15 RM ID 10 EDF LLF te st te st 10 te st te st te st t5 Te s t4 Te s t3 Te s t2 Te s Te s t1 Hình 4.40 Biểu đồ so sánh thời gian thực giải thuật RM, ID EDF,LLF 145 Nhận xét: Qua thực nghiệm ta thấy tốc độ thực giải thuật LLF chậm số giải thuật giải thuật EDF có tốc độ thực nhanh Hai giải thuật RM ID có thời gian tính tốn xấp xỉ nhau.Thời gian tính tốn giải thuật nói chung tăng lên số tác vụ tăng Với số lượng tác vụ nhỏ 1500 hầu hết giải thuật cho thời gian tính tốn vịng giây Kết luận: Qua thực nghiệm ta thấy, với tập tác vụ thoả mãn điều kiện lập lịch giải thuật EDF thường đưa lịch làm việc có số tác vụ hạn nhiều Nhưng với tập tác vụ không thoả mãn điều kiện lập lịch bốn giải thuật đưa lịch làm việc với số tác vụ hạn, giải thuật EDF đưa lịch làm việc có số tác vụ hạn nhỏ trường hợp Với tập tác vụ không thoả mãn điều kiện lập lịch hai giải thuật ID LLF tỏ hiệu giải thuật cịn lại theo tiêu chí số tác vụ hạn, thời gian phản hồi thời gian chờ trung bình chung tập tác vụ Tuy nhiên xét theo tiêu chí thời gian thực giải thuật giải thuật EDF có tốc độ thực giải thuật nhanh số bốn giải thuật 146 KẾT CHƯƠNG Chương chủ yếu tập trung thiết kế xây dựng chương trình, giới thiệu qua giao diện chương trình; đồng thời đưa kết thực nghiệm để kiểm nghiệm đánh giá lại vấn đề lý thuyết, thiết kế trình bày Về việc thiết kế xây dựng chương trình, chương trình bao gồm số chức chính: Chức khởi tạo liệu ban đầu, chức tính tốn theo giải thuật lựa chọn chức thị kết Chức khởi tạo liệu ban đầu cho phép người sử dụng nhập liệu đầu vào cho giải thuật (gồm: Số tác vụ, thời gian thực hiện, thời gian kích hoạt, tên tác vụ, thời hạn hoàn thành, chu kỳ xuất tác vụ) Thông tin tác vụ tổ chức lưu trữ mảng chiều với cấu trúc thông tin thành phần tương ứng để phục vụ cho bước lập lịch.Chức lập lịch theo giải thuật chọn phân thành bốn mô đun, mô đun thực thi giải thuật (gồm: mô đun lập lịch theo giải thuật RM, mô đun lập lịch theo giải thuật ID, mô đun lập lịch theo giải thuật EDF mô đun lập lịch theo giải thuật LLF ) Chức thi kết đầu thị giá trị kết (gồm: Tên tác vụ, thời gian bắt đầu thực hiện, thời gian hoàn thành) Sau bước thiết kế, luận văn tập trung xây dựng chức Về thực nghiệm, luận văn mơ tả thực nghiệm bao gồm: Mục đích thực nghiệm, liệu thực nghiệm, số đánh giá ban đầu kết thực nghiệm, đánh giá nhận xét kết đạt Kết thực nghiệm thể với lý thuyết thiết kế trình bày chương trước 147 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Sau khoảng thời gian làm việc, nghiên cứu nghiêm túc với bảo tận tình giáo viên hướng dãn PGS Nguyễn Đức Nghĩa tơi hồn thành luận văn Những kết đạt luận văn: • Trình bày cách tổng quan toán lập lịch hệ thống thời gian thực, khái niệm liên quan hệ thống thời gian thực, đặc điểm tác vụ hệ thống thời gian thực, tham số tác vụ thời gian thực sử dụng q trình lập lịch • Trình bày chi tiết giải thuật trực tuyến để lập lịch tác vụ độc lập hệ thống thời gian thực • Trình bày chi tiết giải thuật trực tuyến để lập lịch tác vụ có mối quan hệ phụ thuộc hệ thống thời gian thực • Xây dựng chương trình thử nghiệm giải thuật RM, ID, EDF, LLF để lập lịch cho tập tác vụ Tiến hành thử nghiệm đánh giá giải thuật dựa tập liệu ngẫu nhiên Tuy nhiên hạn chế thời gian trình độ chun mơn nên luận văn cịn tồn số hạn chế: • Các giải thuật lập lịch cài đặt với tác vụ độc lập với hệ thống, mối quan hệ phụ thuộc • Chưa cài đặt giải thuật lên hệ thống thời gian thực để tiến hành thực nghiệm Ngày hệ thống thời gian thực tiếp tục nghiên cứu phát triển áp dụng nhiều lĩnh vực Trong hệ thống thời gian thực phận quản lý processor đóng vai trị quan trọng mà hiệu phận 148 phụ thuộc vào giải thuật lập lịch tác vụ Căn vào luận điểm trên, hướng phát triển luận văn là: • Triển khai thử nghiệm hệ thống đa xử lý; • Tiến hành cài đặt giải thuật lập lịch với tác vụ có mối quan hệ phụ thuộc • Xây dựng phận lập lịch hệ điều hành thời gian thực 149 Tài liệu tham khảo [1] HYBRID ALGORITHMS FOR DYNAMIC SCHEDULABILITY TESTING, October 1994, Charlie McElhone, Department of Computer Science, University of York, England [2] The rate monotic scheduling algorithm: exact characterization and avarage case behavior, John lehoczky, Lui Sha and Ye Ding, Carnegie Mellon university [3] Realtime System Design and analysys, 3rd edition ,2004, Philipe A.laplante [4] Scheduling in Real-Time Systems, 2002, Francis Cottet LISI/ENSMA, Futuroscope, Joăelle Delacroix, Claude Kaiser, CNAM/CEDRIC, Zoubir Mammeri IRIT–UPS, France [5] Scheduling of Real-Time Systems Fixed Priority and Earliest Deadline First, 2005, Gerhard Fohler Mälardalen University, Sweden [6] Formalizing Real-time Scheduling as Program Refinement, Zhiming Liu Department of Mathematics and Computer Science, University of Leicester and Mathai Joseph, Department of Computer Science, University of Warwick [7] A Modified Maximum Urgency First Scheduling Algorithm for Real-Time Tasks, Vahid Salmani, Saman Taghavi Zargar, and Mahmoud Naghibzadeh ... dụng, đặc điểm tác vụ hệ thống thời gian thực 1.1 Các ứng dụng thời gian thực 1.1.1 Các vấn đề liên quan đến ứng dụng thời gian thực Trong ứng dụng thời gian thực, yêu cầu thời gian ràng buộc việc... ứng dụng thời gian thực 1.2 Các khái niệm sở cho lập lịch tác vụ thời gian thực 1.2.1 Miêu tả tác vụ 1.2.1.1 Mơ hình tác vụ thời gian thực Các tác vụ thời gian thực thực thể thi hành lập lịch; chúng... logic hệ thống thời gian thực Các hệ điều hành: Để định vị hệ thống thời gian thực, ta nhớ lại hệ thống tính tốn phân loại hình 1.5 thành hệ thống biến đổi, tương tác tái kích hoạt, bao gồm hệ thống