加载中…
个人资料
用户1911358711
用户1911358711
  • 博客等级:
  • 博客积分:0
  • 博客访问:15,610
  • 关注人气:4
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

1 Linux 内核的文件 Cache 管理机制介绍

(2011-01-04 14:35:45)
标签:

linux

   元旦刚过 , 大家新年好.

   插播一条不好的消息 , 房企在“严厉楼市调控”下销售均价上涨24% , 越调越高 , 希望越大失望也越大 ,

年复一年 , 恒古不变的现象 .

   在linux内核 , cache和uncache的合理应用在一些情况下可以极大的提高cpu对外设和外存的存取速度.理解和掌握这部分具有十分重要的意思.以下是我菜鸟时期遇到的一些问题概括.

1. 什么是Cache, cache的作用是什么

   Cache - 高速缓冲存储器(SRAM) , 一种特殊的存储器子系统,其中复制了频繁使用的数据以利于快速访问.存储器的高速缓冲存储器存储了频繁访问的 RAM (i sdram)位置的内容及这些数据项的存储地址。当处理器引用存储器中的某地址时,高速缓冲存储器便检查是否存有该地址。如果存有该地址,则将数据返回处理器;如果没有保存该地址,则进行常规的存储器访问。因为高速缓冲存储器总是比主RAM 存储器速度快,所以当 RAM 的访问速度低于微处理器的速度时,常使用高速缓冲存储器。

2.Cache的工作原理

  其实说到底就是cache是如何映射到内存(能被CPU直接寻址的才能做主存).

  Cache与主存之间的地址映射:直接映射方式/全相联映射方式/组相联映射方式 , 经常使用的是直接映射方式采用一对一的原理实现.假设Cache容量为16KB , 块的大小为16B(4bit) ,块数(10bit.(< Cache地址为:块号+块内地址> <主存地址分为三段:区号+块号+块内地址>)假设主存地址为0x1234E8F8 那么块内地址只需要4位(本题中了右边最后4位 = 8) , 块号为bit 4-13 (111010001111) 舍去最高2bit , cache地址 = 1010001111 1000.

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有