Open In App

Difference between Maskable and Non Maskable Interrupt

Last Updated : 28 Dec, 2024
Summarize
Comments
Improve
Suggest changes
Share
Like Article
Like
Report

An Interrupt is an event caused by a component other than the CPU. It indicates the CPU of an external event that requires immediate attention. Interrupts occur asynchronously. Maskable and non-maskable interrupts are two types of interrupts.

What is Maskable Interrupt?

An interrupt that can be disabled or ignored by the instructions of CPU are called as Maskable Interrupt. The interrupts are either edge-triggered or level-triggered.

Eg: RST6.5,RST7.5,RST5.5 of 8085

Advantages of Maskable Interrupt

  • Flexibility : Maskable interrupt can be selectively enabled or disabled so that more control can be exercised over the system performance.
  • Lower Priority Handling : It is useful in managing tasks with lower priority, so the CPU has time to spend on more critical processes.

Disadvantages of Maskable Interrupt

  • If a maskable interrupt is disabled then important events may be missed.
  • It will undoubtedly produce higher response time since these interrupts can be deferred, and the response times might be higher as well compared with non-maskable interrupts.

What is Non-Maskable Interrupt ?

An interrupt that cannot be disabled or ignored by the instructions of CPU are called as Non-Maskable Interrupt. A Non-maskable interrupt is often used when response time is critical or when an interrupt should never be disable during normal system operation. Such uses include reporting non-recoverable hardware errors, system debugging and profiling and handling of species cases like system resets.

Eg: Trap of 8085

Advantages of Non-Maskable Interrupt

  • They ensure that some events which may prevail, such as a failure of hardware, are captured promptly.
  • NMIs cannot be ignored by the system. Hence, these will contribute to greater stability and error reporting.

Disadvantages of Non-Maskable Interrupt

  • NMIs can not be masked and hence sometimes critical process interruptions have a tendency to prevail if not properly handled.
  • Management of NMIs is often a bit complex since they are critical.

Difference between Maskable and Non Maskable Interrupt

Now, let's discuss their key differences on various points

Sr No.

Maskable Interrupt

No Maskable Interrupt

1

Maskable interrupt is a hardware Interrupt that can be disabled or ignored by the instructions of CPU.

A non-maskable interrupt is a hardware interrupt that cannot be disabled or ignored by the instructions of CPU.

2

When maskable interrupt occur, it can be handled after executing the current instruction.

When non-maskable interrupts occur, the current instructions and status are stored in stack for the CPU to handle the interrupt.

3

Maskable interrupts help to handle lower priority tasks.

Non-maskable interrupt help to handle higher priority tasks such as watchdog timer.

4

Maskable interrupts used to interface with peripheral device.

Non maskable interrupt used for emergency purpose e.g power failure, smoke detector etc .

5

In maskable interrupts, response time is high.

In non maskable interrupts, response time is low.

6

It may be vectored or non-vectored.

All are vectored interrupts.

7

Operation can be masked or made pending.

Operation Cannot be masked or made pending.

8

RST6.5, RST7.5, and RST5.5 of 8085 are some common examples of maskable Interrupts.

Trap of 8085 microprocessor is an example for non-maskable interrupt.

Conclusion

The idea of maskable vs. non-maskable interrupts holds a critical place in system design and performance optimization. Maskable interrupts have a lot of room for executing comparatively less-priority jobs, while non-maskable interrupts guarantee that the most important events are noticed in time. That increases both the system's reliability and the responsiveness to the proper use of each of them.


Similar Reads