Khái niệm Tác vụ không tuần hoàn Khoảng deadline sớm nhất đầu tiên Tác vụ tuần hoàn Lập lịch đơn điệu 2 Vũ Quang Dũng... Deadline sớm nhất đầu tiên EDF Luật Horn: Cho a là tập
Trang 1Tác vụ tuần hoàn và
Trang 2 Khái niệm
Tác vụ không tuần hoàn
Khoảng deadline sớm nhất đầu tiên
Tác vụ tuần hoàn
Lập lịch đơn điệu
2
Vũ Quang Dũng
Trang 3Sách tham khảo
(paperback), Springer Verlag, December 2005, ISBN: 0387292373
G.C Buttazzo: Hard Real-Time Computing
Systems Kluwer Academic Publishers, 1997
W Wolf: Computers as Components –
Principles of Embedded System Design Morgan Kaufman Publishers, 2000
J Teich: Digitale Hardware/Software Systeme, Springer Verlag, 1997
Trang 5Theo deadline sớm nhất (EDD)
Luật Jackson: Cho một bộ n tác vụ Xử lý theothứ tự của các deadline không giảm là sự tìmgiá trị tối ưu nhỏ nhất của khoảng trễ cực đại
Chứng minh:
Trang 6EDD ví dụ 1
Trang 7EDD ví dụ 2
Trang 8Deadline sớm nhất đầu tiên (EDF)
Luật Horn: Cho a là tập hợp n tác vụ độc lập vớithời gian đến tùy ý, bất kỳ thuật toán mà tác vụtuân theo, thực thi với deadline tuyệt đối sớm
nhất trong các tác vụ sẵn sàng, thì thuật toán đó
là tối ưu khi tìm cách làm giảm giá trị của độ trễcực đại
Chứng minh: Cho mỗi khoảng thời gian [t, t+1) được chứng thực, khi tác vụ thực thụ thực thi làvới deadline tuyệt đối sớm nhất Nếu không phảinhư trên, thì tác vụ với deadline tuyệt đối sớmnhất được thực thi trong khoảng thời gian thaythế Sự hoạt động đó không làm tăng khoảng trễcực đại
Trang 9EDF tiếp
Các đại lượng sử dụng như sau:
σ(t) – nhận biết tác vụ thực thi trong khoảng
[t, t+1)
E(t) – nhận biết tác vụ sẵn sàng tại thời gian t,
mà có deadline sớm nhất
tE(t) – là thời gian (≥ t) mà mỗi khoảng tiếp
theo của tác vụ E(t) bắt đầu thực thi theo sựlập lịch hiện tại
Trang 11EDF – tiếp
Đảm bảo
Thời gian kết thúc xấu nhất của tác vụ i:
Trong đó c k là thời gian thực thi xấu nhất còn lại của tác vụ k.
Điều kiện đảm bảo EDF:
return(FEASIBLE);
}
Trang 12EDF – ví dụ
Trang 13Thuật toán EDF*
Vấn đề trong lập lịch với n tác vụ với ép buộc
quyền ưu tiên có thể được giải quyết trong hàm
đa thức về thời gian nếu tác vụ được ưu tiên
Thuật toán EDF* xác định sự lập lịch có thể thựchiện được trong trường hợp tồn tại một tác vụ
ép buộc quyền ưu tiên
Đảm bảo về sự tồn tại của sự lập lịch đúng đắn
Tác vụ bắt đầu thực thi không sớm hơn thời gian giải phóng và không sớm hơn thời gian kết thúc của tác
vụ ngay trước đó.
Tất cả các tác vụ kết thúc sự thực thi trong deadline của nó.
Trang 15Tác vụ b phụ thuộc vào a: Ja → Jb
Giải pháp: di* = min(di, min(dj* - Cj : Ji → Jj))
Trang 16EDF* - tiếp
Thuật toán dành cho giải phóng thời gian:
1 Cho bất kỳ điểm bắt đầu nào của cây ưu tiên ri* = ri
2 Chọn tác vụ j sao cho thời gian giải phóng không thay đổi,
nhưng thời gian giải phóng của tất cả các tác vụ liền trước nó i thay đổi Nếu không tồn tại, thoát khỏi thuật toán.
3 rj* = max(rj, max(ri* + Ci : Ji → Jj))
4 Quay lại bước 2.
Thuật toán dành cho deadline
1 Cho bất kỳ điểm cuối nào của cây ưu tiên di* = di
2 Lựa chọn tác vụ i sao cho deadline của nó không thay đổi,
nhưng thời gian giải phóng của tất cả các tác vụ j ngay sau đó thay đổi Nếu không tồn tại, thoát khỏi thuật toán.
3 di* = min(di, min(dj* - Cj : Ji → Jj))
4 Quay lại bước 2.
Trang 17Mô hình tác vụ tuần hoàn
Γ : biểu thị tập hợp tác vụ tuần hoàn
τi : biểu thị tác vụ tuần hoàn chung
Τi,j : biểu thị trường hợp thứ j của tác vụ I
ri,j : biểu thị thời gian giải phóng (release)
si,j : biểu thị thời gian bắt đầu (start)
fi,j : biểu thị thời gian kết thúc (finish)
di,j : deadline tuyệt đối của thời điểm j trong tác
vụ i
Φi : pha của tác vụ i
Di : deadline tương đối của tác vụ i
Trang 18Mô hình tác vụ tuần hoàn
Giả thuyết sau:
Thời điểm của tác vụ tuần hoàn được kích hoạt đều đặn tại một khoảng cố định Khoảng Ti giữa hai lần kích hoạt liên tục được gọi là chu kỳ Thời gian giải phóng
ri,j = Φi + (j-1)Ti
Tất cả các thời điểm đều cùng có WCET Ci
Tất cả các thời điểm của tác vụ tuần hoàn đều cùng
có một deadline tương đối Di Theo đó deadline tuyệt đối tính theo công thức sau
di,j = Φi + (j-1)Ti + Di
Trang 19… tiếp
nhau, không có sự ưu tiên và ràng buộc tài
nguyên.
Trang 20Ví dụ
Trang 21Rate-monotonic Scheduling (RM)
Mệnh đề:
Tác vụ ưu tiên được gán cho tác vụ trước khi thực thi
và không thay đổi trong thời gian thực thi (phân bố
sự ưu tiên tĩnh)
RM về bản chất là sự ưu tiên: tác vụ đang thực thi
được ưu tiên bởi tác vụ có độ ưu tiên cao hơn.
Deadline sẽ bằng chu kỳ Di = Ti
Thuật toán: Mỗi một tác vụ được gán cho một
độ ưu tiên Tác vụ với mức đòi hỏi cao hơn (vớichu kỳ ngắn hơn) sẽ có mức ưu tiên cao hơn Tác vụ với mức ưu tiên cao hơn sẽ ngắt các tác
vụ với mức ưu tiên thấp
Trang 22RM tiếp
Tối ưu: RM được tối ưu thông qua sự phân bố mức ưu
tiên cố định mà không có thuật toán về ưu tiên cố định
được lập lịch bởi RM.
Phân tích khả năng lập lịch: bộ tác vụ tuần hoàn là có
thể lập lịch với RM nếu (điều kiện đủ)
Biểu thức:
biểu thị hệ số sử dụng bộ xử lý U, là phân số của thời
gian xử lý trong quá trình thực thi của tác vụ
Trang 23Deadline Monotonic Scheduling (DM)
Mệnh đề: giống với RM, nhưng
Deadline có thể nhỏ hơn chu kỳ Ci ≤ Di ≤ Ti
Thuật toán: Mỗi một tác vụ được gán với một
mức ưu tiên Tác vụ với deadline nhỏ hơn sẽ cómức ưu tiên cao hơn Tác vụ với mức ưu tiêncao hơn ngắt các tác vụ với mức ưu tiên thấp
Phân tích khả năng lập lịch: tập hợp của tác vụtuần hoàn là có thể lập lịch với DM nếu (điều
kiện đủ)
Trang 24DM tiếp
Sự cần và đủ kiểm tra khả năng lập lịch
Sự đòi hỏi bộ xử lý trong trường hợp xấu nhất xảy ra khi mọi tác vụ được giải phóng cùng một lúc tại các thời điểm có tính quyết định của chúng.
Cho mỗi tác vụ i, tổng thời gian xử lý của chúng và sự cản trở bởi các tác vụ có mức ưu tiên cao hơn phải nhỏ hơn hoặc bằng Di
Đo sự cản trở trong trường hợp xấu nhất của tác vụ i
có thể được tính bằng tổng của thời gian xử lý của
mọi tác vụ ở mức độ ưu tiên cao hơn được giải
phóng trước thời gian t, mà theo thứ tự i < j Ù Di < Dj
Trang 25DM tiếp
Thời gian response dài nhất Ri của tác vụ tuần hoàn i được tính bằng tổng thời gian tính toán của nó tại thời điểm có tính quyết định, và sự cản trở bởi tác vụ có mức ưu tiên cao hơn Ri = Ci + Ii
Kiểm tra tính lập lịch khả thi cần phải tính toán giá trị nhỏ nhất của Ri cho mọi tác vụ
i với Ri ≤ Di
Trang 26} return(SCHEDULABLE);
}
Trang 28DM ví dụ tiếp
Trang 29DM ví dụ tiếp
Trang 30di,j = Φi + (j-1) Ti + Di
Tối ưu: không tồn tại thuật toán khác có thể lậplịch bởi EDF
Trang 32Lập lịch EDF
Nếu sự sử dụng bộ xử lý U>1, thì không có lậplịch thỏa mãn Tổng thời gian tính toán theo yêucầu trong khoảng T = T1·T2· · ·Tn là
Nếu sự sử dụng bộ xử lý U<1, thì sẽ có lập lịchthỏa mãn Giả thiết deadline bị thiếu tại thời gian
t2
Trang 33Lập lịch EDF tiếp
Với khoảng [t1, t2], tổng thời gian tính toán
theo yêu cầu bởi tác vụ tuần hoàn được
giới hạn bởi
Deadline bị thiếu tại thời gian t2
Trang 34Tác vụ tuần hoàn
Ví dụ: cho 2 tác vụ, deadline = chu kỳ, U=97%
Trang 35 Tác vụ rời rạc: hướng sự kiện, offline theo tác vụ không tuần hoàn với thời gian ép buộc có thể hoàn thành với
sự giả định đúng đắn của môi trường, có thể theo thời gian tới lớn nhất đối với mỗi sự kiện Tác vụ không tuần hoàn xác định bởi khoảng thời gian lớn nhất giữa tác vụ được gọi là rời rạc.
Trang 36Tác vụ tuần hoàn không bị ảnh hưởng
Sự đáp lại của các tác vụ không tuần hoàn có thể ngăn cấm, và không thể gán mức ưu tiên cao hơn tới chúng