Jump to content

End of interrupt: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Formatting
Citation bot (talk | contribs)
Removed parameters. | Use this bot. Report bugs. | Suggested by Whoop whoop pull up | #UCB_webform 1488/3352
 
(8 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Unreferenced|auto=yes|date=December 2009}}
{{Use mdy dates|date=May 2022}}


An '''end of interrupt''' ('''EOI''') is a signal sent to a [[programmable interrupt controller]] (PIC) to indicate the completion of interrupt processing for a given [[interrupt]]. An EOI is used to cause a PIC to clear the corresponding bit in the in-service register (ISR), and thus allow more [[interrupt request]]s of equal or lower priority to be generated by the PIC.<ref>{{cite web
An '''end of interrupt''' ('''EOI''') is a computing signal sent to a [[programmable interrupt controller]] (PIC) to indicate the completion of interrupt processing for a given [[interrupt]]. Interrupts are used to facilitate hardware signals sent to the processor that temporarily stop a running program and allow a special program, an interrupt handler, to run instead. An EOI is used to cause a PIC to clear the corresponding bit in the in-service register (ISR), and thus allow more [[interrupt request]]s (IRQs) of equal or lower priority to be generated by the PIC.<ref>{{cite web
| url = https://www.cs.montana.edu/courses/spring2005/518/Hypertextbook/jim/media/interrupts_on_linux.pdf
| url = https://www.cs.montana.edu/courses/spring2005/518/Hypertextbook/jim/media/interrupts_on_linux.pdf
| title = Linux Interrupts: The Basic Concepts
| title = Linux Interrupts: The Basic Concepts
| author = Mika J. Järvenpää
| author = Mika J. Järvenpää
| publisher = University of Helsinki
| accessdate = 2021-10-02 | format = PDF
| accessdate = 2021-10-02 }}</ref><ref>{{cite web
| url = https://wiki.osdev.org/8259_PIC#End_of_Interrupt
| title = The 8259 Programmable Interrupt Controller (PIC)
| publisher = osdev.org
| accessdate = 2021-10-02
}}</ref>
}}</ref>


EOIs may indicate the [[interrupt vector]] implicitly or explicitly. An explicit EOI vector is indicated with the EOI, whereas an implicit EOI vector will typically use a vector as indicated by the PICs priority schema, for example the highest vector in the ISR. Also, EOIs may be sent at the end of interrupt processing by an [[interrupt handler]], or the operation of a PIC may be set to auto-EOI at the start of the interrupt handler.
EOIs may indicate the [[interrupt vector]] implicitly or explicitly. An explicit EOI vector is indicated with the EOI, whereas an implicit EOI vector will typically use a vector as indicated by the PICs priority schema, for example the highest vector in the ISR. Also, EOIs may be sent at the end of interrupt processing by an [[interrupt handler]], or the operation of a PIC may be set to auto-EOI at the start of the interrupt handler.<ref>{{cite web
| url = https://pdos.csail.mit.edu/6.828/2005/readings/hardware/8259A.pdf
| title = 8259A Programmable interrupt controller
| publisher = [[Intel]]
| date = December 1988 | accessdate = 2021-10-02
}}</ref>

== See also ==
* [[Intel 8259]] – notable PIC from Intel
* [[Advanced Programmable Interrupt Controller]] (APIC)
* [[OpenPIC and IBM MPIC]]
* [[Inter-processor interrupt]] (IPI)
* [[Interrupt latency]]
* [[Non-maskable interrupt]] (NMI)
* [[IRQL (Windows)]]


== References ==
== References ==

Latest revision as of 08:44, 27 March 2023

An end of interrupt (EOI) is a computing signal sent to a programmable interrupt controller (PIC) to indicate the completion of interrupt processing for a given interrupt. Interrupts are used to facilitate hardware signals sent to the processor that temporarily stop a running program and allow a special program, an interrupt handler, to run instead. An EOI is used to cause a PIC to clear the corresponding bit in the in-service register (ISR), and thus allow more interrupt requests (IRQs) of equal or lower priority to be generated by the PIC.[1][2]

EOIs may indicate the interrupt vector implicitly or explicitly. An explicit EOI vector is indicated with the EOI, whereas an implicit EOI vector will typically use a vector as indicated by the PICs priority schema, for example the highest vector in the ISR. Also, EOIs may be sent at the end of interrupt processing by an interrupt handler, or the operation of a PIC may be set to auto-EOI at the start of the interrupt handler.[3]

See also

[edit]

References

[edit]
  1. ^ Mika J. Järvenpää. "Linux Interrupts: The Basic Concepts" (PDF). University of Helsinki. Retrieved October 2, 2021.
  2. ^ "The 8259 Programmable Interrupt Controller (PIC)". osdev.org. Retrieved October 2, 2021.
  3. ^ "8259A Programmable interrupt controller" (PDF). Intel. December 1988. Retrieved October 2, 2021.