Sistemas operativos modernos

tanto el problema de protección como el de reubicación a expensas de dos registros adicionales y un pequeño aumento en el tiempo de ciclo (para efectuar la verificación de límite y la suma). Dirección OxFFFFFFFF Limite- Base (a) Registros cuando se ejecuta ei programa 1 Limite-2 Base-2 Límite-1 Base-1 , usuarío-1 (b) Registros cuando se ejecuta el programa 2 Limlte-2 Base-2 Límite-1 Base-1 Figura 1-9. a) Uso de un par base-límite. El programa puede tener acceso a la me­ moria entre la base y el límite, b) Uso de dos pares base-límite. El código del pro­ grama está entre Base-1 y Límite-1, mientras que los datos están entre Base-2 y Límite-2. La verificación y conversión hacen que una dirección generada por el programa, llamada dirección virtual, se convierta en una dirección empleada por la memoria, llamada dirección física. El dispositivo que se encarga de la verificación y la conversión es la unidad de admi­ nistración de memoria (MMU; memory management unit), que está situada en el chip de la CPU o cerca de él, pero por lógica está entre la CPU y la memoria. En la figura l-9b se ilustra una MMU más compleja. Aquí tenemos una MMU con dos pa­ res de registros base y límite, uno para el texto del programa y otro para los datos. El conta­ dor de programa y todas las demás referencias al texto del programa usan el par 1, y las referencias a datos usan el par 2. Por ello, ahora es posible que varios usuarios compartan el mismo programa, manteniendo una sola copia de él en la memoria, algo que no era posible con el primer esquema. Cuando se está ejecutando el programa 1, los cuatro registros se estable­ cen como indican las flechas a la izquierda de la figura l-9b. Cuando se está ejecutando el pro­ grama 2, se ajustan como indican las flechas a la derecha de esa figura. Existen MMUs mucho

RkJQdWJsaXNoZXIy MjI4NDcx