Trong các tệp dịch vụ systemd, người ta có thể đặt các tùy chọn liên quan lên lịch sau (từ systemd.exec
trang man , sửa tôi nếu tôi sai):
Nice Đặt mức độ đẹp mặc định (ưu tiên lập lịch) cho các quy trình được thực hiện. Lấy một số nguyên trong khoảng từ -20 (mức ưu tiên cao nhất) và 19 (mức ưu tiên thấp nhất). Xem setp Warriority (2) để biết chi tiết.
Đó là mức độ tốt đẹp quen thuộc. Có vẻ như hiệu ứng của nó bị 'lật đổ' phần nào do tính năng 'nhóm tự động' của các nhân linux gần đây. Vì vậy, các tùy chọn bên dưới có thể là những gì tôi thực sự muốn đặt để giữ cho các quy trình hoạt động tốt cho trải nghiệm máy tính để bàn của tôi.
CPUSchedulingPolicy Đặt chính sách lập lịch CPU cho các quy trình được thực hiện. Mất một trong những cái khác, lô, nhàn rỗi, fifo hoặc rr. Xem calendar_setscheduler (2) để biết chi tiết.
CPUSchedulingP Warriority Đặt mức độ ưu tiên lập lịch của CPU cho các quy trình được thực hiện. Phạm vi ưu tiên khả dụng tùy thuộc vào chính sách lập lịch CPU đã chọn (xem bên trên). Đối với các chính sách lập lịch thời gian thực, có thể sử dụng số nguyên từ 1 (mức ưu tiên thấp nhất) và 99 (mức ưu tiên cao nhất). Xem calendar_setscheduler (2) để biết chi tiết.
CPUSchedulingResetOnFork Đưa ra một đối số boolean. Nếu đúng, các ưu tiên và chính sách lập lịch trình CPU nâng cao sẽ được đặt lại khi quá trình thực thi rẽ nhánh và do đó không thể rò rỉ vào các tiến trình con. Xem calendar_setscheduler (2) để biết chi tiết. Mặc định là sai.
Tôi hiểu lựa chọn cuối cùng. Tôi tập hợp từ lời giải thích của hai người đầu tiên rằng tôi có thể chọn một chính sách lập lịch và sau đó, được ưu tiên chính sách đó. Nó không hoàn toàn rõ ràng với tôi những gì tôi nên chọn cho loại nhiệm vụ. Ví dụ: có an toàn không khi chọn 'không hoạt động' cho các tác vụ sao lưu (tương đối nhiều CPU, vì trùng lặp), hoặc một cách khác phù hợp hơn?
Nói chung, có được một cái nhìn tổng quan dễ hiểu về từng chính sách, với mỗi ưu tiên và sự phù hợp của nó cho các mục đích cụ thể là điều tôi đang tìm kiếm. Ngoài ra sự tương tác với mức độ tốt đẹp là quan tâm.
Bên cạnh lập lịch CPU, có lập lịch IO. Tôi đoán điều này tương ứng với ionice
(sửa tôi nếu tôi sai).
IOSchedulingClass Đặt lớp lập lịch I / O cho các quy trình được thực hiện. Lấy một số nguyên từ 0 đến 3 hoặc một trong các chuỗi không, thời gian thực, nỗ lực tốt nhất hoặc không hoạt động. Xem ioprio_set (2) để biết chi tiết.
IOSchedulingP Warriority Đặt mức độ ưu tiên lập lịch I / O cho các quy trình được thực hiện. Lấy một số nguyên từ 0 (ưu tiên cao nhất) và 7 (ưu tiên thấp nhất). Các ưu tiên khả dụng tùy thuộc vào lớp lập lịch I / O đã chọn (xem bên trên). Xem ioprio_set (2) để biết chi tiết.
Ở đây chúng ta thấy cấu trúc tương tự như với lập lịch CPU. Tôi cũng đang tìm kiếm loại thông tin tương tự.
Đối với tất cả các tùy chọn 'Lập lịch', các trang được đề cập đến không đủ rõ ràng đối với tôi, chủ yếu là dịch mọi thứ sang quan điểm của người dùng máy tính để bàn hơi nghiêng về mặt kỹ thuật.
nice
giá trị áp dụng).