Thuật toán điều phối FCFS ( First Come First Served )

I. Giới thiệu nguyên tắt hoạt động:
Hàm lựa chọn: chọn process đợi trong hàng đợi ready lâu nhất

  • Chế độ quyết định: nonpreemptive
  • Một process sẽ được thực thi cho đến khi nó bị block hoặc kết thúc
  • FCFS thường được quản lý bằng một FIFO queue

FCFS không công bằng với các process có CPU burst ngắn. Các process này phải chờ trong thời gian dài (so với thời gian mà nó cần phục vụ) thì mới được sử dụng CPU. Điều này đồng nghĩa với việc FCFS “ưu tiên” các process thuộc dạng CPU bound.
II. Ứng dụng demo

Thuật toán điều phối FCFS ( First Come First Served )
Bạn nào có nhu cầu tham khảo source code vui lòng comment dưới bài viết:
"Thuật toán điều phối FCFS" và mail để mình check source qua cho các bạn nhé.
Download Code: http://goo.gl/vonN1v
Thiết kế giao diện ứng dụng FCFS

Thiết kế giao diện ứng dụng FCFS

III. Mở rộng thuật toán
Câu hỏi: Liệu có xảy ra trường hợp trì hoãn vô hạn định (starvation hay indefinite blocking) với giải thuật FCFS? FCFS thường được sử dụng trong các hệ thống bó (batch system)
Ví dụ thực tế

  • Việc phục vụ khách trong nhà hàng
  • Thực khách sẽ đến và gọi món ăn cho mình
  • Mỗi món ăn cần thời gian chuẩn bị khác nhau

Mục tiêu:

  • Giảm thời gian đợi trung bình của các thực khách
  • Cách làm nào sẽ phù hợp?
  • Thông thường các nhà hàng sẽ phục vụ theo kiểu FCFS (!)

Không có nhận xét nào:

Đăng nhận xét