Linux 進程調度工具
來源:互聯網
上載者:User
Linux 進程調度工具——schedutils 通過系統調用實現與進程調度相關的參數設定,如 CPU affinity.
Schedutils 軟體包中包括的程式有 taskset,irqset,lsrt 和 chrt,它們可以對處理進程參數進行全面的管
理.
1, taskset
taskset [options] [mask] [pid | command [arg]...]
設定/擷取指定進程的 CPU 綁定或根據指定的綁定掩碼運行一個新進程.
Mask:進程與 CPU 的綁定關係由一個4位元組的不帶正負號的整數通過位元遮罩指定,每個二進位位代表一個
邏輯處理器,最低端位指第一個邏輯處理器,最高端指最後一個處理器.如,當用十六進位表示時:
0x00000001 指處理器 #0
0x00000003 指處理器 #0 與 #1
0xFFFFFFFF 指所有處理器(#0 到 #31)
選項:
-p,--pid 針對指定 PID 的已有進程操作,而不是啟動新任務.
-h,--help 顯示協助資訊.
-v,--version 顯示版本資訊.
例子:
指定綁定 mask 運行新命令:
taskset [mask] -- [command] [arguments]
擷取指定進程的綁定關係:
taskset -p [pid]
為已有進程設定 CPU 綁定關係:
taskset -p [mask] [pid]
2, irqset
irqset [options] [mask] [interrupt]
第1章 進階特性概述
7
設定/擷取系統中斷的 CPU 綁定.
通常在 SMP 系統中,系統中斷完全是隨機地被發送給任一處理器;而通過本工具可以把一個中斷綁
定到一組處理器,只有這些處理器可以接收並處理該中斷.此處mask 與 taskset 中意義相同.無參數運
行 irqset 將顯示所有中斷的綁定關係.
1.2 功能方面
1.2.1 對檔案系統的支援
支援多種最新的記錄檔系統,包括 XFS,JFS,REISERFS,EXT3 等.關於這些記錄檔系統的
特徵及比較,請參閱本手冊第2章:進階檔案系統指南.
1.2.2 支援iSCSI協議
對海量存放裝置和相關協議有進一步的支援,包括 iSCSI.
iSCSI 允許在使用 TCP/IP 協議的網路上傳輸 SCSI I/O 命令和資料,就像將 SCSI 命令映射到光纖通
道,並行 SCSI 和 SSA 介質上一樣.在伺服器端安裝 iSCSI 裝置磁碟機,接收應用程式的 I/O 請求,再使
用 iSCSI 協議將它們在 LAN 上傳輸.目標存放裝置可以直接附著於 LAN,也可以使用路由器(協議,
轉換器)來串連到 LAN.與其它解決方案相比,iSCSI 有投資小,IO 效能突出,傳輸距離長,管理和部
署方便等優點.
Red Flag Advanced Server 4.0 支援 iSCSI 的用戶端,不支援服務端.
1.2.3 支援LVM和EVMS
LV M(邏輯卷管理)大大增強了磁碟子系統的延展性和管理效率,關於 LVM 的使用及其相關信
息,請參閱本手冊第4章:LV M使用手冊.
EVMS 是 IBM 開發的企業卷管理系統,它把各方面的卷管理技術,如磁碟分割,Linux 邏輯卷管理
(LV M),multi-disk(MD)管理,OS2 和 AIX 卷管理和檔案系統操作統一在單個的包中.關於 EVMS
的使用及其相關資訊,請參閱本手冊第5章:使用EVMS.
1.3 可靠性提升
採用了高記憶體 PTE 補丁,防止核心在負荷過大的情況下發生宕機.
在舊的核心中,Linux 只能在低端記憶體中分配頁表入口(Page Table Entries,PTEs),這就有一個
1GB 的限制.在類似 Oracle 9iR2 等應用中,要使用大量的記憶體和進程,PTE 的總空間很大;同時串連數
據庫的使用者量很大,核心運行時將可能超出 PTE 的空間,即使有可用的空閑記憶體和交換空間系統還是會
第1章 進階特性概述
8
被掛起或宕掉.
高記憶體 PTE 補丁允許 VM 為分配 PTE 而使用 "高端記憶體" 共用池.當越來越多的使用者串連到資料庫
併產出了額外的進程時,儲存 PTE 的地區就溢出到高端記憶體,這樣就允許系統比使用舊的核心多支援3
到5倍資料的使用者.
請閱讀 《Red Flag Advanced Server 4.0 發行概述》,該文檔中包括了 Red