La extensión de memoria compartida MIT o MIT-SHM o XShm es una extensión del sistema X Window para el intercambio de datos de imagen entre el cliente y el servidor utilizando la memoria compartida ( / dev / shm ). El mecanismo solo funciona cuando ambas piezas están en la misma computadora.
Autor (es) original (es) | Fundación X.Org |
---|---|
Lanzamiento estable | 1.0 / 1991 |
La capacidad básica proporcionada es la de XImages de memoria compartida. Esta es esencialmente una versión de la interfaz ximage donde los datos de la imagen real se almacenan en un segmento de memoria compartida SysV y, por lo tanto, no es necesario transferirlos a través del socket al servidor X. Para imágenes grandes, el uso de esta función puede resultar en algunos aumentos reales del rendimiento.
Además, algunas implementaciones proporcionan mapas de píxeles de memoria compartida. Se trata de matrices bidimensionales de píxeles en un formato especificado por el servidor X, donde los datos de la imagen se almacenan en el segmento de memoria compartida. Mediante el uso de mapas de píxeles de memoria compartida, es posible cambiar el contenido de estos mapas de píxeles sin usar ninguna rutina de Xlib en absoluto. Los mapas de píxeles de memoria compartida solo se pueden admitir cuando el servidor X puede utilizar la memoria virtual normal para los datos del mapa de píxeles; si los mapas de píxeles se almacenan en la memoria integrada del hardware de gráficos, una aplicación no podrá compartirlos con el servidor. [1]
En la versión 1.15 del servidor X.org [2], la extensión MIT-SHM obtiene dos solicitudes adicionales: 'X_ShmAttachFd' y 'X_ShmCreateSegment', para poder pasar la memoria compartida a través de descriptores de archivos de cliente a servidor y de servidor a cliente. , reduciendo aún más el número de operaciones de copia . [3]
Referencias
- ^ "LCA2013: La verdadera historia detrás de Wayland y X por Daniel Stone" .
- ^ Keith Packard (1 de noviembre de 2013). "[ANUNCIO] xorg-server 1.14.99.901" .
- ^ Packard, Keith (9 de enero de 2014). Composición de copia cero: investigación a la realidad (habla). Linux.conf.au 2014. Perth, Australia. 15:20 minutos . Consultado el 3 de febrero de 2014 .
enlaces externos
- MIT-SHM (la extensión de memoria compartida del MIT)
- shm.xml : la especificación del protocolo XCB para la extensión MIT-SHM