1. 程式人生 > >Linux:程序優先順序

Linux:程序優先順序

  • 什麼是程序優先順序?
    1.cpu分配資源的先後順序,就是指程序的優先權
    2.優先順序高的程序有優先執行的權利。配置程序優先權對多工環境的Linux很有用,可以改善系統的效能
    3.可以把程序繫結到指定的cpu上,這樣可以把不重要的程序安排到別的cpu上,可以改善系統的整體效能(不用在多個核心上切換提高效率)
  • 互動式程序和批處理程序
    1.互動式程序:一旦操作立即反應,優先順序高(人性化體驗)
    2.批處理程序:運行於作業系統後臺,通常幹一些重複的事情(優先順序可以稍低)
  • 如何檢視程序的優先順序?——在命令列輸入ps -l命令
    在這裡插入圖片描述

PRI:程序可被執行的優先順序,其值越小越早被執行PRI(new)=PRI(old)+nice
NI:代表這個程序的nice值,表示程序優先順序修改時要修改的數值
當nice值為負值時,那麼該程序的優先順序會變高,越早被執行,所以在Linux下調整程序優先順序就是調整nice值,nice的取值範圍為-20-19,一共四十個級別,但是nice值不是程序的優先順序,不是一個概念,但是nice值的變化會影響優先順序的變化

  • 修改程序優先順序的命令
  • nice:在程式啟動前調整程序的nice -n -5 ./a.out
  • rencie:調整已經存在的程序的nicerencie -5 -p 2222//PID為2222的程序nice值設為-5
    -在這裡插入圖片描述
    在這裡插入圖片描述
  • 用top命令更改已經存在的程序nice:
    1.top
    2.進入top後按"r"->輸入程序PID->輸入nice值