La computadora Cambridge CAP fue la primera computadora experimental exitosa que demostró el uso de capacidades de seguridad , tanto en hardware como en software. [1] Fue desarrollado en el Laboratorio de Computación de la Universidad de Cambridge en la década de 1970. A diferencia de la mayoría de las máquinas de investigación de la época, también era una máquina de servicio útil. [1]
El letrero actualmente en la parte frontal de la máquina dice:
El proyecto CAP sobre protección de memoria se desarrolló entre 1970 y 1977. Se basó en capacidades implementadas en hardware, bajo la dirección de M. Wilkes y R. Needham con D. Wheeler responsable de la implementación. R. Needham recibió un premio técnico BCS en 1978 por el proyecto CAP (protección de la capacidad) .
Diseño
El CAP fue diseñado de tal manera que cualquier acceso a un segmento de memoria o hardware requería que el proceso actual tuviera las capacidades necesarias.
El procesador de 32 bits presentaba control de microprogramación, dos cachés de 256 entradas , un búfer de escritura de 32 entradas y la unidad de capacidad en sí, que tenía 64 registros para mantener las capacidades evaluadas. Las operaciones de coma flotante estaban disponibles utilizando un solo acumulador de 72 bits. El conjunto de instrucciones incluía más de 200 instrucciones, incluidas operaciones básicas de memoria y ALU, hasta instrucciones de control de capacidad y proceso.
En lugar de los registros visibles para el programador que se utilizan en los diseños de Chicago y Plessey System 250 , el CAP cargaba los registros internos en silencio cuando un programa definía una capacidad. [2] La memoria se dividió en segmentos de hasta 64 K palabras de 32 bits. Cada segmento puede contener datos o capacidades, pero no ambos. Se accedió al hardware a través de una minicomputadora asociada.
Todos los procedimientos que constituyen el sistema operativo se escribieron en ALGOL 68C , aunque varios otros procedimientos protegidos estrechamente asociados, como un paginador, están escritos en BCPL . [3]
Operación
El CAP entró en funcionamiento por primera vez en 1976. Una computadora completamente funcional, presentaba un sistema operativo completo , sistema de archivos , compiladores , etc. El SO utilizó una estructura de árbol de procesos , con un proceso inicial llamado "Coordinador maestro". Esto eliminó la necesidad de modos de operación separados, ya que cada proceso podría acceder directamente a los recursos de sus hijos. En la práctica, solo se utilizaron dos niveles durante el funcionamiento del CAP. [4]
En 1981, Nicholas JL Brown implementó la versión MACRO SPITBOL del lenguaje de programación SNOBOL4 en el CAP. [5]
Ver también
Notas
Referencias
- Wilkes, MV ; Needham, RM (1979). La computadora Cambridge CAP y su sistema operativo (PDF) . Nueva York: Elsevier North Holland.
- Levy, Henry M. (1984). "La Computadora CAP de Cambridge". Sistemas informáticos basados en capacidades (PDF) . Prensa digital.