Android帧缓冲区(Frame Buffer)硬件抽象层(HAL)模块Gralloc的实现原理分析(8)
4. 分配图形缓冲区 前面提到,用户空间的应用程序用到的图形缓冲区是由Gralloc模块中的函数gralloc_alloc来分配的,这个函数实现在文件hardware/libhardware/modules/gralloc/gralloc.cpp中,如下所示: staticintgralloc_alloc(alloc_device_t*dev, intw,inth,intformat,intusage, buffer_handle_t*pHandle,int*pStride) { if(!pHandle||!pStride) return-EINVAL; size_tsize,stride; intalign=4; intbpp=0; switch(format){ caseHAL_PIXEL_FORMAT_RGBA_8888: caseHAL_PIXEL_FORMAT_RGBX_8888: caseHAL_PIXEL_FORMAT_BGRA_8888: bpp=4; break; caseHAL_PIXEL_FORMAT_RGB_888: bpp=3; break; cas...