系统调用system_call的处理过程
朱秀秀 原创作品转载请注明出处 《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000通常,在OS的核心中都设置了一组用来实现各种系统功能的子程序(过程),并把它们提供给用户调用,每当用户在需要系统提供某种服务的时候,就可以利用系统调用指令去调用系统过程。在调用系统过程之后,程序运行就由用户态转到内核态,相应的栈也由用户栈,转到内核栈,并且进行了相当于保护现场的工作,把当前的状态,栈顶指针,cs:eip保存到内核栈中。通过中断进入内核态,返回的时候,需要重新调度(所以不一定直接返回到调用过程),同时通过iret操作恢复现场。
标签: #科技数码
郑重声明:图文由自媒体作者发布,我们尊重原作版权,但因数量庞大无法逐一核实,图片与文字所有方如有疑问可与我们联系,核实后我们将予以删除。