簡介
顯示模式設定(英語:Mode Setting)指的是為顯示卡設定螢幕解析度與色深。現今的顯示模式設定軟體已經可以支持多屏輸出和熱插拔。
定位
顯示模式設定可以在核心空間或用戶空間實現。在核心空間實現顯示模式設定(英語:Kernel Mode Setting,即KMS)會更加靈活,而且這也可以讓核心在出現致命錯誤時,即使正使用用戶空間的顯示伺服器,也能在螢幕上輸出錯誤信息。
在用戶空間實現的顯示模式切換(英語:User-space Mode Setting,即UMS)則需要超級用戶許可權才能直接訪問硬體,而在使用基於核心的顯示模式切換的情況下,用戶空間的顯示伺服器並不需要超級用戶許可權,因而基於核心的顯示模式切換安全性更佳。
KMS的套用
FreeBSD
FreeBSD基金會已宣布贊助一個FreeBSD開發者開發實現對圖形執行管理器(英語:Graphics Execution Manager,即GEM)和KMS的支持。
Linux
Linux核心在2008年11月的2.6.28版加入GEM,為實現KMS打下了基礎,而這將為支持GEM應用程式接口的轉換表映射(英語:Translation Table Maps,即TTM)記憶體管理器所替代。
Intel
2009年3月23日發布的2.6.29版核心中加入了對Intel GMA顯示卡的支持。
ATI/AMD
對R600系列之前的ATI顯示卡的支持已在2009年9月9號發布的2.6.31版核心中實現,利用直接渲染管理器實現的對R600和R700系列的支持則整合進2.6.32版核心,R800的支持也已整合進2.6.34版核心中。
NVIDIA
因為NVIDIA並未放出所有實現KMS所需的相關文檔,針對NVIDIA顯示卡開發開源驅動的Nouveau項目只能利用反向工程來獲取必要信息開發實現KMS,這大大增加了開發難度。帶有KMS支持的Nouveau驅動已加入2009年12月10日發布的2.6.33版核心,其2D加速性能已相當不錯,但3D加速實現仍處於測試階段。
Windows
基於Windows NT的Windows版本都使用了基於核心的圖形模式切換。由核心圖形模式切換實現的核心錯誤輸出即是著名的藍屏當機。
OpenBSD
注重安全性的OpenBSD也對核心圖形模式切換很感興趣,因為這樣可以在不需要超級用戶許可權的情況下運行X Window系統。
OpenSolaris
OpenSolaris將把基於核心的圖形模式設定作為新特性加入系統,對GEM的支持則已在snv_130版本中加入。
參見
•藍屏當機
•五國語言當機