请问一道公司的笔试题

lcllcl20031   2008-6-17 16:23 楼主
可以在cache空间中访问外部硬件的寄存器么?为什么

回复评论 (7)

不明白,不知道
点赞  2008-6-17 16:45
可以访问,但必须保存,否则会马上被覆盖掉
点赞  2008-6-17 17:28
不可以直接访问,必须通过外部接口.
点赞  2008-6-18 09:11
这个问题要看cache空间是什么意思,在什么状态下。如果cache空间已经被初始化了并且作为了cahe使用,那是不可以的。
如果cache空间没有被作为cache使用,只是作为普通的内存空间使用,那就可以。
点赞  2008-6-19 22:56
外部硬件寄存器的值是会经常变化的。当第一次把数据从外部硬件寄存器读入到cache后,如果外部硬件寄存器的值在此时发生了变化,导致cpu从cache中读取的数值不正确。
点赞  2008-6-28 20:15
可不可以访问外部硬件的寄存器和在不在cache里没有任何关系,因为cache对用户是透明的。用户感觉不到cathe的存在,一般情况下也无法控制cathe对代码或数据的缓冲存储。硬件在cathe替换的时候会检查cathe和内存的一致性,也就是说如果cathe的内容变了,在cathe内容替换的的时候会自动更新内存。
点赞  2008-6-29 20:14
学到了知识
点赞  2008-6-29 22:11
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复