131
社区成员




在xenomai3中,用户程序怎么绑定到/proc/xenomai/heap中命名的内存堆?或者在用户空间怎么得到内核模块中的实时内存。
在xenomai3手册中对于 rt_heap_bind 的介绍是绑定的内存名称要求需要与 rt_heap_create 中传入的名称一致。
在下面的测试代码中没有使用rt_heap_creat去创建内存堆,因为rt_heap_create属于native(alchemy)模块,但是在xenomai3中,在内核态只有posix与rtdm模块,xenomai2中的内核态native模块在xenomai3中已经不复存在了,只在用户空间中实现(改名alchemy)
所以,在xenomai3中,如何实现内核与用户共享同一块实时内存?
SO 我的使用方法不对?OR xenomai3中内核与用户共享实时内存的方式改变?
内核模块内容如下:通过xnheap函数申请内存并设置名称,
cat /proc/xenomai/heap也能查看到创建的实时内存,如下
用户程序通过alchemy模块中的rt_heap_bind函数绑定/proc/xenomai/heap中已经被命名的实时内存,代码如下:
但是运行结果是用户程序怎么也绑定不了