系统调用就是陷阱(软件中断)

中断门和陷阱门在使用上的区别不在于中断是外部产生的或是由CPU本身产生的,而是在于通过中断门进入中断服务程序时CPU会自动将中断关闭,也就是将CPU中EFLAGS寄存器的IF标志位清成0,以防嵌套中断的发生;而在通过陷阱门进入服务程序时则维持IF标志位不变。这就是中断门和陷阱门的惟一区别。系统调用用的是陷阱门,是开中断下执行的,也就是说系统调用是可以被中断的。、

 

所以平常的系统调用到达内核态后实行内核的函数的ip和cs寄存器的指针都是由中断向量表得到的。

posted @ 2015-06-01 22:53  kkshaq  阅读(1794)  评论(0编辑  收藏  举报