📜  操作系统中的访问矩阵

📅  最后修改于: 2022-05-13 01:56:11.633000             🧑  作者: Mango

操作系统中的访问矩阵

访问矩阵是计算机系统中保护状态的安全模型。它被表示为一个矩阵。访问矩阵用于定义在域中执行的每个进程对每个对象的权限。矩阵的行代表域,列代表对象。矩阵的每个单元格代表一组访问权限,这些权限被赋予域的进程意味着每个条目(i,j)定义了在域 Di 中执行的进程可以对对象 Oj 调用的操作集。

F1F2F3Printer
D1readread
D2print
D3readexecute
D4read writeread write

根据上面的矩阵:有四个域和四个对象——三个文件(F1、F2、F3)和一台打印机。在 D1 中执行的进程可以读取文件 F1 和 F3。在域 D4 中执行的进程与 D1 具有相同的权限,但它也可以写入文件。打印机只能被域 D2 中执行的一个进程访问。访问矩阵的机制由许多策略和语义属性组成。具体来说,我们必须确保在域 Di 中执行的进程只能访问第 i 行中指定的那些对象。

有关保护的访问矩阵的策略涉及应在第 (i, j) 个条目中包含哪些权限。我们还必须决定每个进程执行的域。此策略通常由操作系统决定。用户决定访问矩阵条目的内容。



域和进程之间的关联可以是静态的,也可以是动态的。访问矩阵提供了一种机制来定义域和进程之间的这种关联的控制。当我们将进程从一个域切换到另一个域时,我们对对象(域)执行切换操作。我们可以通过在访问矩阵的对象中包含域来控制域切换。进程应该能够从一个域 (Di) 切换到另一个域 (Dj),如果且仅是给 access(i, j) 一个切换权限。

F1F2F3PrinterD1D2D3D4
D1readreadswitch
D2printswitchswitch
D3readexecute
D4read writeread writeswitch

根据矩阵:在域 D2 中执行的进程可以切换到域 D3 和 D4。在域 D4 中执行的进程可以切换到域 D1,在域 D1 中执行的进程可以切换到域 D2。