linux – sudo模式和内核模式有区别吗?

前端之家收集整理的这篇文章主要介绍了linux – sudo模式和内核模式有区别吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在UNIX系统中,我们有一个用户模式和一个内核模式.有一些在用户模式下无法访问的指令.然而,当我们做sudo时,我们可以访问我们操作系统的许多关键部分,执行关键的操作.

我的问题是:当在sudo模式下执行程序时,整个程序是否以内核模式运行?或者是这样的情况,sudo模式只是一个管理用户,其权力只是内核可以执行的操作的一部分?

解决方法

没有像sudo模式这样的东西.只有用户空间和内核空间.

正如你所说,内核模式可以执行cpu提供的任何指令,并对硬件执行任何操作.用户模式程序只能访问映射到正在运行的进程的内存,并阻止其直接访问硬件.通过系统调用机制,用户模式程序可以调用内核代码,代码将执行硬件访问,并将结果返回到用户空间.

用户空间中,对于不是root用户(root用户ID为0)的用户还有其他限制.例如,他们只能访问某些文件,并且只能侦听编​​号为1024以上的TCP端口.运行sudo将以root用户身份启动一个进程,该用户没有这些限制.

但是以root用户(通过sudo)运行的进程仍然在用户空间中运行,并且仍然受到所有相同的限制.

猜你在找的Linux相关文章