Qual é a diferença entre os drivers gráficos no kernel e os drivers gráficos para o Xorg?

3

Eu instalei o Kernel 4.15.0 mainline do Kernel PPA e inicializei um PC e instalei uma GUI mínima. Depois, chequei o que estava rodando e notei que o driver nouveau estava sendo carregado, porém quando eu estava instalando a GUI eu não escolhi explicitamente a instalação do pacote Ubuntu xserver-xorg-video-nouveau .

Eu usei modinfo para verificar qual módulo estava sendo carregado e esta é a saída: /lib/modules/4.15.0-041500-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko

Eu pesquisei o conteúdo do pacote que o Ubuntu fornece no diretório de pacotes do Ubuntu e lista esses arquivos:

/usr/lib/xorg/modules/drivers/nouveau_drv.so /usr/share/bug/xserver-xorg-video-nouveau/script /usr/share/doc/xserver-xorg-video-nouveau/NEWS.Debian.gz /usr/share/doc/xserver-xorg-video-nouveau/README.Debian /usr/share/doc/xserver-xorg-video-nouveau/changelog.Debian.gz /usr/share/doc/xserver-xorg-video-nouveau/copyright /usr/share/man/man4/nouveau.4.gz

E, embora eu esteja claramente usando o driver, não tenho esse arquivo no meu sistema: /usr/lib/xorg/modules/drivers/nouveau_drv.so .

Então, quais são as diferenças entre esses dois arquivos?

    
por Uri Herrera 19.02.2018 / 22:41

1 resposta

4

Diferença entre dois arquivos

Diferenças podem ser encontradas em muitos níveis. Para esta resposta limitada, as diferenças de tamanho e as diferenças de aplicação são descritas.

Diferenças de tamanho

$ ll /usr/lib/xorg/modules/drivers/nouveau_drv.so
-rw-r--r-- 1 root root 221200 Jul  6  2017 /usr/lib/xorg/modules/drivers/nouveau_drv.so
$ ll /lib/modules/4.14.20-041420-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko
-rw-r--r-- 1 root root 3646510 Feb 16 15:53 /lib/modules/4.14.20-041420-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko

O módulo kernel Nouveau é 16 vezes maior que o driver Xorg. Isto implica que o módulo do kernel faz muito mais.

Existem drivers adicionais do Xorg que alguns sistemas (especialmente laptops) terão:

  

No Debian os drivers gráficos 2D para o servidor X.Org são empacotados   individualmente e chamado xserver-xorg-video - *. [7] Depois da instalação   o arquivo de driver de gráficos 2D é encontrado em   / usr / lib / xorg / modules / drivers /. O pacote xserver-xorg-video-nouveau   instala nouveau_drv.so com um tamanho de 215KiB, a proprietária Nvidia   O driver GeForce instala um arquivo de tamanho 8MiB chamado nvidia_drv.so ...

O nvidia_drv.so é 37 vezes maior que nouveau_drv.so .

Diferenças de aplicativo

O módulo kernel Nouveau é um arquivo .ko e o driver Xorg é um tipo de arquivo .drv.so . Esta questão pergunta qual a diferença entre os dois tipos de arquivos. A melhor resposta (IMO) afirma:

  

Em termos leigos:

     

Módulos do kernel (ko) são executados no espaço do kernel, módulos do usuário (assim) são executados no usuário   espaço.

     

Espaços do kernel facilitam (ou não) o acesso a uma variedade de funções   esse espaço de usuário não.

     

Os módulos do kernel são sempre executados no espaço do kernel e, se estiverem com bugs ou   errônea, pode congelar o sistema.

     

O espaço do usuário é "protegido" e é menos provável que um módulo ou aplicativo com bugs   travar o sistema.

    
por WinEunuuchs2Unix 25.02.2018 / 16:49