当前位置: 技术问答>linux和unix
Linux从用户态切换到内核态都做了哪些工作?
来源: 互联网 发布时间:2017-05-28
本文导语: 我是一个Linux菜鸟,看到用户态和内核态的时候就有些迷糊了。用户态和内核态的切换类似于进程的切换吗?可是为什么又说用户态与内核态之间的切换的效率比进程切换的效率高?有谁能解答一下,通俗一些....刚接...
我是一个Linux菜鸟,看到用户态和内核态的时候就有些迷糊了。用户态和内核态的切换类似于进程的切换吗?可是为什么又说用户态与内核态之间的切换的效率比进程切换的效率高?有谁能解答一下,通俗一些....刚接触Linux。
|
Google 用户态 内核态 切换
http://www.cnblogs.com/justcxtoworld/p/3155741.html
http://blog.csdn.net/yunsongice/article/details/5471077
c/c++开源软件 iis7站长之家
http://www.cnblogs.com/justcxtoworld/p/3155741.html
http://blog.csdn.net/yunsongice/article/details/5471077
c/c++开源软件 iis7站长之家
|
系统分层级。
用户态和内核态是是上层和底层的关系。从内核态的权限高于用户态。
举个例,你写一个应用程序read一个文件,这个程序的执行空间就是用户空间,而read会通过系统调用,通过文件系统执行到驱动程序。
后边的执行是在内核空间中执行的。
内核空间相当于大厦的基石,用户空间相当于大厦,没有基石,再壮观的大厦也无从说起。
应用程序到系统接口实现就是用户态到内核态的切换,也是应用程序进程A和一些内核进程的切换。A是通过系统调用到内核进程的,就是说他们之间有关系。
至于你说的另外一个进程间切换,应该是完全没有关系的进程切换,涉及到CPU时间片和资源分配等硬件资源,切换的速度会比上面那个慢些。
用户态和内核态是是上层和底层的关系。从内核态的权限高于用户态。
举个例,你写一个应用程序read一个文件,这个程序的执行空间就是用户空间,而read会通过系统调用,通过文件系统执行到驱动程序。
后边的执行是在内核空间中执行的。
内核空间相当于大厦的基石,用户空间相当于大厦,没有基石,再壮观的大厦也无从说起。
应用程序到系统接口实现就是用户态到内核态的切换,也是应用程序进程A和一些内核进程的切换。A是通过系统调用到内核进程的,就是说他们之间有关系。
至于你说的另外一个进程间切换,应该是完全没有关系的进程切换,涉及到CPU时间片和资源分配等硬件资源,切换的速度会比上面那个慢些。