主頁 > 知識庫 > linux renice命令參數(shù)及用法詳解(linux修改程序運(yùn)行優(yōu)先級命令)

linux renice命令參數(shù)及用法詳解(linux修改程序運(yùn)行優(yōu)先級命令)

熱門標(biāo)簽:地圖標(biāo)注路線軟件 谷歌美發(fā)店地圖標(biāo)注入駐 了不起的修仙模擬器地圖標(biāo)注 地圖標(biāo)注機(jī)位 好操作的電話機(jī)器人 電話機(jī)器人客戶對話 為什么地圖標(biāo)注后不顯示 400電話辦理 誠薦翰諾科技 大連遼寧電銷機(jī)器人
linux renice 命令詳解
  功能說明:調(diào)整程序優(yōu)先級。
  語  法:renice [優(yōu)先等級][-g 程序群組名稱>...][-p 程序識別碼>...][-u 用戶名稱>...]
  補(bǔ)充說明:renice指令可重新調(diào)整程序執(zhí)行的優(yōu)先權(quán)等級。預(yù)設(shè)是以程序識別碼指定程序調(diào)整其優(yōu)先權(quán),您亦可以指定程序群組或用戶名稱調(diào)整優(yōu)先權(quán)等級,并修改所有隸屬于該程序群組或用戶的程序的優(yōu)先權(quán)。等級范圍從-20--19,只有系統(tǒng)管理者可以改變其他用戶程序的優(yōu)先權(quán),也僅有系統(tǒng)管理者可以設(shè)置負(fù)數(shù)等級。
  參  數(shù):
  -g 程序群組名稱>  使用程序群組名稱,修改所有隸屬于該程序群組的程序的優(yōu)先權(quán)。
  -p 程序識別碼>  改變該程序的優(yōu)先權(quán)等級,此參數(shù)為預(yù)設(shè)值。
  -u 用戶名稱>  指定用戶名稱,修改所有隸屬于該用戶的程序的優(yōu)先權(quán)。
linux安全網(wǎng) www.jb51.net 收集整理
一開始執(zhí)行程式就立即給予一個特定的 nice 值:用 nice 命令;
調(diào)整某個已經(jīng)存在的 PID 的 nice 值:用 renice 命令。
推薦閱讀一:linux進(jìn)程cpu資源分配命令nice,renice,taskset
進(jìn)程cpu資源分配就是指進(jìn)程的優(yōu)先權(quán)(priority)。優(yōu)先權(quán)高的進(jìn)程有優(yōu)先執(zhí)行權(quán)利。配置進(jìn)程優(yōu)先權(quán)對多任務(wù)環(huán)境的linux很有用,可以改善系統(tǒng)性能。還可以把進(jìn)程運(yùn)行到指定的CPU上,這樣一來,把不重要的進(jìn)程安排到某個CPU,可以大大改善系統(tǒng)整體性能。
一、先看系統(tǒng)進(jìn)程:
PR 就是 Priority 的簡寫,而 NI 是 nice 的簡寫。這兩個值決定了PR的值,PR越小,進(jìn)程優(yōu)先權(quán)就越高,就越“優(yōu)先執(zhí)行”。換算公式為:PR(new) = PR(old) + NI
---------------------------------------------------------------------------
二、修改進(jìn)程優(yōu)先級的命令主要有兩個:nice,renice
1、一開始執(zhí)行程序就指定nice值:nice
Java代碼
nice -n -5 /usr/local/mysql/bin/mysqld_safe

linux nice 命令詳解
  功能說明:設(shè)置優(yōu)先權(quán)。
  語  法:nice [-n 優(yōu)先等級>][--help][--version][執(zhí)行指令]
  補(bǔ)充說明:nice指令可以改變程序執(zhí)行的優(yōu)先權(quán)等級。
  參  數(shù):-n優(yōu)先等級>或-優(yōu)先等級>或--adjustment=優(yōu)先等級>  設(shè)置欲執(zhí)行的指令的優(yōu)先權(quán)等級。等級的范圍從-20-19,其中-20最高,19最低,只有系統(tǒng)管理者可以設(shè)置負(fù)數(shù)的等級。
   --help  在線幫助。
   --version  顯示版本信息。
---------------------------------------------------------------------------
2.1、調(diào)整已存在進(jìn)程的nice:renice

Java代碼
renice -5 -p 5200
#PID為5200的進(jìn)程nice設(shè)為-5

linux renice 命令詳解
  功能說明:調(diào)整優(yōu)先權(quán)。
  語  法:renice [優(yōu)先等級][-g 程序群組名稱>...][-p 程序識別碼>...][-u 用戶名稱>...]
  補(bǔ)充說明:renice指令可重新調(diào)整程序執(zhí)行的優(yōu)先權(quán)等級。預(yù)設(shè)是以程序識別碼指定程序調(diào)整其優(yōu)先權(quán),您亦可以指定程序群組或用戶名稱調(diào)整優(yōu)先權(quán)等級,并修改所有隸屬于該程序群組或用戶的程序的優(yōu)先權(quán)。等級范圍從-20--19,只有系統(tǒng)管理者可以改變其他用戶程序的優(yōu)先權(quán),也僅有系統(tǒng)管理者可以設(shè)置負(fù)數(shù)等級。
  參  數(shù):
  -g 程序群組名稱>  使用程序群組名稱,修改所有隸屬于該程序群組的程序的優(yōu)先權(quán)。
  -p 程序識別碼>  改變該程序的優(yōu)先權(quán)等級,此參數(shù)為預(yù)設(shè)值。
  -u 用戶名稱>  指定用戶名稱,修改所有隸屬于該用戶的程序的優(yōu)先權(quán)。
