Question: what is the difference between hardware interrupts and software interrupts?
Answer: The only difference is how they are triggered. A hardware interrupt is triggered by hardware (typically some peripheral external to the CPU such as a network adapter, sound chip, etc.) whereas a software interrupt is caused by software itself, much like a function call.