Lập lịch quy trình trong hệ điều hành: Lập lịch dài hạn, trung bình, ngắn hạn
⚡ Tóm tắt thông minh
Lập lịch tiến trình là một tác vụ của hệ điều hành quản lý các tiến trình ở các trạng thái sẵn sàng, chờ và đang chạy. Nó phân bổ thời gian CPU cho mỗi tiến trình, giữ cho CPU luôn hoạt động và giảm thời gian phản hồi bằng cách sử dụng các bộ lập lịch dài hạn, trung hạn và ngắn hạn.
Lập kế hoạch quy trình là gì?
Lập lịch trình quy trình Đây là một tác vụ của hệ điều hành có nhiệm vụ lên lịch cho các tiến trình ở các trạng thái khác nhau như sẵn sàng, chờ và đang chạy.
Lập lịch tiến trình cho phép hệ điều hành phân bổ khoảng thời gian thực thi CPU cho mỗi tiến trình. Một lý do quan trọng khác để sử dụng hệ thống lập lịch tiến trình là nó giữ cho CPU luôn hoạt động. Điều này cho phép bạn đạt được thời gian phản hồi tối thiểu cho các chương trình.
Xử lý hàng đợi lập lịch
Hàng đợi lập lịch tiến trình giúp bạn duy trì một hàng đợi riêng biệt cho mỗi trạng thái tiến trình và PCB (Process Plan Code). Tất cả các tiến trình có cùng trạng thái thực thi được đặt trong cùng một hàng đợi. Do đó, bất cứ khi nào trạng thái của một tiến trình được thay đổi, PCB của nó cần được tách khỏi hàng đợi hiện tại và chuyển trở lại hàng đợi trạng thái mới.
Ba loại hàng đợi của hệ điều hành là:
- Hàng đợi công việc – Nó giúp bạn lưu trữ tất cả các tiến trình trong hệ thống.
- Hàng đợi sẵn sàng – Loại hàng đợi này giúp bạn thiết lập mọi tiến trình nằm trong bộ nhớ chính, sẵn sàng và chờ thực thi.
- Hàng đợi thiết bị – Đó là một quá trình bị chặn do thiếu thiết bị I/O.

