Operating system 在具有分页内存管理系统的系统上运行的应用程序能否直接访问物理内存?

Operating system 在具有分页内存管理系统的系统上运行的应用程序能否直接访问物理内存?,operating-system,computer-science,Operating System,Computer Science,在操作系统的上下文中,应用程序是否可以直接访问主内存?从Linux的角度来说,假设我们讨论的是用户级(非根)进程,那么它们不能直接访问物理内存。出于安全性和功能性的原因,它们也不应该这样做。分页的全部目的是从应用程序中抽象出物理内存,以便它们只认为自己拥有整个物理内存,但在幕后,它们的内存可能驻留在物理内存中,也可能不驻留在物理内存中(请参阅:页面错误、非连续分配、页面替换策略) 但是对于根进程进程,我知道至少有一种方法:通过/dev/mem。提到如何将mmap映射到/dev/mem以访问特定的

在操作系统的上下文中,应用程序是否可以直接访问主内存?

从Linux的角度来说,假设我们讨论的是用户级(非
)进程,那么它们不能直接访问物理内存。出于安全性和功能性的原因,它们也不应该这样做。分页的全部目的是从应用程序中抽象出物理内存,以便它们只认为自己拥有整个物理内存,但在幕后,它们的内存可能驻留在物理内存中,也可能不驻留在物理内存中(请参阅:页面错误、非连续分配、页面替换策略)


但是对于
根进程
进程,我知道至少有一种方法:通过
/dev/mem
。提到如何将
mmap
映射到
/dev/mem
以访问特定的物理地址。但是,使用时要自行承担风险。

从Linux的角度来看,假设我们讨论的是用户级(非
根进程)进程,那么它们就不能直接访问物理内存。出于安全性和功能性的原因,它们也不应该这样做。分页的全部目的是从应用程序中抽象出物理内存,以便它们只认为自己拥有整个物理内存,但在幕后,它们的内存可能驻留在物理内存中,也可能不驻留在物理内存中(请参阅:页面错误、非连续分配、页面替换策略)


但是对于
根进程
进程,我知道至少有一种方法:通过
/dev/mem
。提到如何将
mmap
映射到
/dev/mem
以访问特定的物理地址。但使用风险自负。

我的回答解决了您的问题吗?如果这个或任何答案已经解决了你的问题,请考虑通过点击复选标记接受它。这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。但是,没有义务这么做。我的回答解决了你的问题吗?如果这个或任何答案已经解决了你的问题,请考虑通过点击复选标记接受它。这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。然而,没有义务这样做。这是完全有道理的!!谢谢你的回复:)很有道理!!感谢您的回复:)