Hiệu ứng đoàn xe trong quá trình lập kế hoạch


6

Theo tôi hiểu hiệu ứng đoàn xe , trong bối cảnh giao thông xe cộ trong một hệ thống đường bộ. Một nhóm phương tiện di chuyển chậm đi qua hệ thống, làm chậm giao thông ngay cả ở những khu vực không bị ảnh hưởng trực tiếp bởi đoàn xe.

Làm thế nào điều này áp dụng trong bối cảnh lập lịch CPU? Nó dường như không phải là một tình huống tương tự.


1
Bạn đã đọc bài viết Wikipedia ? Những thông tin nào bạn không hiểu?
Raphael

@Raphael ahh cảm ơn, tôi đã không thấy điều đó
jsj

1
Nếu câu hỏi của bạn được trả lời bởi bài viết, xin vui lòng gửi một câu trả lời tự tại đây.
Raphael

Câu trả lời:


8

Hiệu ứng vận chuyển là kết quả của việc sử dụng thuật toán Lập lịch cho lần đầu tiên đến trước (FCFS). Trong trường hợp này, bộ điều phối (lập lịch ngắn hạn) cung cấp các quy trình hiện ở trạng thái sẵn sàng cho bộ xử lý theo kiểu FIFO. Đây về cơ bản là một triển khai đơn giản của Queue. Các quy trình sắp tới được sử dụng bộ xử lý trước.

Vì nó thực thi chính sách không ưu tiên , điều đó có nghĩa là một khi quá trình bắt đầu chạy, nó sẽ không dừng trừ khi nó hoàn thành nhiệm vụ hoặc bị hệ điều hành chặn do một số lỗi nghiêm trọng hoặc I / O cần, nó cản trở các quá trình phía sau. Nếu một tiến trình cường độ cao của CPU được chạy, thì một số tiến trình cường độ I / O sẽ không được gửi đi. Trong trường hợp này, các thiết bị I / O không hoạt động . Khi quá trình cường độ cao của CPU từ bỏ điều khiển, các quy trình ràng buộc I / O sẽ nhanh chóng đi qua CPU bằng cách thêm vào hàng đợi I / O. Trong thời gian này CPU không hoạt động .

Như bạn có thể thấy phương pháp này không hiệu quả lắm vì cả thiết bị CPU và I / O đều không hoạt động trong một thời gian dài. Ngoài ra, phương pháp này thường cho thời gian chờ trung bình rất cao.

Hiệu ứng này tương tự như ví dụ giao thông. Do phương tiện di chuyển chậm , hệ thống giao thông đang chuyển hướng không hiệu quả. Các phương tiện có thể di chuyển nhanh hơn và đến đích của chúng (tương tự như trạng thái thoát của một quá trình) nhanh hơn các phương tiện di chuyển chậm phía trước chúng không thể làm điều đó. Nếu những chiếc xe này có thể di chuyển với tốc độ tiềm năng của chúng, thì con đường sẽ ít tắc nghẽn hơn trong trường hợp này. Xe tương tự như các quá trình trong hàng đợi sẵn sàng.


9

Lập lịch trình FCFS (First-Come, First-Served) cũng có thể gây ra chặn trong một hệ thống động bận rộn theo một cách khác, được gọi là hiệu ứng đoàn xe.

Khi một quá trình thâm dụng CPU chặn CPU, một số quy trình chuyên sâu I / O có thể được sao lưu đằng sau nó, khiến các thiết bị I / O không hoạt động. Khi CPU cuối cùng cũng từ bỏ CPU, thì các quá trình I / O sẽ nhanh chóng đi qua CPU, khiến CPU không hoạt động trong khi mọi người xếp hàng chờ vào I / O, và sau đó chu trình lặp lại khi quá trình thâm dụng CPU trở lại sẵn sàng xếp hàng.


Một loại hiệu ứng đoàn xe khác có thể xảy ra khi sử dụng FCFS, nếu một nhiệm vụ dài chặn tất cả các nhiệm vụ khác. - - - [chỉnh sửa được đề xuất 1 giờ trước bởi một người dùng ẩn danh]
babou

4

Trong một hệ thống đa chương trình, nếu nhiều quá trình đang chờ CPU thực thi trong hệ thống FCFS và quá trình xử lý chậm sẽ sử dụng CPU thì do tất cả các quá trình nhanh đang chờ CPU chờ trong thời gian dài không cần thiết. Đây là hiệu ứng đoàn xe.


2
Xin đừng hét.
vonbrand

1

trong FCFS nếu quy trình đầu tiên có thời gian phục vụ lớn hơn các quy trình khác có thời gian phục vụ ngắn hơn thì sẽ dẫn đến tăng thời gian chờ trung bình, điều này sẽ không xảy ra nếu trong cùng một quy trình thời gian dịch vụ ngắn hơn sẽ được phục vụ trước và sau đó quá trình có thời gian phục vụ lớn cuối cùng, sau đó sẽ dẫn đến thời gian chờ trung bình ít hơn sau đó là trường hợp đầu tiên ở trên khi chúng ta thực hiện quy trình có thời gian phục vụ lớn hơn trước. nó được gọi là hiệu ứng đoàn xe.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.