2009-06-30

建議:Linux桌面應用應該改用RealTime核心



RealTime核心是Kernel.Org裡其中一個核心計劃
它可以對一些專業上的應用,例如為音效錄音提供超低的延遲
為一些工業環境上提供更好的工作效率



ReakTime(以下簡稱RT)核心在的概念在Windows上也同樣存在
在Windows XP/VISTA上預設設定為"程式"
意既給當前正在操作的應用程式最多的系統資源
而Windows Server 2003/2008預設為背景服務
意既將系統資源均分給背景服務




簡單的說,RT可以讓我們正在操作的前景程式
獲得最大系統資源,而不會像通用核心那樣
把系統資源均分給每一個應用程式
在Linux桌面實際使用上,可以降低前景應用程式呈現灰色的情況
證明RT核心對一般桌面應用可以更有效率的分配系統資源
所以我推薦一般將Linux做桌面應用的人,可以改用RT核心

而什麼樣的人才適合用通用核心?
如果你的Linux是用來做伺服器
需要讓背景程式與服務均分系統資源
那你才應該繼續使用通用核心
已確保你的背景服務不會出現延遲


如果你是Arch用戶,可以直接透過AUR自行編譯出RT核心


如果你是Ubuntu用戶可以透過新立得
以"-rt"做關鍵字安裝RT核心




如果你對Ubuntu本身的核心有疑問,我稍微簡單解釋一下
Ubuntu的核心預設是用通用核心,如果你選擇Ubuntu Studio安裝
那預設核心就已經是RT核心了,而Ubuntu Server的Server核心
其實與通用核心最大的差異就是Server核心還另外開啟了Big memory support
這些核心之間參數或許不太一樣,但比較顯著的差別差不多就是這樣

7 則留言:

  1. 我裝了rt核心以後好像反而變得更不順
    不管做什麼動作都會頓頓的
    只有開啟程式的時候稍微好一點
    有辦法改善嗎?

    回覆刪除
  2. 重新把顯卡驅動編譯進核心看看
    再不然還有fallback可以用

    回覆刪除
  3. 我裝了ubuntu裡的rt kernel以後
    開機都沒問題 過不久突然就當機了
    ctrl alt f1都沒用
    只好強制關機...

    回覆刪除
  4. BFS(Brain Fuck Scheduler)可能比RT (realtime)更適合做桌機的Linux系統核心http://en.wikipedia.org/wiki/Brain_Fuck_Scheduler

    回覆刪除
  5. RT kernel並不是這樣用的。

    realtime並不是所謂的增加執行效能,而是能盡可能的「即時反應」。

    即時反應是要在幾 milisecond內就要有階段反應,讓錄音不能延遲、讓機器手臂不會焊錯地方,讓飛彈能即時修正目標等等。

    一般桌面運用就算是遊戲,沒有這麼即時的需要,反而比較容易造成dead lock。

    回覆刪除
  6. 「realtime會讓我們正在操作的前景程式獲得最大系統資源」這句錯誤很大。

    Linux上的realtime kernel是讓被選擇的程式獲得最高執行優先權,反應永遠最即時,但是這不等於吃掉最多的記憶體、最多的CPU運算時間。

    回覆刪除