Matches in SemOpenAlex for { <https://semopenalex.org/work/W3154686934> ?p ?o ?g. }
Showing items 1 to 74 of
74
with 100 items per page.
- W3154686934 abstract "An interrupt is an event that alters the sequence of instructions executed by a processor and requires immediate attention. When the processor receives an interrupt signal, it may temporarily switch control to an inter- rupt service routine (ISR) and the suspended process (i.e., the previously running program) will be resumed as soon as the interrupt is being served. The generic term interrupt is oftentimes used synonymously for two terms, interrupts and exceptions. An exception is a synchronous event that occurs when the processor detects an error condition while executing an instruction. Such an error condition may be a devision by zero, a page fault, a protection violation, etc. An interrupt, on the other hand, is an asynchronous event that occurs at random times during execution of a pro- gram in response to a signal from hardware. A proper and timely handling of interrupts is critical to the performance, but also to the security of a computer system.In general, interrupts can be emitted by hardware as well as by software. Software interrupts (e.g., via the INT n instruction of the x86 instruction set architecture (ISA)) are means to change the execution context of a program to a more privileged interrupt context in order to enter the kernel and, in contrast to hardware interrupts, occur synchronously to the currently running program. Consequently, such instructions are gates to the privileged operating-system kernel (e.g., ring 0 on x86) and thus are used to request services from the kernel (i.e., system calls). A hardware-triggered interrupt indicates that some device requires attention of the processor, and hence implements a means of communication between devices and the operating system. Interrupts from hardware can greatly improve a system’s performance when devices send interrupts (e.g., a keystroke on a keyboard) instead of expensive polling of devices (e.g., periodically polling a keyboard for stroked keys). Furthermore, hardware-emitted interrupts by timers are used for timing and time measurement in general, but also for time sharing as ticks can be used to schedule another task.After arrival of an interrupt, the processor executes the interrupt ser- vice routine that is associated with this interrupt. The ISR is also referred to as the interrupt request (IRQ) handler. But as interrupts are disabled during execution of the IRQ handler, not all kinds of code can or should be executed in this IRQ context. For instance, if such routine goes to sleep with interrupts disabled, the system is likely to freeze. On the other hand, active waiting and blocking should be avoided since other interrupts with potentially urgent needs remain disabled and, hence, cannot be served. Furthermore, acquiring locks is likely to cause deadlocks. As a consequence, the Linux kernel offers various mechanisms and application programming interfaces (APIs) to implement interrupt handling in order to meet certain functional and non-functional requirements.This report focuses on how the Linux operating-system kernel handles interrupts on the software side and aims to give brief background infor- mation as well as implementation details. Detailed information about exceptions and exception handling in the x86 architecture can be found in the CPU manual ”Intel 64 and IA-32 Architectures Software Developer’s Manual”. Notice that the report does not aim for completeness, neither does it target to introduce the general concept of interrupts. It rather tries to provide information for developers, researchers and students, familiar with operating systems and operating-system concepts, how Linux handles interrupts on the software side." @default.
- W3154686934 created "2021-04-26" @default.
- W3154686934 creator A5087920935 @default.
- W3154686934 date "2015-01-01" @default.
- W3154686934 modified "2023-09-27" @default.
- W3154686934 title "Interrupt Handling in Linux" @default.
- W3154686934 hasPublicationYear "2015" @default.
- W3154686934 type Work @default.
- W3154686934 sameAs 3154686934 @default.
- W3154686934 citedByCount "1" @default.
- W3154686934 countsByYear W31546869342018 @default.
- W3154686934 crossrefType "journal-article" @default.
- W3154686934 hasAuthorship W3154686934A5087920935 @default.
- W3154686934 hasConcept C111919701 @default.
- W3154686934 hasConcept C121332964 @default.
- W3154686934 hasConcept C149635348 @default.
- W3154686934 hasConcept C151319957 @default.
- W3154686934 hasConcept C151730666 @default.
- W3154686934 hasConcept C170723468 @default.
- W3154686934 hasConcept C173018170 @default.
- W3154686934 hasConcept C2777904410 @default.
- W3154686934 hasConcept C2779343474 @default.
- W3154686934 hasConcept C2779662365 @default.
- W3154686934 hasConcept C28533478 @default.
- W3154686934 hasConcept C31258907 @default.
- W3154686934 hasConcept C41008148 @default.
- W3154686934 hasConcept C41661131 @default.
- W3154686934 hasConcept C53833338 @default.
- W3154686934 hasConcept C62520636 @default.
- W3154686934 hasConcept C86803240 @default.
- W3154686934 hasConceptScore W3154686934C111919701 @default.
- W3154686934 hasConceptScore W3154686934C121332964 @default.
- W3154686934 hasConceptScore W3154686934C149635348 @default.
- W3154686934 hasConceptScore W3154686934C151319957 @default.
- W3154686934 hasConceptScore W3154686934C151730666 @default.
- W3154686934 hasConceptScore W3154686934C170723468 @default.
- W3154686934 hasConceptScore W3154686934C173018170 @default.
- W3154686934 hasConceptScore W3154686934C2777904410 @default.
- W3154686934 hasConceptScore W3154686934C2779343474 @default.
- W3154686934 hasConceptScore W3154686934C2779662365 @default.
- W3154686934 hasConceptScore W3154686934C28533478 @default.
- W3154686934 hasConceptScore W3154686934C31258907 @default.
- W3154686934 hasConceptScore W3154686934C41008148 @default.
- W3154686934 hasConceptScore W3154686934C41661131 @default.
- W3154686934 hasConceptScore W3154686934C53833338 @default.
- W3154686934 hasConceptScore W3154686934C62520636 @default.
- W3154686934 hasConceptScore W3154686934C86803240 @default.
- W3154686934 hasLocation W31546869341 @default.
- W3154686934 hasOpenAccess W3154686934 @default.
- W3154686934 hasPrimaryLocation W31546869341 @default.
- W3154686934 hasRelatedWork W1210742939 @default.
- W3154686934 hasRelatedWork W1588669980 @default.
- W3154686934 hasRelatedWork W2151230378 @default.
- W3154686934 hasRelatedWork W2171199603 @default.
- W3154686934 hasRelatedWork W2505033426 @default.
- W3154686934 hasRelatedWork W2602169127 @default.
- W3154686934 hasRelatedWork W3021499873 @default.
- W3154686934 hasRelatedWork W3022061584 @default.
- W3154686934 hasRelatedWork W3022243336 @default.
- W3154686934 hasRelatedWork W3023686328 @default.
- W3154686934 hasRelatedWork W939948822 @default.
- W3154686934 hasRelatedWork W959978765 @default.
- W3154686934 hasRelatedWork W1497014270 @default.
- W3154686934 hasRelatedWork W150211487 @default.
- W3154686934 hasRelatedWork W2231496514 @default.
- W3154686934 hasRelatedWork W2258456717 @default.
- W3154686934 hasRelatedWork W2419015701 @default.
- W3154686934 hasRelatedWork W2601685506 @default.
- W3154686934 hasRelatedWork W3150953493 @default.
- W3154686934 hasRelatedWork W944922373 @default.
- W3154686934 isParatext "false" @default.
- W3154686934 isRetracted "false" @default.
- W3154686934 magId "3154686934" @default.
- W3154686934 workType "article" @default.