2.2、也可以用top命令更改已存在進(jìn)程的nice:

Java代碼
top
#進(jìn)入top后按"r"-->輸入進(jìn)程PID-->輸入nice值
三、把進(jìn)程運(yùn)行到指定CPU(即修改進(jìn)程的"CPU親和性"):taskset
兩個名詞
SMP (Symmetrical Multi-Processing):指在一個計算機(jī)上匯集了一組處理器(多CPU),各CPU之間共享內(nèi)存子系統(tǒng)以及總線結(jié)構(gòu)。
CPU affinity:中文喚作“CPU親和性”,是指在CMP架構(gòu)下,能夠?qū)⒁粋€或多個進(jìn)程綁定到一個或多個處理器上運(yùn)行。
請先確定你的cpu核心及命名(例如四個核心:0,1,2,3):cat /proc/cpuinfo

Java代碼
taskset -cp 1 5200
#把PID為5200的進(jìn)程運(yùn)行到CPU#1上
#也可以在啟動進(jìn)程時指定:
taskset -c 1 /etc/init.d/mysql start

推薦閱讀二 關(guān)于程序的執(zhí)行順序nice renice

關(guān)于程序的執(zhí)行順序:

  還記得我們提過的多人多工環(huán)境吧?因為目前的 x86 平臺的 CPU 可以做到多工的行為, 所以啰,我們的 Linux 可以在 x86 上面lsquo;同時進(jìn)行多個工作’的呢!那么多個工作是如何進(jìn)行的呢? 其實每個工作都會進(jìn)入到 CPU 的工作排程當(dāng)中,并等待 CPU 來執(zhí)行, 而 CPU 會根據(jù)每個工作的優(yōu)先執(zhí)行序 (priority) 來判斷誰比較重要, 所以某個工作就可能會比較優(yōu)先被執(zhí)行完畢啦!

  也就是說, Linux 系統(tǒng)中,每個 process 都會擁有一個所謂的‘優(yōu)先執(zhí)行序 (priority)’的屬性, 利用該屬性來讓 CPU 判斷那個工作是比較重要的,那個工作在一群工作當(dāng)中就會優(yōu)先被執(zhí)行, 也讓系統(tǒng)資源可以分配的更恰當(dāng)。我們可以使用 ps 還觀察優(yōu)先執(zhí)行序:
  [root@linux ~]# ps -l
  F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
  0 S 0 18851 18827 0 77 0 - 1302 wait pts/0 00:00:00 su
  4 S 0 18852 18851 0 76 0 - 1349 wait pts/0 00:00:00 bash
  4 R 0 19510 18852 0 76 0 - 1111 - pts/0 00:00:00 ps
  其中,那個 PRI 就是 Priority 的簡寫,而 NI 是 nice 的簡寫,這兩個東西是湊在一起才產(chǎn)生目前的 PRI 值的! PRI 越小時,代表該程序可以具有‘越早被優(yōu)先執(zhí)行’的意思,只是 PRI 是由系統(tǒng)動態(tài)產(chǎn)生的, 并不會是一直固定的值喔。至于那個 NI (nice) 則是我們操作值額外給予的一個數(shù)值, 他可以影響 PRI 的值,基本上,他的相關(guān)性是這樣的:
  * PRI(new) = PRI(old) + nice
  不過您要特別留意到,如果原本的 PRI 是 50 ,并不是我們給予一個 nice = 5 ,就會讓 PRI 變成 55 喔! 因為 PRI 是系統(tǒng)‘動態(tài)’決定的,所以,雖然 nice 值是可以影響 PRI ,不過, 最終的 PRI 仍是要經(jīng)過系統(tǒng)分析后才會決定的。另外, nice 值是有正負(fù)的喔,而既然 PRI 越小越早被執(zhí)行, 所以,當(dāng) nice 值為負(fù)值時,那么該程序就會降低 PRI 值,亦即會變的較優(yōu)先被處理。此外,您必須要留意到:

標(biāo)簽:新鄉(xiāng) 慶陽 邵陽 法律服務(wù) 阜陽 云浮 東營 沈陽

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《linux renice命令參數(shù)及用法詳解(linux修改程序運(yùn)行優(yōu)先級命令)》,本文關(guān)鍵詞  linux,renice,命令,參數(shù),及,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《linux renice命令參數(shù)及用法詳解(linux修改程序運(yùn)行優(yōu)先級命令)》相關(guān)的同類信息!
  • 本頁收集關(guān)于linux renice命令參數(shù)及用法詳解(linux修改程序運(yùn)行優(yōu)先級命令)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章