Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3146601
  • 博文数量: 117
  • 博客积分: 10003
  • 博客等级: 上将
  • 技术积分: 5405
  • 用 户 组: 普通用户
  • 注册时间: 2007-01-23 09:34
文章分类

全部博文(117)

文章存档

2011年(1)

2010年(10)

2009年(69)

2008年(37)

分类: LINUX

2009-03-10 16:37:33

 其实在Linux上做档案快取(readahead/prefetch)的技术 颇多,除了稍早讲的readahead,还有preload, bootcache/filecache与prefetch. (prelink是加快ELF shared libraries/executables的载入速度,不算是档案快取)

  不过readahead只在开机的产生效用,若开机后得依赖preload等工具来做档案快取。但以user space的daemon每几秒扫一次系统的效果实在不怎么好。

  比较吸引我注意的是SoC 2007中的一个计画prefetch。

  prefetch算是融合了前几个计画的优点与特色的专案,计画整合了kernel patch与userspace工具,主要特色是透过核心作监视各软体启动所需要取用的档案,配合userspace工具做到自动更新(dynamic profiling)。

  对使用者而言,操作起来容易许多,不需要像readahead或bootcache/filecache作手动「教育」,且使用效率上也会比preload来的好。当然,与readahead相较起来,实做方式也比较轻盈、聪明。

  技术细节可以参考Krzysztof Lichota的提案(Ubuntu Wiki)与简报。 Prefetch原始码可于Launchpad下载,相关文件与文献位于Google Code.另外,Behdad Esfahbod的论文“Preload — An Adaptive Prefetching Daemon”也很值得参考。

  BTW, Krzysztof Lichota也是one-click installer的开发者。

阅读(1564) | 评论(0) | 转发(0) |
0

上一篇:gcc缺省优化

下一篇:LinuxThread VS NPTL

给主人留下些什么吧!~~