Ti ến Trình(multitsking)

Một phần của tài liệu Tài liệu Luận văn Mailling System pdf (Trang 80 - 81)

C H HƯ ƯƠ ƠN N GG 44 G

a Ti ến Trình(multitsking)

- Lúc ban đầu, lập trình viên không có hệđiều hành mà giao tiếp trực tiếp với máy tính. Sao đó, lập trình viên xử lý tập tin batch đơn giản trên hệ điều hành hỗ trợ thực thi những tác vụ đơn lẻ. Ở các hệ thống Single-tasking, một khi tác vụ (process) được khởi động thì nó sẽ chạy hoàn tất trước khi tác vụ

khác có thể được khởi động, ví dụ như hệđiều hành DOS.

- Để có thể thực thi một chương trình trên hệ điều hành single-tasking thường phải tốn nhiều thời gian chờ đợi cho những tác vụ có thời gian xử lý lâu như I/O, không phát huy tối đa khả năng CPU(vì phải chờ những tác vụ

I/O).

- Để giải quyết vấn đề người ta đưa ra hệ điều hành multitasking. Như

vậy multitasking được định nghĩa là việc thi hành đồng thời 2 hay nhiều tác vụ

trên một CPU.

- Nhiều tác vụ khởi động để chạy trên một CPU. Hệ điều hành có trách nhiệm chuyển đổi các tác vụ thực thi trên CPU. Cách thức hệ điều hành điều khiển thi hành đồng thời nhiều tác vụ bằng cách gán cho CPU một tác vụ ở

một thời điểm xác định. Hệ điều hành multitasking tạo nên ảo giác thi hành

- Khi có nhiều tác vụ thi hành cùng một lúc, mỗi tác vụ được CPU phục vụ trong một số lượng múi thời gian nhất định. Như vậy thực sự trong một thời

điểm CPU chỉ phục vụ cho một tác vụ duy nhất, nhưng khoảng thời gian chuyển xử lý giữa các tiến trình rất nhỏ nên ta có cảm giác chúng được thi hành đồng thời.

Ví dụ:

T1,T2 là 2 tiến trình xử lý đồng thời.

- Tiến trình ưu tiên cho một tác vụ chạy sau một khoảng thời gian thực thi tác vụ khác được gọi là chuyển đổi ngữ cảnh(context switching ).

- Các hệ điều hành multitasking có thể là ưu tiên (preemptive) hoặc không ưu tiên (nonpreemptive). Ở trường hợp hệ điều hành preemptive, ứng dụng không cần biết sự chuyển đổi giữa các tiến trình (sự chuyển đổi này

được thi hành bởi hệđiều hành ), sự khác nhau giữa hệđiều hành preemptive và nonpreemptive: ở hệ điều hành nonpreemptive là ứng dụng có nhiệm vụ từ

bỏ CPU. Dạng multitasking cũng được tham khảo đến như là cooperative multitasking. Các hệ điều hành như Netware và windows 3.x là nonpreemptive multitasking, còn các hệ điều hành khác như MVS, VMS, UNIX,MAC, NT, và OS/2 là các hệđiều hành preeptive multitasking thật sự.

- Các tác vụ và tiến trình là các khái niệm cơ bản của bất kì hệ điều hành nào. Hệđiều hành phải có chức năng tạo huỷ các tiến trình.

Một phần của tài liệu Tài liệu Luận văn Mailling System pdf (Trang 80 - 81)

Tải bản đầy đủ (PDF)

(122 trang)