Çekirdek Modu Ayarı - Framebuffer?


24

KMS ile grafik sürücüleri çekirdeğe taşınır. Çerçeve köprüsü zaten çekirdekte olduğundan, bunun çerçeve oluşturma işlemini etkilemesini beklemem. Yine de, KMS'nin fb'yi güçlendirdiğini, fb'yi artırdığını, fb'yi gerektirdiğini ve fb desteğinin kaldırılmasını gerektirdiğini okudum. Bu da ne? Aradığım cevap KMS ve çerçeveleme makinesi arasındaki ilişkinin bir açıklaması.

Tty'de yerel çözüm almak için uvesafb kullanıyorum. Buradaki amacım bunun KMS ile bir sistemde nasıl çalışacağını anlamak. Aynı zamanda gibi şeyleri örtmek için yardımcı olur .. KMS ile kaydırma daha hızlı mı? Fbterm ve fbida gibi araçlar aynı şekilde çalışıyor mu? Kararlılık daha mı iyi?

Yanıtlar:


6

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.

3

KMS, ekran çözünürlüğünü ve derinliğini kullanıcı boşluğu yerine çekirdek boşluğuna ayarlar. Yani evet yerini alır. Çerçeve içinde doğal çözünürlük sağlar.

Çekirdek Modu Ayarı


4
KMS ile ilgili Wiki makalelerini bulmak kolaydır, ancak açıklamalar korkunç. KMS fb'nin yerini alabilir ve aynı zamanda nasıl etkinleştirebilir? Fb zaten yerel çözünürlüğü destekledi, peki farklı olan ne? Fb yardımcı programları KMS ile çalışıyor mu?
user5184

framebuffer'ın özellikle ekran geniş ekrandayken yerel çözünürlüğü desteklediğini sanmıyorum. örneğin, LCD ekranımın doğal çözünürlüğü 1680x1050
LiuYan刘研
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.