The difference between hardware interrupts and software interrupts

Question: Is there a difference between the way hardware interrupts and software interrupts are processed?

 

Answer:

Yes, there is a difference. When a hardware interrupt occurs, all interrupts are disabled and registers are pushed onto the stack. A hardware interrupt routine requires a ?sti? instruction before returning.
However, a software interrupt is handled just like a call routine. The difference between a regular CALL to a routine and a software INT instruction is that creating a software interrupt gives us a static handle to the routine.