Pixmap in X

XYPixmap

The data for a XYPixmap is organized as a set of bitmaps representing individual bit planes, with the planes appearing from MSB to LSB in bit order just as demonstrated below. Every pixel value is 0x55 (b’01010101) in this example.

                              ┌────────────────────────────┐
                              │1111111111111111111111111111│        
                            ┌─┴──────────────────────────┐1│
                            │0000000000000000000000000000│1│        
                          ┌─┴──────────────────────────┐0│1│
                          │1111111111111111111111111111│0│1│        
                        ┌─┴──────────────────────────┐1│0│1│
                        │0000000000000000000000000000│1│0│1│        
                      ┌─┴──────────────────────────┐0│1│0│1│
                      │1111111111111111111111111111│0│1│0│1│        
                    ┌─┴──────────────────────────┐1│0│1│0│1│◀────────────────── plane_7 
                    │0000000000000000000000000000│1│0│1│0│─┘        
                  ┌─┴──────────────────────────┐0│1│0│1│0│◀────────────────── plane_6 
                  │1111111111111111111111111111│0│1│0│1│─┘       
                ┌─┴──────────────────────────┐1│0│1│0│1│◀────────────────── plane_5 
                │0000000000000000000000000000│1│0│1│0│─┘      
                │0000000000000000000000000000│1│0│1│0│◀────────────────── plane_4       
                │0000000000000000000000000000│1│0│1│─┘      
                │0000000000000000000000000000│1│0│1│◀────────────────── plane_3       
                │0000000000000000000000000000│1│0│─┘      
                │0000000000000000000000000000│1│0│◀────────────────── plane_2  
                │0000000000000000000000000000│1│─┘       
                │0000000000000000000000000000│1│◀────────────────── plane_1        
                │0000000000000000000000000000│─┘       
                │0000000000000000000000000000│◀────────────────── plane_0       
                └────────────────────────────┘

Pixel buffer

As a core feature of GLX & EGL, pixel buffer or pBuffer is allowed for off-screen rendering. Pixel buffer is essentially a renderable area allocated by OpenGL itself (most likely a framebuffer) and is bound to an OpenGL rendering context.
With respect to GLX, glXCreatePbuffer creates a pixel buffer and return its XID. In the implementation of Mesa, it calls XCreatPixmap to get an XID which is bound to the pixel buffer.