Jump to content

End of interrupt: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
Citation bot (talk | contribs)
Removed parameters. | Use this bot. Report bugs. | Suggested by Whoop whoop pull up | #UCB_webform 1488/3352
 
(18 intermediate revisions by 5 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 Interrupt Service Routine (ISR), and thus allow more [[interrupt request]]s of equal or lower priority to be generated by the PIC.
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
| title = Linux Interrupts: The Basic Concepts
| author = Mika J. Järvenpää
| publisher = University of Helsinki
| 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>


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

== References ==
{{Reflist}}


{{DEFAULTSORT:End Of Interrupt}}
{{DEFAULTSORT:End Of Interrupt}}

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.