当前位置:   article > 正文

[QNX Hypervisor 2.2用户手册]6.3 内存共享_android qnx共享内存

android qnx共享内存

Hypervisor系统中的Guest可以通过共享内存区域来向其他Guset或Hypervisor Host传输数据。

QNX Hypervisor 系统中,运行在Guest中的客户端程序可以创建和管理共享内存,然后使用共享内存区域来交换数据。需要注意的是,这个共享内存区域并不是由来创建和管理,而是Hypervisor。Host应用程序在权限允许的情况下也可以创建共享内存区域或附加一个由其他创建的共享内存区域。

QNX Hypervisor提供的hypervisor-shmem-examples-*.tgz包含了QNX Guest相关的共享内存的案例程序代码:ghstest.c和Hypervisor Host相关的案例程序代码:hhstest.c。

为了对Hypervisor Host与Guest分享数据的模块执行写操作,你需要使用虚拟化API(libhyp.a)。这部分并没有包含在QNX hypervisor文档,而是在 Virtualization API Reference中有所描述。为了包含这部分额外的文档,并且支持对host模块的写操作,你可以联系QNX接口人(QNX representative)。

一、共享内存工作机制

为了使用共享内存,一个Guest中的客户端程序或Hypervisor Host中的程序需要做一下事情:

  • 映射共享内存区域;
  • 共享内存区域有更新时,可以使用硬件中断来通知共享内存的其他使用者;

Hypervisor提供了shmem虚拟设备,该设备实现了设置共享内存区域的映射和使用共享内存所需的中断。这个虚拟设备提供了使用共享内存

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号