我了解到,每当发生硬件中断时,它会将处理器的中断线设置为高电压(或低电平,取决于处理器架构),以使CPU停止正在执行的操作并提供中断请求 . 但是为什么软件中断会发生同样的事情 . 我的意思是为什么将处理器的那些中断引脚设置为高电压,为什么不能将OS作为函数调用来处理软件中断,例如执行步骤:1 . 保存当前状态,2 . 加载带有中断服务程序存储器地址的指令指针 . 为什么软件中断需要降低才能获得服务?
软件中断不需要映射到任何硬件引脚 .
例如,8085中的RSTx软件中断没有任何硬件引脚,它们用于改变程序流程 .
一个很大的区别是:中断例程在特权模式下执行而函数则不在 . 这是从用户模式切换到特权模式的软件中断的用例之一 .
1 回答
软件中断不需要映射到任何硬件引脚 .
例如,8085中的RSTx软件中断没有任何硬件引脚,它们用于改变程序流程 .
一个很大的区别是:中断例程在特权模式下执行而函数则不在 . 这是从用户模式切换到特权模式的软件中断的用例之一 .