Explain about interrupt-processing sequence, Computer Engineering

Assignment Help:

Q. Explain about Interrupt-Processing Sequence?

The occurrence of an interrupt fires a numbers of events both in processor hardware and software. Figure below displays a sequence.

1305_Explain about Interrupt-Processing Sequence.png

Figure: Interrupt-Processing Sequence

When an I/O device completes an I/O operation, the below sequence of hardware events takes place: 

1. The device issues an interrupt signal to processor.

2. Processor completes execution of current instruction before responding to interrupt.

3. Processor tests for interrupts and sends an acknowledgement signal to device that issued the interrupt.

4. The minimum information needed to be stored for task being currently executed before CPU starts executing interrupt routine (using its registers) are: 

(a) Status of processor that is contained in register known as program status word (PSW), and

(b) Location of next instruction to be executed, of currently executing program that is contained in program counter (PC).

5. Processor now loads PC with entry location of interrupt-handling program which will respond to this interrupting condition. Once PC has been loaded, processor proceeds to execute next instruction, which is the next instruction cycle that begins with an instruction fetch. Since the instruction fetch is determined by contents of the PC, result is that control is transferred to interrupt-handler program. The execution results in the subsequent operations:

6. PC & PSW relating to interrupted program have already been saved on system stack. Additionally the contents of processor registers are also needed to be saved on stack which are used by called Interrupt Servicing Routine since these registers may be modified by interrupt-handler. Figure (a) displays a simple illustration. Here a user program is interrupted after instruction at location N. Contents of all of registers and address of next instruction (N+1) are pushed on to stack.

7. Interrupt handler next processes interrupt. This involves determining of event which caused the interrupt and also status information relating to I/O operation.

8. When interrupt processing is finish, saved register values are retrieved from stack and restored to registers that are displayed in Figure (b).

9. Final step is to restore values of PSW and PC from stack. Consequently the instruction to be executed will be from previously interrupted program.


Related Discussions:- Explain about interrupt-processing sequence

Big – endian and little- endian representations, Explain Big - Endian and L...

Explain Big - Endian and Little- Endian representations Ans: The Big- endian is used where lower byte addresses are used for the more significant bytes (leftmost bytes) of the

Keys, why impotant keys

why impotant keys

Illustrate header section of a device driver, Q. Illustrate Header section ...

Q. Illustrate Header section of a device driver? Header comprises information which allows DOS to identify the driver. It also comprises pointers which allow it to chain to ot

Why object oriented development not only allows reuse, Why object oriented ...

Why object oriented development not only allows reuse In a wider way we can say that object oriented development not only allows reuse and information sharing within an applica

What is delegation, What is delegation? Delegation gives a proper mecha...

What is delegation? Delegation gives a proper mechanism to achieve the desired code reuse. The method is caught in the desired class and forwarded to another class for actual i

Difference between leave transaction and call transaction, What is the diff...

What is the difference between Leave Transaction and Call Transaction? In contrast to LEAVE TO TRANSACTION, the CALL TRANSACTION  statement causes the system to start a new SAP

Define various system, Define various system? Single job system: Only...

Define various system? Single job system: Only one program may be run at a time, and therefore only one person might be work on a machine at one time.  Multi job system:

Correct cluster, For each of the three datasets (data1.txt, data2.txt, and ...

For each of the three datasets (data1.txt, data2.txt, and data3.txt in bnhw2q2.zip), cluster the data using k-means in Matlab, with k=2, 3, 4 and 5 using the provided Matlab script

Java''s layout managers give over traditional windowing syste, Java uses la...

Java uses layout managers to lay out components in a consistent manner across all windowing platforms. As Java's layout managers aren't tied to absolute sizing and positioning, the

C++ program on pebble merchant, how to solve pebble merchant problem.? codi...

how to solve pebble merchant problem.? coding for it..!

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd