INTRODUCCIÓN
Todo Sistema Operativo debe tener implementado un módulo dedicado a la protección. Se implementa mediante el uso de funciones especialmente diseñadas para eso que conforman el nivel 5 en la teoría de los Sistemas Operativos en Estratos o Capas.
DOMINIO DE PROTECCIÓN
Un sistema computacional es una colección de procesos y objetos. Los objetos involucran tanto objetos hardware (como CPU, segmentos de memoria, impresoras, etc.) y objetos software (como archivos, programas, semáforos, etc.). Cada objeto tiene un nombre único que lo diferencia de los demás objetos del sistema y cada una puede ser accesado solamente mediante operaciones bien definidas. Los objetos son esencialmente tipos de datos abstractos. Las posibles operaciones que realice un objeto, dependen de él mismo y sus características.
Obviamente, un proceso tendrá permitido accesar solamente a aquellos recursos que está autorizado. Además, en un momento dado podrá accesar a aquellos recursos que requiera para realizar su tarea. Este requerimiento comúnmente llamado el principio "Need_To_Know" es útil en la limitación de la cantidad de daño que un proceso defectuoso pueda causar al sistema.
Por ejemplo, cuando un proceso "P" invoque al procedimiento "A", al procedimiento le será permitido accesar solamente sus propias variables y los parámetros actuales pasados a él; no podrá accesar todas las variables del proceso "P".
Para facilitar este esquema se introduce el concepto de dominio de protección. Un proceso opera dentro de un dominio de protección, el cual especifica los recursos que el proceso puede accesar. Cada dominio define un conjunto de objetos y los tipos de operaciones que pueden ser realizadas sobre cada objeto.
La capacidad de ejecutar una operación sobre un objeto es un derecho de acceso. Un dominio es una colección de derechos de acceso, cada uno de los cuales es un par ordenado <Nombre_Objeto, Conjunto_de_Operaciones>.
Por ejemplo, si el dominio "D" tiene derecho de acceso <Archivo F, {Leer, Escribir}>, entonces un proceso que se está ejecutando en el dominio "D" puede tanto leer como escribir en el archivo F; no podrá realizar alguna otra operación sobre este objeto.
Los dominios de protección no necesitan ser distintos; por el contrario, pueden compartir derechos de acceso. Por el contrario, pueden compartir derechos de acceso. Por ejemplo; en la siguiente figura:
D1 D2 D3
<O3, {Leer, Escribir}> <O2, {Escribir}> <01, {Ejecutar}>
<O1, {Leer, Escribir}> <O4, {Imprimir}> <O3, {Leer}>
<O4, {Imprimir}>
Se tienen 3 dominios de protección: D1, D2 y D3. El derecho de acceso <O4, Imprimir> está compartido por los dominios "D2" y "D3". Esto implica que un proceso ejecutándose en el dominio "D1" puede tanto leer como escribir sobre el objeto "O1"; mientras que ejecutándose en el dominio "D3", el proceso podrá solamente ejecutar ese mismo objeto.
No hay comentarios:
Publicar un comentario