mbed uVisor 关于内存保护这块的机制

最近做毕设用到了mbed Uvisor,我在一篇关于uvisor 的文档中看见关于内存保护的示意图

其中不同box 之间内存不能直接访问,这是不是就意味着uvisor可以防止 一个BOX中出现内存溢出时影响其他BOX的内存区域,或者说在PUBLIC box中不能直接访问别的BOX 内存

基于此我做了一下测试

我发现并非如此,在PUBLIC BOX我可以随意读写 整个SRAM中的任何一个地址单元。

我不太清楚测试的方法是否正确

测试板卡 :K64

测试步骤

新建两个BOX A B,

A是public BOX

B 是private BOX

其中0x1fff4296这个内存区间 属于B

我在A中 新建一个变量 使其内存为0x1fff4296,并进行赋值。

通过GDB查看内存区域,我发现对应0x1fff4296被重新赋值了。这也就意味着在public BOX中,其实是可以虽然读写 pivate BOX的内存的。但这似乎又和上图里面的机制冲突。

希望有人解答我的疑问,

Thanks!