calcru: negative runtime of -106344 usec for …

2009-05-13 11:47:17来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


复制了一个虚拟机的系统到另外一台机器上,启动以后居然出现了提示:
calcru:runtime went backwards from 27466 usec to 27454 usec for pid 75(dd)
calcru:negative runtime of -215346 usec for pid 4 (g_down)
查了半天,原来是这样的:
跟中断(interrupt)有关的不同硬体 与/或 软体的搭配都有可能造成 这个问题。这有可能是 bug 或是某个装置本身的问题。在平行埠上使用 大的 MTU 来作 TCP/IP 传输可以重现这个问题。若是图形加速卡造成这个问题的话,您应该先检查卡的中断设定。
这个问题的边际效应是会造成有些 process 出现 ``SIGXCPU exceeded cpu time limit'' 的讯息,而不正常 停止。
若是 FreeBSD 3.0 或是 1998 年 11 月 29 日以後其他版本,万一这个问题一直无法以其他方法解决,就只能设定 sysctl 变数:
# sysctl -w kern.timecounter.method=1
这样会对效能有些影响,但是若考虑到这个问题带来的後果,这样做是值得的。如果这个问题还是存在的话,让 sysctl 那个值依然设为 1,然後增加 kernel 设定档中 NTIMECOUNTER 这个选 项的数值。如果您将 NTIMECOUNTER 增加到 20 依然无法解决这个问题,那么您机器上的中断已经多到无法让计数器维持在可靠的状态了。
以上方法我试了一下,似乎kern.timecounter.method没有的,google了一下,还有这个方法:
添加kern.timecounter.hardware=
TSC
到/etc/sysctl.conf
  此问题可能是VMware的频率和FreeBSD系统内部的时钟频率不同步,将ACPI-fast改为TSC后问题不再出现。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/4206/showart_499938.html

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:用portsnap升级FreeBSD 6.0的port tree

下一篇:配置一个安全的chroot DNS