La Memoria secundaria
Enviado por jorgesricardo • 16 de Noviembre de 2012 • Ensayo • 1.638 Palabras (7 Páginas) • 521 Visitas
Proteccion
• Cada proceso debe protegerse contra interferencias no deseadas de otros procesos, tanto accidentales como intencionadas.
• El código de un proceso no puede hacer referencia a posiciones de memoria de otros procesos, con fines de lectura o escritura, sin permiso.
• Hasta cierto punto, satisfacer las exigencias de reubicación aumenta la dificultad de satisfacción de las exigencias de protección. Puesto que se desconoce la ubicación de un programa en memoria principal, es imposible comprobar las direcciones absolutas durante
la compilación para asegurar la protección.
• Por tanto, todas las referencias a memoria generadas por un proceso deben comprobarse durante la ejecución para asegurar que sólo hacen referencia al espacio de memoria destinado a dicho proceso.
Comparacion.
Cualquier mecanismo de protección que se implemente debe tener la flexibilidad de permitir el acceso de varios procesos a la misma zona de memoria principal.
• Por ejemplo, si una serie de procesos están ejecutando el mismo programa, resultaría beneficioso permitir a cada proceso que acceda a la misma copia del programa, en lugar de tener cada uno su propia copia aparte.
• Los procesos que cooperan en una tarea pueden necesitar acceso compartido a la misma estructura de datos.
• El sistema de gestión de memoria debe, por tanto, permitir accesos controlados a las áreas compartidas de la memoria, sin comprometer la protección básica.
Organizacion logica
De forma casi invariable, la memoria principal de un sistema informático se organiza como un espacio de direcciones lineal o unidimensional que consta de una secuencia de bytes o palabras.
• La memoria secundaria, a nivel físico, se organiza de forma similar.
• Esta organización refleja fielmente el hardware de la máquina, no se corresponde con la forma en la que los programas están construidos habitualmente.
• La mayoría de los programas se organizan en módulos, algunos de los cuales no son modificables (sólo lectura, sólo ejecución) y otros contienen datos que se pueden modificar.
Organización fisica
• Una memoria secundaria de gran capacidad puede permitir un almacenamiento a largo plazo de programas y datos, al tiempo que una memoria principal pequeña mantiene los programas y datos de uso actual.
• En este esquema a dos niveles, la organización del flujo de información entre la memoria principal y la secundaria tiene un gran interés en el sistema. La responsabilidad de este flujo podría asignarse al programador, pero esto es impracticable e indeseable, debido a dos razones:
• La memoria principal disponible para un programa y sus datos puede ser insuficiente. En este caso, el programador emplea una práctica conocida como superposición, en la cual el programa y los datos se organizan de tal forma que puede haber varios módulos asignados a la misma región de memoria, con un programa principal responsable del intercambio de los módulos según se necesite. Incluso con la ayuda de herramientas de compilación, la programación superpuesta malgasta el tiempo del programador.
• En un entorno multiprogramado, el programador no conoce durante la
codificación cuánto espacio habrá disponible o dónde estará este espacio.
14. Particionamiento de la memoria
Dentro de la modalidad de multiprogramación es la situación que se presenta cuando la memoria alcanza para que todos los programas que se están ejecutando intercaladamente residan en ella hasta su terminación.
El esquema de particiones reales se basa en la división de la memoria en particiones, cada una destinada a alojar un programa distinto.
PARTICION DE LA MEMORIA:
La tarea principal del Sistema de Gestión de memoria es cargar los programas en la memoria principal para su ejecución en el procesador.
En casi todos los sistemas multiprogramados modernos, esta tarea requiere un sofisticado esquema llamado memoria virtual, la cual esta basada en el uso de una de dos técnicas básicas: segmentación o paginación.
15. Particiones fijas y variables
PARTICIONES FIJAS
Consiste en dividir la memoria en varias particiones de tamaño fijo. Cada partición puede contener exactamente un proceso.
El nivel de multiprogramación está limitado por el número de particiones.
Cuando una partición está libre, se selecciona un proceso de la cola de entrada y se carga en la partición libre; cuando un proceso termina, la partición está disponible para otro.
El sistema operativo conserva una tabla que indica qué partes de la memoria están disponibles y cuales están ocupadas.
Particiones Variables
• Cada trabajo ocupa tanto espacio como necesita.
• El tamaño del trabajo a ubicar no puede ser mayor que el almacenamiento principal disponible
• Se disminuye parcial o totalmente el desperdicio de memoria
• Aparecen: Condensación y Compactación
16. Enlace y carga
Carga
su función principal es proteger la carga en memoria de un modulo hasta que el programa lo llame, como también tenemos el "Enlace " que es otro caso de carga dinámica, es aquella en el cual la biblioteca de código se enlazada cuando un determinado programa se ejecuta en posición contraria a un enlace estático que se produce en un tiempo de proceso de compilación. Este tipo de enlace tiene
...