Trong sơ đồ trên:
- Hình chữ nhật biểu thị một hàng đợi.
- Hình tròn biểu thị nguồn tài nguyên.
- Mũi tên chỉ hướng diễn tiến của quy trình.
- Mỗi tiến trình mới đều được đưa vào hàng đợi Sẵn sàng trước tiên. Nó sẽ chờ trong hàng đợi này cho đến khi được xử lý để thực thi. Tại đây, tiến trình mới được đưa vào hàng đợi sẵn sàng và chờ cho đến khi được chọn để thực thi, hay nói cách khác là được điều phối.
- Một trong các tiến trình đã được cấp phát CPU và đang thực thi.
- Quá trình này cần đưa ra yêu cầu nhập/xuất dữ liệu.
- Sau đó, nó sẽ được đưa vào hàng đợi I/O.
- Quy trình này sẽ tạo ra một quy trình con mới.
- Quá trình này sẽ chờ kết thúc.
- Nó cần được loại bỏ khỏi CPU một cách cưỡng chế thông qua một ngắt. Sau khi quá trình ngắt hoàn tất, nó cần được gửi trở lại hàng đợi sẵn sàng.
Mô hình quy trình hai trạng thái
Các mô hình quy trình hai trạng thái là:
- Trạng thái đang chạy
- Trạng thái không chạy
Chạy
Trong tạp chí Operahệ thống ting, bất cứ khi nào một quy trình mới được xây dựng, nó sẽ được nhập vào hệ thống và hệ thống sẽ chạy.
Không chạy
Các tiến trình không đang chạy được giữ trong một hàng đợi, chờ đến lượt thực thi. Mỗi mục trong hàng đợi là một con trỏ đến một tiến trình cụ thể.
Mục tiêu lập kế hoạch
Dưới đây là những mục tiêu quan trọng của việc lập kế hoạch quy trình:
- Tối đa hóa số lượng người dùng tương tác trong thời gian phản hồi có thể chấp nhận được.
- Đạt được sự cân bằng giữa phản ứng và sử dụng.
- Tránh trì hoãn vô thời hạn và thực thi các ưu tiên.
- Nó cũng nên cung cấp tham chiếu đến các quy trình nắm giữ các tài nguyên quan trọng.
Loại bộ lập lịch quy trình
Bộ lập lịch là một loại phần mềm hệ thống cho phép bạn xử lý việc lập lịch trình.
Chủ yếu có ba loại Bộ lập lịch quy trình:
- Người lập kế hoạch dài hạn
- Người lập kế hoạch ngắn hạn
- Người lập kế hoạch trung hạn
Người lập kế hoạch dài hạn
Bộ lập lịch dài hạn còn được gọi là người lập kế hoạch công việcBộ lập lịch này điều chỉnh chương trình, chọn các tiến trình từ hàng đợi và tải chúng vào bộ nhớ để thực thi. Nó cũng điều chỉnh mức độ đa chương trình.
Tuy nhiên, mục tiêu chính của loại bộ lập lịch này là cung cấp sự cân bằng giữa các loại công việc, chẳng hạn như công việc xử lý và công việc I/O, cho phép quản lý đa chương trình.
Người lập kế hoạch trung hạn
Lập kế hoạch trung hạn là một phần quan trọng của trao đổipingNó cho phép bạn xử lý các tiến trình bị hoán đổi. Trong bộ lập lịch này, một tiến trình đang chạy có thể bị tạm dừng, điều này dẫn đến yêu cầu I/O.
Một tiến trình đang chạy có thể bị tạm dừng nếu nó thực hiện yêu cầu I/O. Một tiến trình bị tạm dừng không thể tiếp tục hoàn thành. Để loại bỏ tiến trình khỏi bộ nhớ và tạo không gian cho các tiến trình khác, tiến trình bị tạm dừng cần được chuyển sang bộ nhớ phụ.
Người lập kế hoạch ngắn hạn
Lập kế hoạch ngắn hạn còn được gọi là Bộ lập lịch CPUMục tiêu chính của bộ lập lịch này là tăng hiệu suất hệ thống theo các tiêu chí đã đặt ra. Nó giúp bạn chọn ra từ một nhóm các tiến trình sẵn sàng thực thi và phân bổ CPU cho một trong số chúng. Bộ điều phối sẽ trao quyền điều khiển CPU cho tiến trình được bộ lập lịch ngắn hạn lựa chọn.
Sự khác biệt giữa các Trình lập lịch biểu
Dài hạn so với ngắn hạn so với trung hạn:
| Dài hạn | Thời gian ngắn | Trung hạn |
|---|---|---|
| Chế độ dài hạn còn được gọi là trình lập lịch công việc. | Ngắn hạn còn được gọi là bộ lập lịch CPU. | Trung hạn còn được gọi là hoán đổiping Người lập kế hoạch. |
| Nó vắng mặt hoặc ở mức tối thiểu trong hệ thống chia sẻ thời gian. | Nó không đáng kể trong thứ tự chia sẻ thời gian. | Bộ lập lịch này là một phần tử của hệ thống chia sẻ thời gian. |
| Tốc độ ít hơn so với bộ lập lịch ngắn hạn. | Tốc độ nhanh nhất so với các bộ lập lịch ngắn hạn và trung hạn. | Nó cung cấp tốc độ trung bình. |
| Cho phép bạn chọn các tiến trình từ nhóm tải và đưa chúng trở lại bộ nhớ. | Nó chỉ chọn những tiến trình đang ở trạng thái sẵn sàng thực thi. | Nó giúp bạn đưa quy trình trở lại bộ nhớ. |
| Cung cấp khả năng điều khiển hoàn toàn. | Cung cấp khả năng điều khiển hạn chế hơn. | Giảm thiểu tình trạng đa nhiệm. |
Chuyển đổi bối cảnh là gì?
Đây là một phương pháp lưu trữ/khôi phục trạng thái của CPU trong PCB, để quá trình thực thi có thể được tiếp tục từ cùng một điểm vào thời điểm sau đó. Phương pháp chuyển đổi ngữ cảnh rất quan trọng đối với một hệ điều hành đa nhiệm.

