close

如果遇到系統效能問題,

常常會需要對process的排程屬性做微調,

如果不想要每次調整都必須重新build code,

在run time的時候設定user process的排程屬性是個不錯的方法

 

首先我們必須知道, 常見的schedule policy有:

1. SCHED_FIFO

2. SCHED_RR

3. SCHED_OTHER

 

而在這裡就針對schedule的policy做進一部描述,

而是介紹如何透過在linux平台上的chrt指令查看/更改user process的屬性

 

1. 查看process  {pid} 的排程屬性

$ chrt -p {pid}

 

2. 設定process {pid}的policy及prioriy

$ chrt -{arg1} -p -{arg2} {pid}

這裡有兩個輸入參數arg1, arg2分別為使用者欲設定的policy以及priority

舉例來說若想要更改pid: 1234的進程設定為policy: RR, priority: 50, 則可以用以下指令達成(當然首先必須有root權限)

ex. $ chrt -r -p 50 1234

 

3. 當我們不知道系統有支援哪些排程屬性,

使用以下指令可以顯示目前系統支援的所有排程策略跟優先權的range

$ chrt -m

arrow
arrow

    Mk 發表在 痞客邦 留言(0) 人氣()