为什么用户空间内核空间在linux中分离



我想知道是什么让linux去分离用户空间和内核空间?

我有一些以下的基本了解,但我想知道更多的细节。

  1. 如果用户允许访问硬件,则更容易出错
  2. 可移植性原因。

您忘记了一个最重要的原因:这样可以强制执行安全控制(例如,根访问与非根访问、文件权限、应用程序内存空间隔离等)。

如果用户代码与内核代码具有相同的访问权限,则用户代码可以绕过内核中所有与安全相关的簿记数据。例如,一个普通用户可以覆盖当前uid字段为0,自动使他们成为root。

最新更新