2011-07-19 22 views
2

我的查詢是關於設計一個進程的優先級值的。在我的系統中,進程A在優先級爲83的RR中運行。現在我在RR中有另一個進程B,我希望B的優先級高於A(即,我希望B總是與A進行比較)。在Linux中改變實時進程優先級..?

要做到這一點,我應該爲B選擇什麼樣的價值。我已經在代碼中看過,根據過程的歷史,有5點的懲罰/獎金。

此外,如果我選擇值84或85,在某些情況下是否有機會忽略我的過程。

請幫助設計這個值。

+0

這些過程在任何方面都有相似之處嗎?他們做大致相同類型和數量的I/O,使用內存等嗎? – wallyk

+0

I/O的奇特性,內存的使用幾乎相同。他們所完成的任務只有不同之處。進程B用於監視其他進程是否存在或不存在。過程A只是正常的活動。所以這就是爲什麼我希望進程B的優先級高於A. –

回答

1

現在我明白了。實時任務(FF/RR)不受懲罰/獎金規則的約束。使用O(1)調度程序,將選擇具有較高優先級的任務。在我的情況下,如果進程B的優先級大於進程A,進程B將被安排。

對SCHED_OTHER/SCHED_NORMAL的處罰/獎金。

+1

請添加內核版本和調度程序的細節,因爲不同的調度程序將具有不同的邏輯。 – chandank