Unix 运行级别与保护环是正交的(在“无关”、“独立于”的意义上——见注释)。
运行级别基本上是操作系统作为一个整体的运行时配置/状态,它们描述了可用的服务(“对用户”)——比如 SSH 访问、MTA、文件服务器、GUI。
环是一个硬件辅助概念,它允许对硬件进行更精细的控制(如您链接到的维基百科页面中所述)。例如在更高的 Ring 中运行的代码可能无法执行某些 CPU 指令。
x86 架构上的 Linux 通常将 Ring0 用于内核(包括设备驱动程序)和 Ring3 用于用户空间应用程序(无论它们是由 root 还是其他普通或特权用户运行)。
因此,您不能真正说某个运行级别正在某个特定的 Ring 中运行 - 总是有1 个用户空间应用程序(至少 PID 1 - the init
)在 Ring3 和内核 (Ring0) 中运行。
1与往常一样,“总是”真正意味着“几乎总是”,因为您可以在 Ring0 中运行“正常”程序,但在现实生活中您不太可能看到这一点(除非您在 HPC 上工作)。
归档时间: |
|
查看次数: |
6768 次 |
最近记录: |