在不隔离内存的情况下使用新的位置是安全的吗?



我想将对象创建到内存中的特定位置,在我的情况下,它是地址0x64000000,这是外部ram,我知道此内存是空的(即没有任何内容,没有任何内容写入,读取,读取或执行记忆(。到目前为止看起来稳定。

我在STM32F4上运行此操作。

使用此类新的位置有任何危险,如果是这样,是否有其他方法将对象创建到特定的内存地址?

如果您确实知道内存是空的(堆栈不使用,也不是动态存储 - 如果这甚至可用,则它是安全的。实际上没有任何情况C 标准保证了这样的事情 - 您要依靠硬件/运行时实现文档。

如果必须将其移植到其他硬件,则该程序可能需要更改。它在任何使用虚拟内存的系统上都无法使用。

相关内容

最新更新