stringtranslate.com

Configuración de modo

Regular el acceso al hardware es una tarea fundamental del núcleo. El Direct Rendering Manager y el KMS forman parte del núcleo de Linux. El KMS solo realiza la configuración del modo.

La configuración de modo es una operación de software que activa un modo de visualización (resolución de pantalla, profundidad de color y frecuencia de actualización) para el controlador de pantalla de una computadora mediante el uso de extensiones VESA BIOS o extensiones de gráficos UEFI (en computadoras más modernas).

El modo de visualización lo establece el núcleo. En la configuración de modo de espacio de usuario (UMS), el modo de visualización lo establece un proceso de espacio de usuario .

La configuración del modo kernel es más flexible y permite mostrar un error en el caso de un error fatal del sistema en el kernel, incluso cuando se utiliza un servidor de visualización de espacio de usuario.

La configuración del modo de espacio de usuario requeriría privilegios de superusuario para el acceso directo al hardware, por lo que la configuración del modo basada en kernel evita dicho requisito para el servidor de gráficos de espacio de usuario.

Implementación

Microsoft Windows

Las versiones de Microsoft Windows basadas en NT utilizan la configuración del modo kernel. La visualización de errores del kernel que se hace posible gracias a la configuración del modo kernel se denomina oficialmente "comprobación de errores", pero se la conoce más comúnmente como la Pantalla Azul de la Muerte .

Linux

El papel de KMS (configuración del modo kernel), ejemplo de Linux

El núcleo de Linux obtuvo el requisito previo para la configuración del modo basado en el núcleo al aceptar Intel GEM en la versión 2.6.28, lanzada en diciembre de 2008. [1] Esto será [ necesita actualización ] reemplazado por el administrador de memoria Tungstens Graphics TTM (Translation Table Maps) que admite la API GEM. [2] TTM fue desarrollado para los controladores gratuitos y de código abierto para los chipsets gráficos Radeon y S3 Graphics ( ver Controlador de dispositivo gráfico gratuito y de código abierto ). [3] La compatibilidad con los chipsets gráficos Intel GMA fue aceptada en la versión 2.6.29, lanzada el 23 de marzo de 2009. [4] La compatibilidad con tarjetas gráficas ATI Radeon anteriores a R600 fue aceptada en la versión 2.6.31, lanzada el 9 de septiembre de 2009. [5] La compatibilidad con R600 y R700 estaba en desarrollo dentro de DRM y se fusionó en la versión 2.6.32. [6] El soporte para Evergreen (R800) se fusionó en la versión 2.6.34. Como Nvidia no publicó toda la documentación necesaria para su chip gráfico, el desarrollo procedió bajo el proyecto nouveau , que utiliza ingeniería inversa para crear un controlador de código abierto funcional para tarjetas Nvidia. Nouveau fue aceptado en la versión 2.6.33 del kernel, publicada el 10 de diciembre de 2009. La configuración del modo basado en el kernel no solo es compatible con el controlador nouveau, sino que es obligatoria. [7] Los compositores Wayland (por ejemplo, Weston ) y kmscon dependen de la configuración del modo del kernel a través de ioctl .

LibreBSD

FreeBSD tiene soporte tanto para la configuración del modo basado en kernel como para GEM para generaciones posteriores de GPU Intel (IronLake, SandyBridge e IvyBridge) a partir de la versión 9.1. [8]

NetBSD

NetBSD admite la configuración del modo basado en el núcleo y gráficos acelerados para dispositivos Intel y Radeon. Esta implementación se introdujo en la versión 7.0 al portar el código DRM/KMS de Linux 3.15. [9]

OpenBSD

OpenBSD tiene compatibilidad con configuraciones de modo basadas en kernel para GPU Intel y Radeon. A partir de la versión 5.4 de OpenBSD, está disponible la compatibilidad con GPU Intel. Con el lanzamiento de la versión 5.5, la implementación se ha ampliado para agregar compatibilidad también con chipsets Radeon.

Alternativas

Durante la Linux Plumbers Conference 2013 se presentaron las siguientes alternativas:

Véase también

Referencias

  1. ^ "Linux 2 6 28". Nuevos en el kernel de Linux . Consultado el 14 de febrero de 2013 .
  2. ^ Larabel, Michael (26 de agosto de 2008). "Un gestor de TTM GEM-ificado para Radeon". Phoronix . Consultado el 14 de febrero de 2013 .
  3. ^ Larabel, Michael (10 de junio de 2009). "TTM Memory Manager se prepara para su lanzamiento". Phoronix . Consultado el 14 de febrero de 2013 .
  4. ^ "Linux 2 6 29". Nuevos en el kernel de Linux . Consultado el 14 de febrero de 2013 .
  5. ^ "Linux 2 6 31". Nuevos en el kernel de Linux. 2009-09-09 . Consultado el 2013-02-14 .
  6. ^ Larabel, Michael (30 de septiembre de 2009). "Rendimiento 2D de AMD R600/700: controladores abiertos y cerrados". Phoronix . Consultado el 14 de febrero de 2013 .
  7. ^ "nouveau/ KernelModeSetting". freedesktop.org. 24 de agosto de 2013. Consultado el 11 de agosto de 2014 .
  8. ^ "Notas de la versión de FreeBSD 9.1-RELEASE". FreeBSD Foundation . 30 de diciembre de 2012.
  9. ^ "Anuncio de NetBSD 7.0". El proyecto NetBSD. 25 de septiembre de 2015. Consultado el 25 de abril de 2016 .
  10. ^ "División de nodos de dispositivos DRM/KMS / Conferencia Linux Plumbers: Desarrollo del núcleo, bibliotecas y utilidades". www.linuxplumbersconf.org . Archivado desde el original el 30 de octubre de 2013.
  11. ^ "Atomic Display Framework / Conferencia Linux Plumbers: Desarrollo del núcleo, bibliotecas y utilidades".
  12. ^ "Problemas con KMS HWComposer, Atomic Display Framework y otras extensiones de KMS [sic] / Conferencia Linux Plumbers: Desarrollo del núcleo, bibliotecas y utilidades". Archivado desde el original el 2015-08-31 . Consultado el 2013-08-29 .
  13. ^ "Common Display Framework / Conferencia de Linux Plumbers: desarrollo del núcleo, bibliotecas y utilidades". www.linuxplumbersconf.org . Archivado desde el original el 12 de marzo de 2016.

Enlaces externos