
中断
xueli1991
这个作者很懒,什么都没留下…
展开
-
中断
1:中断和异常:当前运行程序——>中断处理程序或异常处理程序2:随机发生3:处理器把赋予异常或者中断的向量(标识号)用作中断描述符表IDT中的一个索引号,来定位一个异常或中断的处理程序入口点位置。4:用户空间进入内核空间:中断或异常5:从内核空间进入用户空间:中断或者异常返回6:中断描述符表IDT:将每个异常或中断向量分别与它们的处理过程联系起来。原创 2017-01-04 20:12:31 · 298 阅读 · 0 评论 -
系统调用&上下文&中断
系统调用:在操作系统上如果想要运行你的程序,就得靠自己从面向底层硬件的代码编起,但这件事太枯燥,且不是每个人都能做到,这样操作系统就替我们做这些事情,把硬件封装,统一提供一套接口,这些接口就是系统调用;系统调用把应用程序的请求传给内核,当操作系统接收到系统调用请求后,会让处理器进入内核模式,调用相应的内核函数完成所需的处理,当处理完成后,操作系统会让处理器返回用户模式,来执行用户代码,提高原创 2017-01-04 20:16:07 · 611 阅读 · 0 评论 -
中断&中断返回
中断1、将所有参数或一部分参数入栈2、将当前指令的下一条指令地址入栈(返回地址)3、跳转到函数体执行,在函数体开始执行时还需要完成一部分操作:ebp入栈,将ebp指向esp(栈顶),分配所需字节的临时空间,保存寄存器汇编代码1. push ebp /*将old ebp入栈*/2. mov ebp,es原创 2017-02-20 14:54:18 · 4245 阅读 · 0 评论