1. 功能概述¶
hbmem api使用说明,包括com buffer、graphic buffer、graphic buffer group、queue、pool、share pool的创建使用,多进程共享等。
1.1. 软件架构说明¶
本sample基于libhbmem API实现,调用libhbmem提供的API,实现不同buffer类型的内存申请和进程间共享。

1.2. 代码位置及目录结构¶
1.3. API流程说明¶
libhbmem库调用ion进行buffer分配:

com buffer、graph buffer、graphic buffer group 分配流程图

queue使用流程图:

pool使用流程图:

share pool 使用流程图:

2. 编译¶
2.1. 编译环境¶
2.2. 编译说明¶
本sample主要依赖libhbmem提供的头文件:
编译依赖的库有如下:
编译命令:
3. 运行¶
3.1. 支持平台¶
J6X Matrix
3.2. 运行指南¶
运行方法
创建com buffer:
创建cache,noncached com buffer,赋值,比较耗时:
在各个heaps里,创建com buffer:
创建graph buffer:
在各个heaps里,创建graph buffer:
创建graph buffer group:
在各个heaps里,创建graph buffer group:
进程内common buffer共享:
进程内common buffer共享,consume_cnt:
进程间common buffer共享:
进程内graphic buffer共享:
进程内graphic buffer共享,consume_cnt:
进程间graphic buffer共享:
进程内graphic buffer group共享:
进程内graphic buffer group共享,consume_cnt:
进程间graphic buffer group共享:
进程间share pool 共享:
share pool使用:
buffer queue 使用:
pool使用:
在graphic buffer与common buffer之间实现buffer转换:
增加common buffer用户态引用计数:
增加graphic buffer用户态引用计数:
3.3. 运行参数说明¶
-m 指定sample用例,具体见运行结果展示
3.4. 测试结果说明¶
如果log最后以xxxx done结尾,则表示sample执行成功
3.5. 运行结果展示¶
创建com buffer
创建cache,noncached com buffer,赋值,比较耗时
在各个heaps里,创建com buffer
创建graph buffer
在各个heaps里,创建graph buffer
创建graph buffer group
在各个heaps里,创建graph buffer group
进程内common buffer共享
进程内common buffer共享,consume_cnt
进程间common buffer共享
进程内graphic buffer共享
进程内graphic buffer共享,consume_cnt
进程间graphic buffer共享
进程内graphic buffer group共享
进程内graphic buffer group共享,consume_cnt
进程间graphic buffer group共享
进程间share pool 共享
share pool使用
buffer queue 使用
pool使用
在graphic buffer与common buffer之间实现buffer转换
增加common buffer用户态引用计数
增加graphic buffer用户态引用计数