跳转到内容

进程隔离

维基百科,自由的百科全书

进程隔离是为保护操作系统中进程互不干扰而设计的一组不同硬件和软件[1]的技术。这个技术是为了避免进程A写入进程B的情况发生。 进程的隔离实现,使用了虚拟地址空间。进程A的虚拟地址和进程B的虚拟地址不同,这样就防止进程A将数据信息写入进程B。

进程隔离的安全性通过禁止进程间内存的访问可以方便实现。相比之下,一些不安全的操作系统(例如DOS[2])能够允许任何进程对其他进程的内存进行写操作。

受限的进程间通信

在一个有进程隔离的操作系统中,进程之间允许受限的进程间交互,如果他们相互都接受进程间通信(IPC)的协作,例如共享内存,或套接字技术。在这样的方案下,几乎所有的进程间的内存都和其他进程的相互隔离了,除了某些进程指定允许其他进程访问用以协同工作的变量和内存块。

某些环境下,系统安全策略可能不允许进程间通信(IPC)。比如在强制访问控制系统(Mandatory access control systems)中,不同安全等级的进程是不允许相互通信的。

参考资料

  1. ^ Deconstructing Process Isolation. Aiken, Mark, Fähndrich, Manuel, Hawblitzel, Chris, Hunt, Galen, Larus, James R. Microsoft Research. Oct. 2006
  2. ^ All in one CISSP Exam Guide, 3rd Edition, Shon Harris