lunes, 4 de diciembre de 2017

6.5 Protección basada en el lenguaje.


A medida que ha aumentado la complejidad de los sistemas operativos, sobre todo al trata de ofrecer interfaces de más alto nivel con el usuario, lo objetivos de la protección se han vuelto mucho más refinados. En esta refinación observamos que los diseñadores de los diseñadores de los sistemas de protección se han apoyado mucho en ideas que se originaron en los lenguajes de programación y especialmente en los conceptos de tipos de datos abstractos y objetos. Los sistemas de protección ahora se ocupan no sólo de la identidad de un recurso al cual se intenta acceder, sino también de la naturaleza funcional de ese acceso. En los sistemas de protección más nuevos, el interés en la función que se invocará se extiende más allá de un conjunto de funciones definidas por el sistema, como los métodos de acceso a archivos estándar, para incluir funciones que también podrían ser definidas por el usuario.
Las políticas para el uso de recursos también podrían variar, dependiendo de la aplicación, y podrían cambiar con el tiempo. Por estas razones, la protección ya no puede considerarse como un asunto que sólo concierne al diseñador de un sistema operativo; también debe estar disponible como herramienta que el diseñador de aplicaciones pueda usar para proteger los recursos de un subsistema de aplicación contra intervenciones o errores.
Aquí es donde los lenguajes de programación entran en escena. Especificar el control de acceso deseado a un recurso compartido en un sistema es hacer una declaración acerca del recurso. Este tipo de declaración se puede integrar en un lenguaje mediante una extensión de su mecanismo de tipificación. Si se declara la protección junto con la tipificación de los datos, el diseñado de cada subsistema puede especificar sus necesidades de protección así debería darse directamente durante la redacción del programa, y en el lenguaje en el que el programa mismo se expresa. Este enfoque tiene varias ventajas importantes:

1. Las necesidades de protección se declaran de forma sencilla en vez de programarse como una secuencia de llamadas a procedimientos de un sistema operativo.
2. Las necesidades de protección pueden expresarse independientemente de los recursos que ofrezca un sistema operativo en particular.
3. El diseñador de un subsistema no tiene que proporcionar los mecanismos para hacer cumplir la protección.
4. Una notación declarativa es natural porque los privilegios de acceso están íntimamente relacionados con el concepto lingüístico de tipo de datos.


No hay comentarios:

Publicar un comentario