CÁC MÔ HÌNH XỬ LÝ ĐỒNG HÀNH Hầu hết các hệ điều hành hiện đại đều cho phép người dùng thi hành nhiều công việc đồng thời trên cùng một máy tính. Nhu cầu xử lý đồng hành (concurrency) này xuất phát từ đâu, và hệ điều hành cần phải tổ chức hỗ trợ như thế nào cho các môi trường đa nhiệm (multitask) như thế ? Đó là nội dung chúng ta sẽ tìm hiểu trong bài này. CẦU XỬ LÝ ĐỒNG HÀNH Có 2 động lực chính khiến cho các hệ điều hành hiện đại thường hỗ. | BÀI 2 CÁC MÔ HÌNH XỬ LÝ ĐỒNG HÀNH Hầu hết các hệ điều hành hiện đại đều cho phép người dùng thi hành nhiều công việc đồng thời trên cùng một máy tính. Nhu cầu xử lý đồng hành concurrency này xuất phát từ đâu và hệ điều hành cần phải tổ chức hỗ trợ như thế nào cho các môi trường đa nhiệm multitask như thế Đó là nội dung chúng ta sẽ tìm hiểu trong bài này. CẦU XỬ LÝ ĐỒNG HÀNH Có 2 động lực chính khiến cho các hệ điều hành hiện đại thường hỗ trợ môi trường đa nhiệm multitask trong đó chấp nhận nhiều tác vụ thực hiện đồng thời trên cùng một máy tính - Tăng hiệu suất sử dụng CPU Phần lớn các tác vụ job khi thi hành đều trải qua nhiều chu kỳ xử lý sử dụng CPU và chu kỳ nhập xuất sử dụng các thiết bị nhập xuất xen kẽ như sau CPU IO CPU IO CPU Nếu chỉ có 1 tiến trình duy nhất trong hệ thống thì vào các chu kỳ IO của tác vụ CPU sẽ hoàn toàn nhàn rỗi. Ý tưởng tăng cường số lượng tác vụ trong hệ thống là để tận dụng CPU nếu tác vụ 1 xử lý IO thì có thể sử dụng CPU để thực hiện tác vụ 2. Tác vụ 1 CPU IO CPU IO CPU CPU IO CPU IO Tác vụ - Tăng tốc độ xử lý Một số bài toán có bản chất xử lý song song nếu được xây dựng thành nhiều module hoạt động đồng thời thì sẽ tiết kiệm được thời gian xử lý. Ví dụ Xét bài toán tính giá trị biểu thức kq a b c d . Nếu tiến hành tính đồng thời a b và c d thì thời gian xử lý sẽ ngắn hơn là thực hiện tuần tự. Trong các trường hợp đó cần có một mô hình xử lý đồng hành thích hợp. Trên máy tính có cấu hình nhiều CPU hỗ trợ xử lý song song multiprocessing thật sự điều này sẽ giúp tăng hiệu quả thi hành của hệt thống đáng kể. II. KHÁI NIỆM TIẾN TRÌNH PROCESS VÀ MÔ HÌNH ĐA TIẾN TRÌNH MULTIPROCESS Để hỗ trợ sự đa chương máy tính phải có khả năng thực hiện nhiều tác vụ đồng thời. Nhưng việc điều khiển nhiều hoạt động song song ở cấp độ phần cứng là rất khó khăn. Vì thế các nhà thiết kế hệ điều hành đề xuất một mô hình song song gỉa lặp bằng cách chuyển đổi bộ xử lý qua lại giữa các chương trình để duy trì hoạt động của nhiều chương trình cùng lúc .