MMU与cache】的更多相关文章

关闭MMU和CACHE 1.Cache是一种容量小,但存取速度非常快的存储器,它保存最近用到的存储器中数据的拷贝.按功能分为ICache(指令Cache)和DCache(数据Cache) 2.虚拟地址就是程序中使用的地址:物理地址就是物理存储单元中实际使用的地址.虚拟地址可以让进程使用更大的空间.MMU的作用就是完成虚拟地址到物理地址的转换 3.在处理器初始化阶段,为防止意想不到的错误,需要暂时关闭MMU和Cache 4.MMU和Cache都是通过CP15协处理器的R1(control regi…
u-boot分析(五) 上篇博文我们按照210的启动流程,对u-boot启动中的设置异常向量表,设置SVC模式进行了分析,今天我们继续按照u-boot的启动流程对以下内容进行分析. 今天我们会用到的文档: Arm9内核手册:http://download.csdn.net/detail/wrjvszq/8358867 Arm11内核手册:http://download.csdn.net/detail/wrjvszq/8358877 Arm a8内核手册:http://download.csdn.…
这一快理解的非常浅: MMU 虚拟存储器对内存进行了逻辑上的扩充.比如一个32位的CPU系统,逻辑上的寻址可以达到4GB,但是如果直接对物理地址进行寻址,就要受到主存大小的限制. 在这种条件下,虚拟地址应运而生,每个应用程序的访存空间都可以达到4GB,当然这里用的是虚拟地址.Cpu发出虚拟地址之后会被转化为MVA(变化后的虚拟地址),MMU接收到MVA,将MVA转化为物理地址. 现在,先来看看第一个阶段,VA(虚拟地址)转化为MVA: 上图就是VA转化为MVA的算法,va转化为MVA需使用进程标…
最近非常忙,博客很乱也没有更新,这里随便记录点东西,周末有空整理下. cache是一个与CPU很近的高速存储器, 作用:提高内存的访问读写速度 cache属性是指对这部分虚拟地址的读写是使用cache功能的,即是对这部分的虚拟内存是cacheable的 uncache不使用cache对这部分虚拟地址进行读写 区别:虚拟内存读写时是否使用到cache     cache:一个和CPU很近的高速存储器,用来存储一些不是经常变化的数据,提高速度.在经常改变的数据的时候不适合启用,否则效率会更低比如我们…
处理器内部寄存器,访问速度最快,但是数量少 TCM:紧耦合存储器(Cache.主存储器) 辅助存储器(Flash.SD等) Cache是一种容量小但是存取速度非常快的存储器 它保存最近用到的存储器中的数据的拷贝,对于程 序员来说,Cache是透明的,他自动决定保存哪些 数据.覆盖哪些数据.按照功能划分: I-cache:指令Cache D-cache:数据Cache 虚拟地址:程序中使用的地址 物理地址:物理存储单元的实际的地址 虚拟地址可以解决地址冲突,可以是进程使用更大的空间 1.使Icac…
为了以合理的价格,设计容量和速度满足计算机系统的需求,计算机体系结构设计者设计出了存储器的层次结构. "Cache-主存"和"主存-辅存"是最常见的两种层次结构. 常见的集中cache hierarchy的size与access time: 计算机运行的任何时刻都存在多个进程,每个进程都有自己的地址空间.如果为每个进程分配全部的地址空间,那系统的开销太大,而且很多进程也只是使用该地址空间内的一小部分. 虚拟存储器一种存储器共享技术,把物理内存的一部分拿出来让很多进程…
转:http://hi.baidu.com/gilbertjuly/item/6690ba0dfdf57adfdde5b040 虚拟地址VA到物理地址PA以页page为单位.通常page的大小为4K.物理页面成为page frame. 查看应用程序进程的地址空间,可以看到分为很多段,比如代码段(只读).数据段(读写).堆.共享库(其中进一步分段).栈空间等.整个应用程序的地址空间不会用满4GB,因为还有一部分是内核空间,应用程序不能访问.再打开一个相同的应用程序查看其进程的地址空间,也是类似的,…
转自:http://blog.csdn.net/zhang_shuai_2011/article/details/38119657 原文如下: 一. CacheCache一般来说,需要关心以下几个方面1)Cache hierarchyCache的层次,一般有L1, L2, L3 (L是level的意思)的cache.通常来说L1,L2是集成 在CPU里面的(可以称之为On-chip cache),而L3是放在CPU外面(可以称之为Off-chip cache).当然这个不是绝对的,不同CPU的做…
当设置完时钟分频以后,uboot就会执行cpu_init_crit汇编函数,这个函数的主要作用就是关闭缓存和mmu,然后调用lowlevel_init函数进行系统总线的初始化. 为什么启动的时候,需要关闭缓存和mmu呢?我们先了解一下他们的作用. 缓存是主存(内存)和CPU通用寄存器之间设置的一个高速的.容量相对较小的存储器,把正在执行的指令地址附近的一部分指令或数据从主存调入这个存储器,供CPU在一段时间内使用,以提高程序的运行速度. mmu可以实现虚拟内存和内存保护等功能,完成对内存的操作和…
http://blog.chinaunix.net/uid-26817832-id-3244916.html   1. Cache Cache一词来源于法语,其原意是"藏匿处,隐秘的地方",而自从被应用于计算机科学之后,就已经成为了英语中的一个计算机体系结构专有名词. Sun Microsystems的前首席科学家Billy Joy,作为BSD unix,csh,vi,NFS,java,TCP/IP等的发明者,他曾经说过,在计算机科学领域,如果没有了cache的发明,其他的一切发明都将…