Chinaunix首页 | 论坛 | 博客
  • 博客访问: 530159
  • 博文数量: 83
  • 博客积分: 4136
  • 博客等级: 中校
  • 技术积分: 886
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-19 21:14
文章分类

全部博文(83)

文章存档

2013年(1)

2011年(25)

2010年(57)

分类: LINUX

2011-05-07 16:33:28

    VirtualBoxVirtualBox的显示干净利落,一点都不拖泥带水,给人的感觉是运行速度很快,尤其是开机时显示的画面挺顺畅的。
Vmware 起初在我的笔记本里运行速度很慢,启动、关机明显比VirtualBox慢,程序运行速度似乎还行。不过让人难以接受的就是系统时间,基本是每隔7、8秒 虚拟机里才跳1秒,即使打开vmware tools的时间同步也经常比host机的时间慢1~5分钟,这对于编译程序是不可接受的,可能会造成make误以为某些需要编译的模块已经编译过了。而 且其他一些用到计时的程序(比如ping)也不正常。但是在我的台式机上就没有时间变慢这个问题。在网上搜了一下,发现这是一个有悠久历史的问题,按照某 些方法加了内核参数不起作用,昨天终于找到了问题所在:
代码:
cat /sys/module/processor/parameters/max_cstate

我的笔记本里这个值是8,解决方法很简单,只要一行命令:
代码:
echo 1 > /sys/module/processor/parameters/max_cstate

执行完后立竿见影,guest os的时间立刻就跟上了,而且运行速度也明显加快,编译程序时感觉就像在真实的机器里一样快,真舒坦。
 
但是,重启之后,max_cstate 的值又变回默认的8 那该怎么改变呢?
我是用的rhel5,在ubuntu上他们是这么改的:
 
sudo gedit /etc/init.d/acpid
查找echo “$PRINTK” > /proc/sys/kernel/printk,在这句话下载添加
echo 1 > /sys/module/processor/parameters/max_cstate
即可实现开机自动修改
但是在rhel5里面,我没有找到$PRINTK” > /proc/sys/kernel/printk 这些内容,该怎么办呢?

其实,我仔细看了/etc/init.d/acpid 这个文件,我们的做法和ubuntu下的其实是大同小异的。也是在开始的时候就执行命令:echo 1 > /sys/module/processor/parameters/max_cstate

这样就可以实现开机自动更改了。

/etc/init.d/acpid 文件的内容如下:

你可以看他的start函数,这是开机做处理的,我们在42行,也就是echo -n $"Starting acpi daemon:之后,加入echo 1 > /sys/module/processor/parameters/max_cstate

  1. 34 start() {
  2. 35
  3. 36 check
  4. 37
  5. 38 # Check for kernel support
  6. 39 [ -f /proc/acpi/event ] || exit 1
  7. 40
  8. 41 echo -n $"Starting acpi daemon: "
  9. 42 echo 1 > /sys/module/processor/parameters/max_cstate
  10. 43 daemon /usr/sbin/acpid
  11. 44 RETVAL=$?
  12. 45 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/acpid
  13. 46 echo
  14. 47 return $RETVAL
  15. 48 }

这样就可以实现开机自动更改了,大大提高虚拟机速度@@

 



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

上一篇:我的windows软件安装列表

下一篇:toast提示

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