Linux 手动生成计时器中断

Linux 手动生成计时器中断,linux,timer,interrupt,Linux,Timer,Interrupt,在我的机器上 /proc/interrupts CPU0 CPU1 CPU2 CPU3 0: 54 0 0 0 IO-APIC-edge timer 1: 10 0 0 0 IO-APIC-edge i8042 6: 2 0

在我的机器上

/proc/interrupts

          CPU0       CPU1       CPU2       CPU3
  0:         54          0          0          0   IO-APIC-edge      timer
  1:         10          0          0          0   IO-APIC-edge      i8042
  6:          2          0          0          0   IO-APIC-edge      floppy
  8:          1          0          0          0   IO-APIC-edge      rtc0
  9:          0          0          0          0   IO-APIC-fasteoi   acpi
 12:         16          0          0          0   IO-APIC-edge      i8042
 14:          0          0          0          0   IO-APIC-edge      ata_piix
 15:    3984107          0          0          0   IO-APIC-edge      ata_piix
 16:          2          0          0          0   IO-APIC-fasteoi   vmwgfx
 17:     980727     939643    1334876     770403   IO-APIC-fasteoi   ioc0
 24:          0          0          0          0   PCI-MSI-edge      PCIe PME, pciehp
 25:          0          0          0          0   PCI-MSI-edge      PCIe PME, pciehp
 26:          0          0          0          0   PCI-MSI-edge      PCIe PME, pciehp
 27:          0          0          0          0   PCI-MSI-edge      PCIe PME, pciehp
 28:          0          0          0          0   PCI-MSI-edge      PCIe PME, pciehp
我了解中断,我想了解定时器中断。 也就是说,每次发生计时器中断都会触发以下主要活动,比如更新系统启动后经过的时间

在我的机器上,只显示54,但是机器已经从几天前就启动了

我错过了什么

第二个问题是,如何手动生成中断,使计数从54变为55?

您不生成计时器。硬件确实如此(可能每秒有数百次中断)。内核配置硬件来实现这一点

还请阅读,这是处理用户landlinux应用程序中与时间相关的内容的方法(这可能对您更重要)

如果您关心如何处理中断,那么您可以编写自己的操作系统和(然后
linux
标签将不再是主题)。请参阅(可免费下载)。有关操作系统开发的实用提示,请参见wiki

操作系统在这里隐藏硬件细节,如中断,管理硬件,并为您提供上面的抽象
/proc/interrupts
只是一种查询操作系统内核状态的方法。它的格式随内核版本和硬件的不同而不同(在我的系统上,输出与您的系统非常不同),并且它对系统管理员非常有用(例如,当某个奇怪的硬件发送大量中断时,作为硬件故障的提示)。看

如何手动生成中断

在Linux系统中,您不能。

顺便说一句,Linux也有-s(另请参见…),但这些信号不是中断(即使某些中断可能间接触发信号)。而且确实可以“中断”(以一种非常形象的方式,与硬件中断不同)您的


(可能在您的特定硬件和内核上,大多数“计时器”中断都会进入
ioc0
行)

您为什么要问这个问题?哪个软件对那个中断感兴趣?只是好奇我是否能自己生成一个中断。好的。谢谢CPU0有54个定时器中断怎么办?我不知道,但内核有。