当前位置: 技术问答>linux和unix
进程系统调用陷入内核的不解
来源: 互联网 发布时间:2016-12-30
本文导语: 当进程执行了系统调用或者触发某个异常而陷入内核空间,我们称内核代表进程执行并处于进程上下文环境, 有些不解 内核代表进程执行 这句话的意思, 处于内核空间的那个系统调用代码,是原进程在执行还是在内核另...
当进程执行了系统调用或者触发某个异常而陷入内核空间,我们称内核代表进程执行并处于进程上下文环境,
有些不解 内核代表进程执行 这句话的意思,
处于内核空间的那个系统调用代码,是原进程在执行还是在内核另有一个进程在执行它呢?
如果是后者,那么这个内核中的进程又叫什么呢?
还有类似的一个问题,
某进程在用户空间运行中,若一个中断发生,便转到内核空间执行中断处理程序,这个中断处理程序应该属于由某个内核中的进程执行的吧,是哪个呢?
|
进程上下文是指这个进程的运行时数据还有效,例如current指针,此时执行在原进程3GB以上的空间,也就是内核空间,
中断上下文不属于任何进程,和中断发生前执行的代码没有任何关系,中断处理程序也不是进程,因为没有task_struct这些结构,所以无法参与调度,所以不能睡眠。
中断上下文不属于任何进程,和中断发生前执行的代码没有任何关系,中断处理程序也不是进程,因为没有task_struct这些结构,所以无法参与调度,所以不能睡眠。
|
系统调用还涉及cpu一些东西吧
http://hi.baidu.com/youngky2008/blog/item/b2cae405bc441ac6267fb5de.html
http://www.360doc.com/content/06/1209/10/14894_287734.shtml
http://hi.baidu.com/youngky2008/blog/item/b2cae405bc441ac6267fb5de.html
http://www.360doc.com/content/06/1209/10/14894_287734.shtml