Penguin
Blame: InterruptHandler
EditPageHistoryDiffInfoLikePages
Annotated edit history of InterruptHandler version 9, including all changes. View license author blame.
Rev Author # Line
9 AristotlePagaltzis 1 A section of code invoked by the hardware whenever an [IRQ] occurs. It is generally part of the [Kernel] and usually contained in a device driver. Because they occur asynchronously, invoked by hardware rather than through normal control flow, InterruptHandler~s are notoriously hard to write (see RaceCondition). They are also commonly written in AssemblyLanguage because [IRQ]s tend to happen __very__ frequently (try <tt>procinfo -n 1 -D</tt> on [Linux] to see counts of the number of interrupts that your [Kernel] receives; <tt>-n 1</tt> means 1 second intervals, <tt>-D</tt> shows only the differences from one interval to the next).
2 JohnMcPherson 2
5 AristotlePagaltzis 3 One specific InterruptHandler is of paramount importance in modern OperatingSystem~s: the timer [IRQ] invokes a handler which drives the scheduler that distributes [CPU] time among tasks. Without this [IRQ] and its handler, preemptive multitasking would not be possible.
4 AristotlePagaltzis 4
6 StuartYeates 5 Note that this is different from a [Signal] handler, which is called by the [Kernel] through normal control flow means. Note that software can trigger interrupts, and InterruptHandler~s sometimes send [Signal]s. The concepts remain distinct, though, despite having many things in common. In general an interupt ([IRQ] on x86) is to the kernel as a signal is to an application.

PHP Warning

lib/blame.php:177: Warning: Invalid argument supplied for foreach()