小编Met*_*ght的帖子

Linux 总是将用户空间和内核空间分开吗?

我回想起最近的编程入门,记得编写了一个 C++ 程序,该程序故意随机读取和写入内存地址。我这样做是为了看看会发生什么。

令我惊讶的是,在我的 Windows 98 PC 上,我的程序会产生一些非常奇怪的副作用。有时它会切换操作系统设置,或产生图形故障。通常它不会执行任何操作或只是使整个系统崩溃。

后来我了解到这是因为 Windows 98 没有限制用户进程可以访问的内容。我可以读取和写入其他进程甚至操作系统使用的 RAM。

据我了解,随着 Windows NT 的出现,这种情况发生了变化(尽管我认为花了一段时间才得到纠正)。现在,Windows 会阻止您查看不属于您的进程的 RAM。

我依稀记得后来在 Linux 系统上运行我的程序并没有得到那么多有趣的结果。如果我理解正确的话,这至少部分是由于用户空间和内核空间的分离造成的。

所以,我的问题是:

Linux 是否曾一度没有将用户空间和内核空间分开?换句话说,我的流氓程序是否曾经对 Linux 系统造成过类似的破坏?

security process history linux-kernel

23
推荐指数
3
解决办法
5401
查看次数

标签 统计

history ×1

linux-kernel ×1

process ×1

security ×1