Gestion de Memoria

31,346 views
31,029 views

Published on

Conceptos, jerarquia de memoria,traduccion de direcciones

1 Comment
3 Likes
Statistics
Notes
No Downloads
Views
Total views
31,346
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
912
Comments
1
Likes
3
Embeds 0
No embeds

No notes for slide

Gestion de Memoria

  1. 1. <ul><li>SISTEMAS OPERATIVOS </li></ul><ul><li>GESTION DE MEMORIA </li></ul><ul><li>Nombre: Jhoanna Simancas </li></ul>
  2. 2. ¿ Qué es la Gestión de Memoria? <ul><li>La parte del sistema operativo que administra la memoria se llama administrador de memoria y su labor consiste en llevar un registro de las partes de memoria que se estén utilizando y aquellas que no, con el fin de asignar espacio en memoria a los procesos cuando éstos la necesiten y liberándola cuando terminen. </li></ul>
  3. 3. Jerarquía de Memoria <ul><li>Los niveles de la jerarquía están contenidos en el siguiente: todos los datos de un nivel se encuentran también en el nivel siguiente y así sucesivamente hasta que alcancemos el extremo inferior de la jerarquía </li></ul>
  4. 4. Jerarquía de Memoria <ul><li>Una jerarquía en memoria está organizada en varios niveles, cada uno más pequeño, más rápido y más caro por byte que el siguiente </li></ul>
  5. 5. Jerarquía de Memoria <ul><li>Memoria Real </li></ul><ul><li>La memoria real o principal es en donde son ejecutados los programas y procesos de una computadora y es </li></ul><ul><li>el espacio real que existe en memoria para que se ejecuten los procesos. Por lo general esta memoria es de </li></ul><ul><li>mayor costo que la memoria secundaria, pero el acceso a la información contenida en ella es de más rápido </li></ul><ul><li>acceso. Solo la memoria cache es más rápida que la principal, pero su costo es a su vez mayor. </li></ul>
  6. 6. Jerarquía de Memoria <ul><li>Memoria Virtual </li></ul><ul><li>La memoria virtual es una técnica para proporcionar la simulación  de  un  espacio de  memoria mucho mayor que la memoria física de una máquina. Esta &quot;ilusión&quot; permite que los programas se hagan sin tener en cuenta el tamaño exacto de la memoria física </li></ul>
  7. 7. Direcciones Lógicas Y Físicas <ul><li>El concepto de espacio de direcciones lógicas vinculado a un espacio de direcciones físicas separado es crucial para una buena gestión de memoria </li></ul><ul><ul><li>Dirección lógica – es la dirección que genera el proceso; también se conoce como dirección virtual </li></ul></ul><ul><ul><li>Dirección física – dirección que percibe la unidad de memoria </li></ul></ul><ul><li>Las direcciones lógicas y físicas son iguales en los esquemas de vinculación en tiempo de compilación y de carga; pero difieren en el esquema de vinculación en tiempo de ejecución </li></ul>
  8. 8. Traducción De Direcciones <ul><li>C uando un proceso es asignado al estado de ejecución, un registro base es cargado con la dirección física de inicio del proceso. </li></ul><ul><li>Un registro limite es cargado con la dirección física de final. </li></ul><ul><li>Cuando una dirección relativa es encontrada es adicionada al registro base y comparada con el registro límite. </li></ul><ul><li>Esto provee protección de hardware. </li></ul><ul><li>Si está dentro del tamaño del proceso se realiza la traducción, caso contrario se envía una interrupción al Sistema Operativo. </li></ul><ul><li>La traducción de dirección &quot;virtual&quot; a &quot;física&quot; también proporciona protección de memoria, ya que podría disponerse por ejemplo, que ciertas direcciones físicas de memoria no se mapeen desde ninguna dirección virtual. </li></ul>
  9. 9. <ul><li>Registro Base: establece la dirección física donde comienza el espacio de memoria del proceso. </li></ul><ul><li>Registro Límite: establece la dirección donde termina el espacio de memoria del proceso, en relación al registro base. </li></ul>
  10. 10. Traducción De Direcciones <ul><li>Reubicación Hardware : la MMU (memory management unit) se encarga de la traducción que es la encargada de c onvertir las direcciones lógicas emitidas por los procesos en direcciones físicas </li></ul><ul><li>Proceso : </li></ul><ul><ul><li>Programa se carga en memoria sin modificar </li></ul></ul><ul><ul><li>El S.O. almacena por cada proceso su función de traducción </li></ul></ul><ul><ul><li>El S.O. especifica a la MMU qué función aplicar para cada proceso </li></ul></ul>
  11. 11. Esquema De Traducci ón De Direcciones <ul><li>Una direcci ó n generada por la CPU se divide en : </li></ul><ul><ul><li>n ú mero de p á gina ( p ) – se usa como í ndice a una tabla de p á ginas que contiene la direcci ó n de cada p á gina en la memoria f í sica </li></ul></ul><ul><ul><li>desplazamiento en la p á gina (d) – se combina con la direcci ó n b á sica para definir la direcci ó n de memoria que se env í a a la unidad de memoria </li></ul></ul><ul><ul><li>para un espacio de direcciones de 2 m y de p á ginas 2 n </li></ul></ul>
  12. 12. TRADUCCI Ó N DE DIRECCIONES <ul><li>Reubicación software : traducción de direcciones durante carga del programa. Esta solución se usa en sistemas sin el hardware específico de traducción (MMU). </li></ul><ul><li>Proceso : </li></ul><ul><ul><li>El programa se carga con las direcciones ya traducidas </li></ul></ul><ul><ul><li>Se genera un código diferente del programa ejecutable </li></ul></ul>
  13. 13. Unidad De Manejo De Memoria <ul><li>La unidad de manejo de memoria (MMU) es parte del procesador. Sus funciones son: </li></ul><ul><li>Convertir las direcciones lógicas emitidas por los procesos en direcciones físicas. </li></ul><ul><li>Comprobar que la conversión se puede realizar. La dirección lógica podría no tener un dirección física asociada. Por ejemplo, la pagina correspondiente a una dirección se puede haber trasladado a una zona de almacenamiento secundario temporalmente. </li></ul><ul><li>Comprobar que el proceso que intenta acceder a una cierta dirección de memoria tiene permisos para ello. </li></ul>

×