Chương VI Kiến trúc bộ nhớ
2. Vấn đề quản lý bộ nhớ
2.3. Cơ chế hoạt động đa nhiệm
Nhiệm vụ được định nghĩa như là sự thực hiện một chương trình nào đó. Mỗi một nhiệm vụ có một đoạn trạng thái nhiệm vụ (đoạn TSS – Task State Segment) chứa toàn bộ trạng thái của nhiệm vụ đó. Mỗi đoạn TSS được quản lý (trỏ) bởi một Bộ mô tả TSS nằm trong bảng GDT.
CPU x86 có phần cứng hỗ trợ thao tác chuyển nhiệm vụ. Thao tác chuyển nhiệm vụ thực hiện lưu và bảo vệ toàn bộ trạng thái hoạt động của nhiệm vụ đang thực hiện (bao gồm nội dung toàn bộ các thanh ghi của CPU, không gian địa chỉ có liên quan và Bộ chọn LDT của nhiệm vụ đang chạy) vào đoạn TSS, sau đó nạp trạng thái của nhiệm vụ tiếp theo từ đoạn TSS tương ứng vào CPU, kiểm tra quyền truy nhập và bắt đầu thực hiện nhiệm vụ mới. Thanh ghi nhiệm vụ TR (Task Register) trỏ đến Bộ mô tả TSS quản lý nhiệm vụ hiện thời.
Thao tác chuyển nhiệm vụ được tiến hành theo các bước sau :
Lưu toàn bộ trạng thái hoạt động của nhiệm vụ đang thực hiện (bao
gồm nội dung toàn bộ các thanh ghi của CPU, các địa chỉ có liên quan và Bộ chọn LDT của nhiệm vụ hiện thời) vào đoạn trạng thái nhiệm vụ TSS của nhiệm vụ này.
Nạp Bộ chọn nhiệm vụ tiếp theo vào thanh ghi TR. Thanh ghi TR
trỏ đến Bộ mô tả TSS quản lý đoạn TSS của nhiệm vụ tiếp theo.
Qua Bộ mô tả TSS truy nhập đoạn TSS của nhiệm vụ tiếp theo,
Nguyễn Trung Đồng – Tel 0983 410 866
đó có thanh ghi LDTR. Bộ mô tả TSS được nạp vào phần kín của TR.
Thực hiện kiểm tra quyền truy nhập.
Thực hiện nhiệm vụ tiếp theo.