Kernrate替代Linux或Solaris

题:

  • 是否有一个已知的替代(或类似的工具) Kernrate的Linux或Solaris,如果是这样,我在哪里可以find更多的信息?

编辑:

  • 查找哪些设备驱动程序正在生成大量的中断。
  • 确定CPU密集型function。
  • 以上所有,当运行一个实时系统。

或者是最好的select,相应地创build一个内核核心转储和分析?

那么top将是传统的stream程​​查看器。 显然有一个KDE的KDE这将是一个graphics版本。 你需要什么function,我们可以select一个更好的解决scheme。

那么在linux系统上, iotop将显示哪些进程正在生成io。

通过“确定CPU密集型function”。 我假设你的意思是哪个进程正在使用CPU和内存,在这种情况下top可能是默认的答案。

这可能是值得解释的问题,你正试图解决,而不是什么工具等同于一个窗口:)

如果您想了解更多有关单个进程的信息,请查看/ proc / PROCESSID / eg / proc / 14232

Solaris提供了大量的性能监视工具 ,包括Dtrace,这对于程序debugging也非常方便。

如果您的目标是确定哪些进程使计算机消耗更多的电力,请使用“powertop”。 这是一个输出的例子:

唤醒的主要原因:
   23.0%(112.4)amarok:schedule_hrtimeout_range(hrtimer_wakeup)
   15.6%(76.0):pata_jmicron,uhci_hcd:usb3,nvidia
    9.6%(46.8):英特尔HDA
    7.1%(34.6)firefox:futex_wait(hrtimer_wakeup)
    4.5%(21.8):eth0
    3.9%(19.2):ehci_hcd:usb2,uhci_hcd:usb6
    3.9%(19.2)USB设备6-2:USB接收器(罗技)
    3.5%(17.2):重新调度中断
    3.4%(16.4)kwin:schedule_hrtimeout_range(hrtimer_wakeup)
    3.3%(16.0):usb_hcd_poll_rh_status(rh_timer_func)
    3.2%(15.6)skype:schedule_hrtimeout_range(hrtimer_wakeup)
    2.6%(12.6)psi:schedule_hrtimeout_range(hrtimer_wakeup)
    2.2%(10.6):ahci
    2.1%(10.4)ktorrent:schedule_hrtimeout_range(hrtimer_wakeup)
    2.0%(10.0)skype:do_nanosleep(hrtimer_wakeup)

你似乎想要的是vmstat,iotop,sysstat / sar和powertop的组合,就像上面提到的一样。 但是,您希望远离大型实用程序(htop,dstat),因为它们会歪曲您想要观察的数据。 当你跑顶时,通常最繁忙的过程是什么? 最佳! 这违反了科学的观察原则。 你希望你的探针尽可能的轻巧。

通常通过运行ltrace和strace,你可以了解到大部分时间花费在哪里。 如果大部分时间都到了用户级别的数量修改,那么除非您重做algorithm,否则无法修复它。 如果大部分时间都花在系统调用上,那么你就要看看你在使用操作系统资源的方式和方式,也许你正在等待locking才能完成,或者你经常强迫文件系统刷新。 这个东西没有硬性的规则,只要运行所有常用的工具,看看哪一个闪烁着对你有意义的东西。 了解你的系统调用和错误调用,特别是在阅读strace报告时,也是非常有用的。