Her şeyden önce, temel olarak iki tip klasik çerçeve sürücüsü vardır:
- Genel donanım ve bellenim sürücüleri (örneğin, vga, vesafb / uvesafb, efifb)
- Donanıma özgü sürücüler (örneğin rivafb, atyfb)
Klasik çerçeveli sürücü sürücülerinin tümü temel mod ayar desteğine sahipti, ancak donanım hızlandırma için herhangi bir destek varsa çok az maruz kaldılar.
Klasik X tasarımı ile bu gerçekten bir sorun değildi: 2B hızlandırma için, X sunucusu kök olarak çalıştı ve donanıma doğrudan erişebildi. Temelde framebuffer sürücüsünü tamamen atladı. 3D (ve yeni kartlarda 2d desteği) için, aynı zamanda video belleğine erişen ve yönetilen aracı çeken bir DRM sürücüsü de kullanırdı.
Bu kurulumda, mod ayarlamanın yapıldığı iki yer vardı: hem çekirdek çerçeve sürücü sürücüsünde hem de kullanıcı alanı X sunucusunda. Kodun bu şekilde kopyalanması (ve sürücüler arasında, örneğin VT-switch'de zaman zaman mücadele) ideal değildi.
Ek olarak, aynı donanım parçası için çekirdekte iki ayrı sürücü vardı: çerçeve sürücüsü ve DRM sürücüsü. Bazı durumlarda (örneğin, km-km öncesi intelfb), birini veya diğerini yükleyebilirsiniz, ancak her ikisini de aynı anda yükleyemezsiniz.
KMS bu sorunların çözümü idi. O:
- Çekirdek donanıma özgü framebuffer sürücüsünü ve drm sürücüsünü tek bir sürücüde birleştirir.
- X sunucusunun mod ayarını denetlemek için kullanması için bir arabirim sağlar, böylece X sunucusunun donanıma doğrudan erişmesi gerekmez. (Aslında, KMS ile, X sunucusu artık kök izinlerine ihtiyaç duymuyor.)
Bazı ilginç notlar: KMS'nin gerçekte 2004 yılında başladığı şeye geçiş; Jon Smirl'in e-postasını konsolide arama bölümüne bakın .
Daha spesifik sorularınızı cevaplamak için:
- Hız genellikle, hızlandırılmamış genel sürücülerden (örn. VGA, vesafb) daha kötü olmayacaktır, ancak KMS framebuffer metin konsolu, hız yerine kolaylık ve acil kullanım için tasarlanmıştır ve konsol bazı sürücülerde tam olarak hızlandırılmamıştır. Örneğin, sarılmış uzun çizgiler intel kartlarda oldukça kötü.
- Eski framebuffer arayüzlerini kullanmak için tasarlanan uygulamalar hala bir KMS framebuffer üzerinde çalışacaktır.