answersLogoWhite

0


Best Answer

It's pretty simple. First, the processor must determine which interrupt occurred. On simple hardware setups, you may already know this just by which interrupt handler was called. On more complex hardware, you may have to read status registers in the interrupt controller.

Second, the processor has to look up which devices are capable of asserting that interrupt. On simple hardware, generally there is only one device that can trigger each interrupt and this is determined by the way the device is wired. On more complex devices, this may be determined by software and the processor may have to consult tables that were created during the boot process.

Third, the processor must determine which of those devices actually asserted the interrupt (if there's more than one). This is typically done by the driver for each device which generally just asks the device if it triggered an interrupt. Most devices have status registers that either directly tell you whether it caused an interrupt or tell you whether the device needs service which was the point of the interrupt anyway.

User Avatar

Wiki User

11y ago
This answer is:
User Avatar
More answers
User Avatar

Wiki User

13y ago

The processor will call mark tan as his sidekick to prevent the scourge from destroying the tower.

This answer is:
User Avatar

Add your answer:

Earn +20 pts
Q: When devices interrupt occurs how does the processor determine which device issued the interrupt?
Write your answer...
Submit
Still have questions?
magnify glass
imp
Continue Learning about Computer Science

What is a communications line between a device and the processor?

I believe it is interrupt request line.


What is difference between vectored and non vectored interrupts?

Vector interrupt --> when processor directly call the respective isr when interrupt occurs so, address of respective isr is usually save in register. Non interrupt Vector --> In this case when interrupt occurs the processor calls a generic isr and in generic isr uaer has to call respective isr by checking status register.


How does IRQ priority works?

An IRQ is an electrical signal generated by a device needing attention. Usually, it means that some event has occurred such as data being received and ready to use. The IRQ signal is sometimes connected directly to the processor or in some cases to a dedicated interrupt handling circuit. When the processor is told the interrupt has happened it calls the ISR to handle it. The ISR is software that deals with the needs of the device that requested it. Usually, the device is read or some system action is taken to clear the condition that caused the IRQ then the interupt system is reset to make it ready for use again. On most systems, the IRQ signal forces the processor to save it's current program counter so it knows where to return when the ISR is finished, then it jumps to a hard-wired address called the Interrupt Vector where the code for the ISR is placed. At the end of the ISR, the program counter is restored and the program carries on from where it was before the interrupt paused it. Antonio Holl


What is mean by interrupt vector table?

Interrupts are essential to the operation of a computer because they allow it to process service requests. Interrupts tell the computer to stop whatever it is doing and start some other task, such as handing the keyboard or mouse movement. When the task is complete, the interrupt finishes and the computer resumes whatever it was doing previously. Interrupt vectors allow for compatibility, since interrupt numbers can be standardized, and different interrupt code installed for similar devices from different vendors. An interrupt vector table separates a hardware device that has events from the code that will process that event. A device (i.e. network card, keyboard, mouse, etc) generates an event and that event needs to trigger a message into some software application. That message might ultimately be ignored, but the responsibility of the hardware is to get that event into the computer. Hardware devices simply change state when events happen which then causes a memory mapped location for the hardware to change. This change then triggers the OS to perform a simple look-up in the interrupt vector table and jump at the machine level to the machine code that will handle the interrupt. The machine code to handle the interrupt is known as the device driver or interrupt handler. That code will read any memory mapped locations related to the event and pass that information on to higher level software routines. The simplicity of the interrupt vector table allows a complete separation between hardware devices and software OS. This is what allows a USB mouse to be used on different OS on a single machine or across different hardware architectures (i.e. Mac, Intel PC, etc). The necessary evil of this scheme is that you can't use a device with an OS if there is no device driver for that OS. This is particularly frustrating to users who have a device that has a driver with one version of an OS "X", upgrades the OS to the next version "X+1", and finds that the driver philosophy has changed in "X+1" and the device can no longer be used.


What is interrupt management?

The computer "buss" is a "wide" communication device within each computer that allows transfer of data to different components. Obviously, some method must be employed to control what devices can transfer data at any given time. A device sets an "interrupt" flag when it has data to transfer and through interrupt management, each device is eventually given the opportunity to send data across the buss. Buss control is a complex issue and not one that can be adequately discussed in this type of a forum. Computer engineering courses cover the subject in much greater detail.

Related questions

What is a communications line between a device and the processor?

I believe it is interrupt request line.


Which bus signal line allows a device to request to the processor attention?

Interrupt


Which bus signal line allows a device to request the processor immediate attention?

Interrupt


Is a celeron chip a input device or output device?

Neither. It is a central processor. It manipulates data sent to it from devices, and sends in back to the devices for them to output.


Why you need interrupt?

An interrupt is a signal from a device attached to a computer or from a program within the computer that causes the CPU to stop executing the current program and figure out what to do next. It enable input/output device communicate or get the attention of the processor, and execute a program that need more attention.


What is software polling?

When the microprocessor receives an Interrupt Service Request (ISR) on the interrupt line it must determine which of the devices connected to that input sent the request.Software Polling is one method by which it can do so.In Software Polling:A software routine is used to identify the device requesting service. It does so by checking each device to see if it was the one needing service.


What is difference between interupt and subroutine?

Interrupt is the signal generated by the input/output devices in order to take the attention of the processor. When the processor receives the interrupt signals it checks the priority status and finish the current fetch and execute cycle and (if the priority status is high) allow the input/output device to process their tasks. Then previous fetch and execute cycle is continued. This is called interrupt service routine. The programs are broken down in to small sub programs which are called subroutines. Then the program reusability, readability, maintainability ...etc will be increased.


What is interrupt vector?

When a processor is interrupted to do a particular task,Program counter should be loaded with the the address of subroutine(task).If the processor automatically generates the address then it is known as vectored interrupt.for example if 8085 microprocessor is interrupted through RST 5.5 pin,then processor multiplies 5.5 by 8 and converts it to Hex address.If user has to provide address of subroutine using CALL instruction then it is known as non vectored interrupt


What is interrupt conflicts in computers?

Intrrup conflicts are when one device in a computer takes the interrupt from other device in the os. Intrrup conflicts are when one device in a computer takes the interrupt from other device in the os.


Interrupt driven IO?

Whenever a data transfer to or from the managed hardware might be delayed for any reason, the driver writer should implement buffering. Data buffers help to detach data transmission and reception from the write and read system calls, and overall system performance benefits.A good buffering mechanism leads to interrupt-driven I/O, in which an input buffer is filled at interrupt time and is emptied by processes that read the device; an output buffer is filled by processes that write to the device and is emptied at interrupt time. An example of interrupt-driven output is the implementation of /dev/shortprint.For interrupt-driven data transfer to happen successfully, the hardware should be able to generate interrupts with the following semantics:For input, the device interrupts the processor when new data has arrived and is ready to be retrieved by the system processor. The actual actions to perform depend on whether the device uses I/O ports, memory mapping, or DMA.For output, the device delivers an interrupt either when it is ready to accept new data or to acknowledge a successful data transfer. Memory-mapped and DMA-capable devices usually generate interrupts to tell the system they are done with the buffer.


Are keyboard CPU and modem output devices?

A keyboard is an input device. A modem is both an input and an output device. A CPU is the central processor and is connected to both input and output devices but is itself neither.


What are the 3 groups of hardware components?

The three groups are Input devices, Output devices, and Processor. Input - A device that the user enters data to the computer. Output - A device that shows data to the user Processor - A computer component that is the "Brain" of the computer. It does the thinking for the computer at lighting fast speeds.