You are on page 1of 2

1.

Chương trình có 2 task với 1 task tạo thêm là Task2 và task mặc định
StartDefaultTask

2. Chúng ta sẽ viết code bên trong hàm nhập của tác vụ mà chúng ta muốn tác vụ
thực hiện.

3. Cho các khoảng delay giữa các task khi thực hiện
4. Kết quả:
Bây giờ hạt nhân có 2 Nhiệm vụ để chạy, Vì vậy, nó sẽ chọn một nhiệm vụ có
Mức độ ưu tiên cao hơn tức là Nhiệm vụ2. Câu lệnh printf sẽ được thực thi và
Tác vụ sẽ chuyển sang chế độ chặn trong 2 giây.

Ngay sau đó, kernel sẽ chạy Tác vụ Mặc định. Một lần nữa sau khi chạy câu lệnh
printf, tác vụ Mặc định sẽ chuyển sang trạng thái khối trong 1 giây.

Không có gì sẽ chạy trong một giây này.

Sau 1 giây, tác vụ mặc định sẽ sẵn sàng và chạy. Nó sẽ in và chuyển sang trạng
thái chặn trong 1 giây.

Một giây sau, tác vụ mặc định sẽ hoạt động trở lại, cùng với đó Tác vụ 2 cũng sẽ
thoát khỏi chế độ chặn, vì đã 2 giây kể từ khi Tác vụ 2 chuyển sang chế độ chặn.

Kernel lại có 2 tác vụ đang chạy nên nó sẽ chạy tác vụ ưu tiên cao hơn, tức là
Task2 trước.

Chu kỳ này sẽ tiếp tục theo thứ tự như vậy.

5. Thay đổi độ ưu tiên


 Tạo thêm Task 3
Ta có thể thay đổi độ ưu tiên của các task theo ý muôn bằng cách chỉnh các mức
ưu tiên tăng dần từ osPriorityBelowNormal, osPriorityNormal,
osPriorityAboveNormal

Kết quả thứ tự xuất hiện các dòng lệnh khi chỉnh mức độ ưu tiên

You might also like