Arm mbed uvisor上的全局变量

Arm mbed uvisor上的全局变量,arm,rtos,mbed,isolation,Arm,Rtos,Mbed,Isolation,我有一个应用程序运行在K64F板上,带有ARM Mbed操作系统。我利用RTOS的功能,运行一些不同的线程来执行各种操作。线程之间的通信是使用在代码的第一部分定义为全局变量的队列来完成的(如RTOS示例中定义的) MemoryPool-NMPool; 排队; 这样,每个线程都可以访问队列 我想将这些线程转换为uvisor隔离框。我已经成功地以这种方式运行了独立线程,但是我没有发现在不同的框之间共享公共变量的方法。我没有找到关于如何将变量提供给使用uvisor编译为单个项目的box文件中定义的代

我有一个应用程序运行在K64F板上,带有ARM Mbed操作系统。我利用RTOS的功能,运行一些不同的线程来执行各种操作。线程之间的通信是使用在代码的第一部分定义为全局变量的队列来完成的(如RTOS示例中定义的)

MemoryPool-NMPool;
排队;
这样,每个线程都可以访问队列


我想将这些线程转换为uvisor隔离框。我已经成功地以这种方式运行了独立线程,但是我没有发现在不同的框之间共享公共变量的方法。我没有找到关于如何将变量提供给使用uvisor编译为单个项目的box文件中定义的代码的参考。有什么想法、例子或帮助吗

不能在框之间共享内存,uVisor框在隔离的内存空间中运行(这就是使用uVisor的全部意义)

盒子之间通信的唯一方式是通过RPC通道。请参阅“将公共安全入口点暴露到安全箱”部分


我认为您只能通过RPC通道传递原语和结构(因为它们的大小是固定的),但这值得一试。

您不能在框之间共享内存,uVisor框在隔离的内存空间中运行(这就是使用uVisor的全部意义)

盒子之间通信的唯一方式是通过RPC通道。请参阅“将公共安全入口点暴露到安全箱”部分

我认为您只能通过RPC通道传递原语和结构(因为它们的大小是固定的),但这值得一试

MemoryPool<cMsg, 16> NMPool;
Queue<cMsg, 16> NMQueue;