En informática , el direccionamiento basado en capacidades es un esquema utilizado por algunas computadoras para controlar el acceso a la memoria como una implementación eficiente de la seguridad basada en capacidades . Bajo un esquema de direccionamiento basado en capacidades, los punteros se reemplazan por objetos protegidos (llamados capacidades ) que se pueden crear solo mediante el uso de instrucciones privilegiadas que pueden ser ejecutadas solo por el kernel o algún otro proceso privilegiado autorizado para hacerlo. Esto efectivamente permite que el kernel controle qué procesos pueden acceder a qué objetos en la memoria sin la necesidad de usar espacios de direcciones separados y, por lo tanto, requiriendo uncambio de contexto cuando se produce un acceso.
Implementaciones prácticas
Hay dos técnicas disponibles para la implementación:
- Requiere que las capacidades se almacenen en un área particular de la memoria en la que el proceso que las utilizará no podrá escribir en ellas. Por ejemplo, el Plessey System 250 requería que todas las capacidades se almacenaran en segmentos de lista de capacidades.
- Extienda la memoria con un bit adicional, escribible solo en modo supervisor, que indica que una ubicación en particular es una capacidad. Esta es una generalización del uso de bits de etiqueta para proteger descriptores de segmento en los grandes sistemas de Burroughs , y se utilizó para proteger capacidades en IBM System / 38 .
Los diseñadores de los sistemas descendientes del System / 38, incluidos AS / 400 e IBM i , eliminaron el direccionamiento basado en capacidades. La razón dada para esta decisión es que no pudieron encontrar forma de revocar capacidades [1] (aunque los patrones para implementar la revocación en sistemas de capacidades se habían publicado ya en 1974, [2] incluso antes de la introducción de System / 38).
Cronología de sistemas que adoptan direccionamiento basado en capacidades
- 1969: Sistema 250 - Compañía Plessey
- 1970–77: Computadora CAP - Laboratorio de Computación de la Universidad de Cambridge
- 1978: Sistema / 38 - IBM
- 1980: máquina flexible - Royal Signals and Radar Establishment (RSRE) Malvern
- 1981: Intel iAPX 432 - Intel
- 2014: CHERI
- 2020: CHEx86
Notas
- ^ Frank G. Soltis Fortress Rochester: La historia interna de IBM ISeries págs. 119, 283
- ^ Redell, David D. (noviembre de 1974). "Denominación y protección en sistemas operativos ampliables" . Doctor. Tesis, también publicada como Proyecto MAC TR-140. Instituto de Tecnología de Massachusetts (MIT): a través de la Asociación de Maquinaria de Computación . Cite journal requiere
|journal=
( ayuda )
Referencias
- Fabry, RS (1974). "Direccionamiento basado en capacidad". Comunicaciones de la ACM . 17 (7): 403–412. doi : 10.1145 / 361011.361070 .
- Wulf, W .; Cohen, E .; Corwin, W .; Jones, A .; Levin, R .; Pierson, C .; Pollack, F. (junio de 1974). "HYDRA: el núcleo de un sistema operativo multiprocesador". Comunicaciones de la ACM . 17 (6): 337–345. doi : 10.1145 / 355616.364017 . ISSN 0001-0782 .
- Denning, PJ (diciembre de 1976). "Sistemas operativos tolerantes a fallas". Encuestas de computación ACM . 8 (4): 359–389. doi : 10.1145 / 356678.356680 . ISSN 0360-0300 .
- Levy, Henry M. (1984). Sistemas informáticos basados en capacidades . Maynard, Mass: Prensa digital. ISBN 978-0-932376-22-0.
- Linden, Theodore A. (diciembre de 1976). "Estructuras del sistema operativo para respaldar la seguridad y el software confiable". Encuestas de computación ACM . 8 (4): 409–445. doi : 10.1145 / 356678.356682 . hdl : 2027 / mdp.39015086560037 . ISSN 0360-0300 . [1]
- Viktors Berstis, Seguridad y protección de datos en el IBM System / 38 , Actas del 7º simposio anual sobre Arquitectura de Computadoras, p. 245-252, 6 al 08 de mayo de 1980, La Baule, Estados Unidos
- W. David Sincoskie , David J. Farber : SODS / OS: Sistema operativo distribuido para IBM Series / 1. Revisión de sistemas operativos 14 (3): 46-54 (julio de 1980)
- GJ Myers, BRS Buckingham, Una implementación de hardware de direccionamiento basado en capacidades , Revisión de sistemas operativos ACM SIGOPS, v.14 n.4, p. 13-25 de octubre de 1980
- Houdek, ME, Soltis, FG y Hoffman, RL 1981. Soporte IBM System / 38 para direccionamiento basado en capacidades . En Actas del 8º Simposio Internacional ACM sobre Arquitectura de Computadoras. ACM / IEEE, págs. 341–348.
- La computadora CAP de Cambridge , Levy, 1988
- Plessey System 250 , una solución de capacidad comercial, Hank Levy, 1988
- GD Buzzard, TN Mudge (1983) Sistemas informáticos basados en objetos y lenguaje de programación Ada [2] . Universidad de Michigan - Laboratorio de investigación informática y laboratorio de investigación robótica Departamento de ingeniería eléctrica e informática
enlaces externos
- "[cap-talk] sobre la difusión del enfoque de capacidad" . Archivado desde el original el 14 de abril de 2013 . Consultado el 16 de julio de 2007 .