volatile 与 cache 的疑惑
来源:互联网 发布:销售数据分析报告ppt 编辑:程序博客网 时间:2024/05/16 16:26
有一段DDR内存区,我用一个volatile变量指向起始位置,这段内存区会被一个FPGA以DMA的方式修改数据。
如果我用volatile变量能否读取到FPGA修改后的内存数据,还是说我应该在读取volatile变量前使无效这段内存对应的cache?
读取volatile变量对应的汇编语言是ldr r0 [r1]。这个语句会不会导致读取的r1对应地址是在cache中的数据,而不是内存中的实际数据?还是说volatile跳过cache,直接访问内存中的数据?
查看过相关资料后得出答案:volatile不会跳过cache!!需要cache invalidate
传送门:volatile、内存屏障、Acquire&Release语义 三者的差别和关系(一) —— 之volatile
http://blog.csdn.net/answer3y/article/details/21476787
C语言中volatile关键字的作用
0 0
- volatile 与 cache 的疑惑
- 关于volatile的一个疑惑
- 关于UI Automation中Cache性能的疑惑
- C#与API的疑惑
- bstr_t 与 SysAllocString 的疑惑
- java与.net的疑惑
- getNextElement与nextSibling的疑惑
- 指针与数组的疑惑
- getNextElement与nextSibling的疑惑
- volatile能解决cache的数据一致性吗?答案是不能
- 关于事件与委托的疑惑
- DecimalFormat的疑惑(float与double)
- 关于数组名与指针的疑惑
- NewSheet事件的疑惑与郁闷
- Ctrl+F5与F5的疑惑
- 通才与专才培养的疑惑
- 关于string.Join()的妙用与疑惑
- PHP与HTML混编的一点疑惑
- 多线程处理相关
- Mysql的Locked状态
- 伤感的restart ear nullpointexception in weblogic
- 一个男人为他媳妇写的,看了特感动!
- IIS问题汇总
- volatile 与 cache 的疑惑
- Debug和Release版本--打印log
- javac在cmd中运行javac 不是内部或外部命令
- 【求助】Eclipse和go怎么没有自动联想
- ASCII码对照表
- 窗口上提供四个文本框和一个按钮,幼儿可以在前三个文本框中输入两个运算数和运算符号,当点击按钮时在第四个文本框中显示结果。
- 内存分配方式及常见错误
- Domino iNotes服务器配置Apache逆向代理的具体步骤
- Ckeditor: Uncaught TypeError: Cannot read property 'keyCode' of undefined 解决方法