administraci³n de la memoria

Download Administraci³n de la memoria

Post on 26-Jul-2015

114 views

Category:

Software

0 download

Embed Size (px)

TRANSCRIPT

1. ADMINISTRACINDE LA MEMORIA Administracin de la memoriaSistemas operacionalesIng. Beatriz Prezprincipal Administracin de la memoriaauxiliar 2. Administracin de lamemoria La memoria es un array de words y bytes, cada uno con sudireccin propia. Es un repositorio de datos de rpido accesocompartido por el CPU y los dispositivos de E/S La memoria principal es un dispositivo de almacenamiento voltil.Pierde su contenido en caso de interrupcin del sistema y falla. La organizacin y administracin de la memoria principal,memoria primaria o memoria real de un sistema ha sido y es unode los factores ms importantes en el diseo de los S. O. Los trminos memoria y almacenamiento se consideranequivalentes. Los programas y datos deben estar en el almacenamientoprincipal para: Poderlos ejecutar. Referenciarlos directamente. 3. La parte del S. O. que administra la memoria se llama administradorde la memoria: Lleva un registro de las partes de memoria que se estnutilizando y de aquellas que no. Asigna espacio en memoria a los procesos cuando estos lanecesitan. Libera espacio de memoria asignada a procesos que hanterminado. Administracin de lamemoriaHistricamente el almacenamiento principal seha considerado como un recurso costoso, por locual su utilizacin debe optimizarse. 4. Administracin de lamemoriaJerarqua de Almacenamiento Los programas y datos tienen que estar en la memoria principalpara poder ejecutarse o ser referenciados. Los programas y datos que no son necesarios de inmediatopueden mantenerse en el almacenamiento secundario. El almacenamiento principal es ms costoso y menor que elsecundario pero de acceso ms rpido. Los sistemas con varios niveles de almacenamiento requierendestinar recursos para administrar el movimiento de programasy datos entre niveles: 5. Administracin de lamemoriaJerarqua del almacenamientoMemoria cach La CPU puedeAlmacenamiento primarioAlmacenamiento secundarioaccederDirectamenteAl almacenamientoprimarioy a la memoriacachLos programas ydatos se debenPasar primero a laMP para que laCPU puedaReferirse a ellosAumenta la velocidad deacceso alalmacenamientoAumenta el costo dealmacenamiento por bitDisminuye la capacidadde almacenamiento 6. Administracin de lamemoriaProcesos y Memoria Para que un proceso se ejecute se requiere ubicarlo en memoriaprincipal junto con los datos que direcciona. Para optimizar el uso del computador se requiere tener variosprocesos en memoria principal, (grado de multiprogramacin)Memoria Principalla memoria principal y los registros son elnico almacenamiento al que la CPUpuede acceder directamente 7. Administracin de lamemoriaOrganizacin Fsica de la MemoriaRegistros de la CPUCacheNivel 1Nivel 2RAMMemoria FsicaMemoria VirtualHard DiskDriveFlash MemoryDispositivos ExternosTecladoMouseScanerAlmacenamientoTemporal ode acceso aleatorioAlmacenamientoPermanente 8. Administracin de lamemoriaCach Un nivel adicional es el cach o memoria de alta velocidad, queposee las siguientes caractersticas: Es ms rpida y costosa que la memoria principal. Impone al sistema un nivel ms de traspaso: Los programas son traspasados de la memoria principal alcach antes de su ejecucin. Los programas en la memoria cach ejecutan mucho msrpido que en la memoria principal. Al utilizar memoria cach se espera que: La sobrecarga que supone el traspaso de programas de unnivel de memoria a otro sea mucho menor que la mejora enel rendimiento obtenida por la posibilidad de una ejecucinmucho ms rpida en la cach. 9. Administracin de lamemoriaAdministrador de Memoria El administrador de memoria tiene como objetivos: Ubicar, reemplazar, cargar y descargar procesos en la memoriaprincipal. Proteger la memoria de acceso indeseados (accidentales ointencionados). Permitir la comparticin de zonas de memoria (indispensablepara lograr la cooperacin de procesos). 10. Administracin de lamemoriaRequisitos del administrador de memoria1. Reubicacin. Permitir el reclculo de direcciones de memoriade un proceso reubicado.2. Proteccin. Evitar el acceso a posiciones de memoria sin elpermiso expreso. (no direcciones absolutas).3. Comparticin. Permitir a procesos diferentes acceder a la mismaporcin de memoria.4. Organizacin Lgica. Permitir que los programas se escribancomo mdulos compilables y ejecutables por separado.5. Organizacin Fsica. Permitir el intercambio de datos en lamemoria primaria y secundaria 11. Administracin de lamemoriaEstrategias de administracin de almacenamientoEstn dirigidas a la obtencin del mejor uso del recurso memoriaprincipal, estas pueden ser: Obtencin: Determinan cundo debe obtenerseinformacin de MS y transferirla a MP. Colocacin: Dnde se coloca la informacin que estentrando en MP. Reemplazo: Qu informacin que est en MP sale paradejar lugar a la nueva informacin entrante 12. Administracin de lamemoriaAdministrador de Memoria Las tcnicas usadas son las siguientes:1. Particin Fija2. Particin Dinmica3. Paginacin Simple4. Segmentacin Simple5. Memoria Virtual Paginada6. Memoria Virtual Segmentada 13. Administracin de lamemoriaTcnicas de administracin de memoriaPARTICIONAMIENTOReal RealRealMono Usuario MultiprogramacinParticionamientoMultiprogramacinPaginacinSimpleSegmentacinSimpleVirtualMultiprogramacinPaginacinVirtualSegmentacinVirtualFija Dinmica Combinacin CombinacinReubicacin, Proteccin 14. Administracin de lamemoriaAdministracin bsica de la MemoriaMonoprogramacin sin intercambio Tres maneras simples de organizar la memoria un sistema operativo con un solo proceso de usuario Este es un esquema de monoprogramacin que aunque es sindudas el ms rpido de programar no se utiliza por ningnsistema operativo moderno por las razones de eficiencia ymetas de diseo mencionadas con anterioridad 15. Administracin de lamemoriaMultiprogramacin y Uso de la MemoriaMultiprogramacin con particiones fijas El anlisis hasta aqu demuestra la utilidad de que mltiplesprocesos se encuentren en la memoria. Cmo debe organizarse la memoria para garantizar esto?La forma ms sencilla es dividir le memoria en n partes quepodran ser de tamaos diferentes y asociar una cola detrabajos por cada particin o quizs una cola nica paratodas las particiones. La memoria que no utilice un proceso dentro de la particinque le fue asignada se desperdicia. Esto se conoce comosobrecarga interna. 16. Administracin de lamemoriaAdministrador de MemoriaSistemaOperativoSistemaOperativoSistema multiprogramadoMltiples programas comparten diversas particionesde memoria Particiones de tamao fijoParticiones de tamao variable 17. Administracin de lamemoriaMemoria Virtual La necesidad cada vez ms imperiosa de ejecutar programasgrandes y el crecimiento en poder de las unidades centralesde procesamiento empujaron a los diseadores de lossistemas operativos a implantar un mecanismo para ejecutarautomticamente programas ms grandes que la memoriareal disponible, esto es, de ofrecer `memoria virtual. La memoria virtual se llama as porque el programador ve unacantidad de memoria mucho mayor que la real, y en realidadse trata de la suma de la memoria de almacenamientoprimario y una cantidad determinada de almacenamientosecundario. 18. Administracin de lamemoriaMemoria Virtual La memoria principal es pequeacomo para acomodar todosprogramas y datospermanentemente. Por lo que es necesario implementarmecanismos de memoria virtual. La memoria virtual es una tcnicapara dar la ilusin de tener msmemoria que la memoria principal.MemoriaVirtualMemoriaFsicaMemoriaPrincipalDisco Duro 19. Administracin de lamemoriaMemoria virtual La idea es proporcionar un espacio de direcciones de memoriamucho mayor que el que la MP o MR proporciona. Para ello se usa la MP y tambin algo de MR. Hay dos tcnicas: paginacin y segmentacin. 20. Administracin de lamemoriaMemoria VirtualEl uso de la memoria virtual involucra un conjunto de prestacionesdel hardware, las direcciones manejadas por el CPU sonprocesadas por un elemento de hardware que se llama unidad deadministracin de la memoria y que tienen la responsabilidad deconvertir las direcciones virtuales a fsicas. 21. Administracin de lamemoriaSegmentacin Esquema de administracin de memoria que da soporte a lavisin de la memoria del usuario Un programa es una coleccin de segmentos. Un segmentoes una unidad lgica como:programa principal,procedimiento, funcin, mtodo, objeto,variables locales, variables globales,bloque comn,pila, tabla de smbolos, arreglos 22. Administracin de lamemoriaArquitectura de Segmentacin Una direccin lgica es una tupla:, tabla de segmentos proyecta las direcciones fsicas bi-dimensionales,cada entrada tiene: base la direccin fsica de inicio del segmento en memoria lmite especifica la longitud del segmento registro bsico de tabla de segmentos (Segment-table baseregister (STBR)) apunta a la ubicacin de la tabla de segmentosen memoria registro de la longitud de la tabla de segmentos (Segment-tablelength register (STLR)) indica el nmero de segmentosusados por un programael nmero de segmento s es legal si s < STLR 23. Administracin de lamemoriaEjemplo de Segmentacin 24. Administracin de lamemoriaModelo de Paginacinde Memoria Lgica y FsicaSolucin eficiente a la fragmentacin externa (no interna): se divide la memoria fsica en bloques de tamao fijollamados frames (marcos de pgina) tamao potencia de 2, entre 512 y 8.192 bytes se divide la memoria lgica en bloques del mismo tamaollamados pages (pginas) una tabla registra la traduccin de direcciones lgicas afsicas para ejecutar un programa de tamao n pginas, serequieren n marcos libres y cargar el programa en ellos el espacio de direcciones lgicas puede ser no contiguo,se asigna memoria a un proceso siempre que haya memoriatotal suficiente 25. Administracin de lamemoriaModelo de Paginacinde Memoria Lgica y Fsica 26. ADMINISTRACINDE LA MEMORIAAUXILIARSistemas operacionalesIng. Beatriz Prez 27. Administracin de lamemoria auxiliarDispositivos FsicosMedios de almacenamientoMemoriaDiscospticosCD-RomD

Recommended

View more >