13

我知道在用户模式下运行的进程和在内核模式下运行的进程之间的区别(基于访问限制、对硬件的访问等)。但是出于好奇,在内核模式下运行的进程和以 root 身份运行的进程有什么区别?

4

1 回答 1

24

内核模式和 root 是两个独立的想法,彼此并不真正相关。以 root 身份运行进程的概念是一个 unix/linux 术语,表示您以系统管理员身份登录。

您运行的任何进程,无论是作为 root 用户还是普通用户,通常都在用户模式和内核模式下运行。系统不断在用户模式(应用程序代码运行的地方)和内核模式(内核代码运行的地方)之间切换。

一些程序,像许多设备驱动程序一样,总是在内核模式下运行,这意味着它们可以完全访问硬件。以 root 权限运行的普通应用程序仍然存在于用户模式下,并且只有在进行内核系统调用时才会切换到内核模式,然后再切换回用户模式。

于 2010-03-01T06:18:12.567 回答