·ChinaUnix首页 ·论坛 ·博客 
Linux首页 | Linux新闻 | Linux论坛 | Linux文档 | Linux下载 | Linux博客 | Linux搜索 | 开源项目孵化平台 | 《开源时代》
新手入门 | 安装启动 | 管理员指南 | 开发手册 | 桌面应用 | 程序开发 | 数据库 | 网络技术| CentOS | Fedora | MySQL | Apache | Ubuntu | Gentoo| OSCON08
  Linux时代 >> 技术文档 >> 桌面应用
 
利用Machine State Word (MSW) Register 实现即时开关系统缓冲
来源: ChinaUnix博客  日期: 2006.03.10 05:44 (共有条评论) 我要评论
 
原载RTAI SPACE
http://justin8086.cublog.cn/
背景:
    开始对新写的实时CAN驱动做带干扰的Roundtrip测试,在测试时发现一个奇怪的现象:当连续进行Roundtrip 测试时,每次耗时照理说应该几乎是一样的(不然怎么是实时驱动?)可是事实上每次试验结果,耗时都是在连续测试大概20个样本之后就会有个100微秒左右的骤降。例如1Mbps码速率Roundtrip,前20个样本大概需要约146微秒完成一次,在骤降之后就会出现平稳的136左右的耗时。而在此之后的实时表现都非常理想,再没有大的波动。于是开始怀疑是系统缓冲的原因(CPU Caching),不然还真找不到其他的理由了。既然这样,如果禁用这些缓冲(包括L1,L2 两级缓冲)
原载RTAI SPACE
http://justin8086.cublog.cn/
实现方法:
    言归正传,现在我所知道的禁用缓冲的方法只有两种(希望能在以后补充):
1、在主板BIOS中设置。因为做测试用的SECO M570+VIA EDEN ESP 6000配置的BIOS没有设置缓冲的选项,所以要禁用缓冲似乎还不是很直接的事。
2、修改MSW,就是所谓的机器状态字。这一点好像还没人提过,因为MSW从第5位到第30位的含义都是不公开的,哪怕是很多关于intel的文档中也都是注明为“RESERVED”,我在其官方网站上也找过,不过没发现有更详尽的说明。事实上,对于缓冲的设置,修改MSW的第30位就可以实现。直接说白了,用0x4000000与MSW或运算,缓冲就被禁用了(disable caching);反之,将该位置零就启用了缓冲(enable caching)。哪怕是LINUX已经启动,我们也可以随时开关缓冲!
   不过到现在我还不能确定是否同时开关了L1,L2两级缓冲,抑或只是其中之一。
原载RTAI SPACE
http://justin8086.cublog.cn/
测试结果:
   关闭缓冲后(disable caching),整个系统反映马上慢了下来,小小一个ls都可以看出延迟。有兴趣的朋友可以试试。
原载RTAI SPACE
http://justin8086.cublog.cn/


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/11160/showart_83239.html
  发表评论 查看评论(共有条评论) 我要提问
 
 


最新资讯更多>> 
· 蔡伦和Linus等入选最有影响力的..
· 第二届LinuxCon 2010大会向共众..
· Leeenux 2.0 – Linux上网本操..
· Canonical发布安全更新涉及众多..
· Google黑客攻击事件更多细节
· Symbian开放源代码 开源是否等..
· “塞班平板”不是没可能 已开始..
· Google 说我们对 WebKit 开源项..
· SymbianOS开源的五点益处
· Core i3-530集成显卡Linux性能..
论坛热点更多>> 
· 我安装了一个CENTOS,但是上..
· 想XP换成ubuntu,可行不?
· CentOS的稳定性如何?能作服..
· 无聊小问题,Linux现在在中国..
· 新人。问题一直在线询问帖子
· 2.6.20内核 3.5寸屏移植
· redhat下如何下载软件?
· redhat中获取当前登录用户的..
· 安装ntfs-3g报错,各位请帮忙看看
· 如何实现文件的复制权限
文档更新更多>> 
· linux下u盘使用
· ubuntu dynamips 绑定网卡到虚拟机
· 虚拟机Debian中网卡无法启动
· 剖析SUSE Linux Tomcat自动启动
· Linux启动过程综述
· 分区大小调整完全手册
· 一步一学Linux与Windows 共享文件..
· 使用U盘安装Debian
· [Ubuntu-9.10] 修改 grub 以更改..
· cacti下利用thold插件来进行EMAI..
 
关于我们 | 联系方式 | 广告合作 | 诚聘英才 | 网站地图 | 友情链接 | 免费注册

Copyright © 2001-2009 ChinaUnix.net All Rights Reserved

感谢所有关心和支持过ChinaUnix的朋友们

京ICP证041476号