初级会员
- 积分
- 161
- 金钱
- 161
- 注册时间
- 2020-5-8
- 在线时间
- 28 小时
|
发表于 2020-9-29 21:07:57
|
显示全部楼层
1、什么是cache
Cache 是位于 CPU与主存储器DRAM之间的少量超高速静态存储器 SRAM(static RAM),其是为了解决 CPU 与主存之间速度匹配问题而设置的。Cache又分为I-cache(用来存指令)和D-cache(用来存数据)。
2、为什么要让cache失效
我们在使用cache的时候要经过一系列的配置,在没配置之前是不能使用的。所以我们要关闭cache,但是在关闭cache之前cache里面可能已经有数据了,为了不影响我们的代码,所以要先让其失效,在进行关闭。
3、什么是MMU
MMU就是负责虚拟地址(virtual address)转化成物理地址(physical address)。
在这里肯定有人跟我一样的疑惑,既然有物理地址我们访问的时候访问物理地址不就完事了吗?为什么要有虚拟地址的存在,然后还要加个专门的硬件去转换,这就是多此一举吗?
其实加入了虚拟地址后有下面两个作用
1) 虚拟内存:有了虚拟内存,可以在处理器上运行比实际物理内存大的应用程序。
2) 内存保护:根据需要对特定的内存区块的访问进行保护,通过这一功能,我们可以将特定的内存块设置成只读、只写或是可同时读写。
4、为什要关闭MMU
跟cache的原因一样,在使用MMU之前要进行一系列的初始化,并且过程比较复杂,现在用不到所以要关闭它。
我也是百度的:(转发)https://www.cnblogs.com/wrjvszq/p/4222669.html |
|