Bây giờ chúng ta sẽ xem xét các thuật toán lập lịch trình Linux. Để bắt đầu, Linux
. Đề là đề hạt nhân, do lịch trình được dựa trên chủ đề, không quá trình
Linux phân biệt ba loại chủ đề cho các mục đích lập kế hoạch:
1. Real-time FIFO.
2. Real-time round robin.
3. Chia sẻ thời gian.
Thời gian thực FIFO đề là ưu tiên cao nhất và không preemptable ngoại trừ
một thời gian thực chủ đề FIFO mới được chuẩn bị sẵn sàng với ưu tiên cao hơn. Real-time roundrobin
đề cũng tương tự như đề FIFO thời gian thực, ngoại trừ họ hav e thời gian
lượng tử liên kết với chúng, và là preemptable bởi đồng hồ. Nếu có nhiều thời gian thực
chủ đề round-robin đã sẵn sàng, mỗi người đều được chạy cho lượng tử của nó, sau đó nó
đi đến cuối danh sách thời gian thực chủ đề round-robin. Không phải của các lớp học
thực sự là thời gian thực trong bất kỳ ý nghĩa. Thời hạn không thể được xác định và bảo đảm được
không được. Các lớp học được ưu tiên đơn giản là cao hơn so với chủ đề trong các tiêu chuẩn
lớp học chia sẻ thời gian. Lý do Linux gọi họ là thời gian thực là Linux là tuân thủ QTI
tiêu chuẩn P1003.4 ( '' thời gian thực '' mở rộng cho UNIX) trong đó sử dụng những
cái tên. Các chủ đề thời gian thực được trong nội bộ đại diện với mức độ ưu tiên từ 0
đến 99, 0 là cao nhất và 99 cấp độ ưu tiên thời gian thực thấp nhất.
Các thông thường, chủ đề không-thời gian thực tạo thành một lớp riêng biệt và được lên kế hoạch
bởi một thuật toán riêng vì vậy họ không cạnh tranh với các chủ đề thời gian thực. Bên trong,
những chủ đề có liên quan với mức độ ưu tiên 100-139, đó là,
Linux trong nội bộ phân biệt giữa 140 cấp độ ưu tiên (đối với thời gian thực và nonreal-
nhiệm vụ thời gian). Đối với thời gian thực chủ đề round-robin, Linux phân bổ CPU
thời gian cho những công việc không-thời gian thực dựa trên yêu cầu của họ và mức độ ưu tiên của họ.
Trong Linux, thời gian được đo bằng số lượng đồng hồ bọ ve. Trong các phiên bản Linux cũ,
đồng hồ chạy ở 1000Hz và từng đánh dấu là 1ms, được gọi là một nháy mắt. Trong các phiên bản mới hơn,
tần số đánh dấu có thể được cấu hình để 500, 250 hoặc thậm chí 1Hz. Để
tránh lãng phí chu kỳ CPU để phục vụ bộ đếm thời gian gián đoạn, các hạt nhân thậm chí có thể được
cấu hình trong 'tickless' 'chế độ'. Điều này rất hữu ích khi chỉ có một tiến trình đang chạy
trong hệ thống, hoặc khi CPU nhàn rỗi và cần phải đi vào tiết kiệm năng lượng
chế độ. Cuối cùng, trên hệ thống mới hơn, tính giờ có độ phân giải cao cho phép các hạt nhân để giữ
theo dõi thời gian trong granularity tiểu nháy mắt.
Giống như hầu hết các hệ thống UNIX, Linux liên kết một giá trị tốt đẹp với mỗi chủ đề. Các
mặc định là 0, nhưng điều này có thể được thay đổi bằng cách sử dụng tốt đẹp (giá trị) gọi hệ thống, trong đó giá trị
dao động từ 20 đến 19. Giá trị này xác định các ưu tiên tĩnh của mỗi chủ đề. Một
máy tính người dùng to một tỷ nơi trong nền có thể đặt cuộc gọi này trong mình
chương trình để được tốt đẹp cho người sử dụng khác. Chỉ người quản trị hệ thống có thể yêu cầu
tốt hơn so với dịch vụ bình thường (nghĩa là giá trị từ -20 đến -1). Suy luận các lý do
cho quy tắc này là trái như một bài tập cho người đọc.
đang được dịch, vui lòng đợi..
