- 论坛徽章:
- 0
|
The local APIC present in recent 80x86 microprocessors (see the section “Interrupts and Exceptions” in Chapter 4) provides yet another time-measuring device: the CPU local timer.
The CPU local timer is a device similar to the Programmable Interval Timer just described that can issue one-shot or periodic interrupts. There are, however, a few differences:
The APIC’s timer counter is 32 bits long, while the PIT’s timer counter is 16 bits long; therefore, the local timer can be programmed to issue interrupts at very low frequencies (the counter stores the number of ticks that must elapse before the interrupt is issued).
The local APIC timer sends an interrupt only to its processor, while the PIT raises a global interrupt, which may be handled by any CPU in the system.
The APIC’s timer is based on the bus clock signal (or the APIC bus signal, in older machines). It can be programmed in such a way to decrease the timer counter every 1, 2, 4, 8, 16, 32, 64, or 128 bus clock signals. Conversely, the PIT, which makes use of its own clock signals, can be programmed in a more flexible way.
--------------------------------
上面是local timer interrupts搜索到的信息,但是我从cat /proc/interrupts 显示出来的LOC,是从哪里的代码有显示.
是根据什么计算的
cat /proc/interrupts
CPU0 CPU1 CPU2 CPU3
0: 17 0 0 0 IO-APIC-edge timer
1: 36418 0 0 0 IO-APIC-edge i8042
8: 1 0 0 0 IO-APIC-edge rtc0
9: 267579 0 0 0 IO-APIC-fasteoi acpi
12: 376922 0 0 0 IO-APIC-edge i8042
16: 988693 0 45785 0 IO-APIC-fasteoi ehci_hcd:usb1, mmc0
23: 1899313 0 3811204 0 IO-APIC-fasteoi ehci_hcd:usb2
40: 267941 0 668917 0 PCI-MSI-edge ahci
41: 24 0 0 0 PCI-MSI-edge mei_me
42: 305 0 0 0 PCI-MSI-edge snd_hda_intel
43: 0 0 0 0 PCI-MSI-edge iwlwifi
44: 13233121 0 0 0 PCI-MSI-edge i915
45: 1238260 0 0 0 PCI-MSI-edge eth0
NMI: 134 2869 2553 2894 Non-maskable interrupts
LOC: 97566363 87157839 98036738 90505403 Local timer interrupts
SPU: 0 0 0 0 Spurious interrupts
|
|