ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

ADMINISTRACION DE MEMORIA Y SISTEMAS DE ARCHIVOS

Ivan1992Ensayo26 de Septiembre de 2015

6.620 Palabras (27 Páginas)208 Visitas

Página 1 de 27

RESUMEN

En este trabajo hice un resumen de dos temas de mucha importancia los cuales son ADMINISTRACION DE MEMORIA Y SISTEMAS DE ARCHIVOS, en los cuales incluí los siguientes subtemas: Administración Básica De Memoria, Monoprogramacion Sin Intercambio Ni Paginación,  Multiprogramación Con Particiones Fisivas, Relocalización Y Protección.

Entre otros del tema de administración de memoria del tema de administración de archivos son los siguientes: Nombre De Los Archivos, Tipos De Archivo, Acceso A Archivos, Atributos De Archivos. Por mencionar algunos.

INTRODUCCION.

En este resumen puse los que para mí son algunos de los puntos más importantes de estos dos temas que ya mencione anteriormente.

Aprenderé las formas en que se puede administrar la memoria así de cómo administrar los archivos.

ADMINISTRACION DE MEMORIA.

La memoria es un recurso importante que se debe administración cuidado. La parte del sistema operativo que administra la jerarquía de memoria se denomina ADMINISTRADOR DE MEMORIA. Su trabajo consiste en mantenerse al tanto de que partes de la memoria  están en uso y cuáles no lo están, asignar memoria a los procesos cuando la necesitan t recuperarla cuando termine, y controlar el intercambio entre la memoria principal y el disco cuando la primera es demasiado pequeña para contener todos los procesos.

ADMINISTRACION BASICA DE MEMORIA.

Los sistemas de administración de memoria se pueden dividir en dos clases, los que trasladan procesos entre la memoria y el disco durante la ejecución (intercambio y paginación) y las que no lo hacen.

MONOPROGRAMACION SIN INTERCAMBIO NI PAGINACION.

El esquema de administración de memoria más sencillo posible es ejecutar solo un programa a la vez, compartiendo la memoria entre ese programa y el sistema operativo. El sistema operativo puede estar en la base de la memoria en RAM (memoria de acceso aleatorio), o puede estar en ROM (memoria solo de lectura) en la parte superior de la memoria, o los controladores de dispositivos pueden estar en la parte superior de la memoria en una ROM con el resto del sistema en RAM asta abajo.

        OxFFF[pic 1][pic 2][pic 3]

[pic 4][pic 5][pic 6]

[pic 7]

MULTIPROGRAMACION CON PARTICIONES FISIVAS

Aunque a veces se usa la mono programación en computadoras pequeñas con sistemas operativos sencillos hay muchos casos en que es deseable permitir la ejecución de múltiples procesos a la vez. En los sistemas de tiempo compartido, tener varios procesos en la memoria a la vez implica que cuando un procesos está bloqueado esperando que termine una E/S otra puede usar la CPU así, la multiprogramación aumenta el aprovechamiento de la CPU sin embargo, incluso en computadoras personales hay ocasiones en las que resulta útil poder ejecutar dos o más programas a la vez.

La forma más fácil, de lograr la multiprogramación consiste solamente en dividir la memoria en N particiones posiblemente desiguales esta división puede, por ejemplo ejecutarse manualmente cuando se inicia el sistema.

Cuando llega un trabajo, se le puede colocar en la cola de entrada de la partición pequeña que puede contenerlo. Puesto que las particiones en este esquema cualquier espacio de una partición que un trabajo no utilice se desperdiciara.

Múltiples colas de entrada.[pic 8][pic 9][pic 10][pic 11][pic 12][pic 13][pic 14][pic 15][pic 16][pic 17][pic 18][pic 19][pic 20][pic 21][pic 22][pic 23][pic 24][pic 25][pic 26][pic 27]

[pic 28][pic 29][pic 30]

La ventaja de repartir los trabajos entrantes en colas distintas se hace evidente cuando la cola de una partición grande está vacía pero la cola de una partición pequeña está llena, como es el caso 1 y 3 de la figura.        

RELOCALIZACION Y PROTECCION.

La multiprogramación introduce dos problemas esenciales que es preciso resolver: la relocalización y la protección. Es evidente que diferentes trabajos se ejecutara en diferentes direcciones. Cuando se vincule (es decir, cuando el programa principal los procedimientos escritos por el usuario y los procedimientos de biblioteca se combinan en un solo espacio de direccione), el vinculador necesita saber en qué dirección de la memoria va a comenzar.

La relocalización durante la carga no resuelve el problema de la protección un programa mal intencionado siempre puede construir una nueva instrucción y saltar a ella dado que el programa en este sistema usan direcciones absoluta en un lugar de direcciones relativas a un registro  no hay forma de impedir de un programa construya una instrucción que lea o escriba cualquier palabra de la memoria en los sistemas multiusuario no es conveniente permitir que los procesos lean y escriban en memoria que pertenece a otro usuario.

INTERCAMBIO.

En un sistema por lotes, la organización de la memoria en particiones fijas es sencilla y efectiva. Cada trabajo se carga en una partición cuando llega al frente de la cola y permanece en la memoria hasta que termine.  En tanto sea posible mantener  en la memoria suficientes trabajos para mantener ocupada a la CPU todo el tiempo, no hay por qué usar algo más complicado.

Los sistemas de tiempo compartido o las computadoras personales orientadas a gráficos, la situación es diferente. A veces no hay suficiente memoria principal para contener todos los procesos que están activos actualmente, y los procesos en exceso deben mantenerse en disco y traerse dinámicamente para que se ejecute.

Podemos usar dos enfoques de administración de memoria generales dependiendo (en parte) del hardware disponible. La estrategia más sencilla, llamada intercambio consiste en traer a la memoria cada proceso en su totalidad, ejecutarlo durante un tiempo y después colocarlo otra vez en el disco.

La estrategia llamada memoria virtual, permite a los programas ejecutarse aunque solo estén parcialmente en la memoria principal.

La diferencia principal entre las particiones filas y las particiones variables es que el numero ubicación y tamaño de las particiones varían dinámicamente en el segundo caso conforme los procesos vienen y van mientras que en el primer caso están fijas. La flexibilidad de no estar atado a un número fijo  de particiones que podrían ser denominados o demasiados pequeños mejora el aprovechamiento de la memoria pero también complica la asignación y liberación de memoria  así como su contabilización.

Si el intercambio crea múltiples agujeros en la memoria, es posible combinarlos todos para formar un grande desplazando todos los procesos hacia abajo hasta donde sea posible. Esta técnica se conoce como compartición de memoria y pocas veces se practican por que requieren mucho tiempo de CPU.

ADMINISTRACION DE MEMORIA CON MAPAS DE BITS.

Cuando la memoria se asigna dinámicamente el sistema operativo debe administrarlo en términos generales hay dos formas de contabilizar la utilización de memoria: mapas de bits y listas libres.

Con un mapa de bits la memoria se divide en unidades de asignación, y a la vez solo de algunas palabras o quizá de varios kilobytes. A cada unidad de asignación corresponde un bit del mapa de bits, que es 0 si la utilidad esta libre y uno si está ocupado (o viceversa).

El tamaño de la unidad de asignación es una cuestión de diseño importante. Cuanto menor sea la unidad de asignación, mayor será el mapa de bits. Sin embargo, incluso con una unidad de asignación de solo cuatro bits, 32 bits de memoria solo requerirá un bit de mapa. Una memoria de 32m bits usara N bits del mapa, y el mapa solo ocupara 1-33 de la memoria.

Un mapa de bits ofrece un método sencillo para contabilizar las palabras en una cantidad fija de memoria por que el tamaño de mapas de bits depende solo del tamaño y de la memoria y del tamaño de la unidad de asignación. El problema principal de la memoria es que una vez que se ha decidido traer a la memoria un proceso de k unidades el administrador de memoria debe buscar en el mapa de bits una serie de k bits en 0 consecutivos.  

ADMINISTRACION DE MEMORIA CON LISTAS ENLAZADAS.

Otra forma de contabilizar la memoria es mantener una lista enlazada de segmentos de memoria libres y asignados, donde un segmento es un proceso o bien un agujero entre dos proceso. La memoria se representa como lista enlazada de segmentos. Cada entrada de la lista un agujero o un proceso, la dirección en la que principia, la longitud y un apuntador a la siguiente entrada.

MEMORIA VIRTUAL.

La memoria virtual también puede funcionar en un sistema de multiprogramación, manteniendo segmentos de muchos programas en la memoria a la vez. Mientras un programa está esperando que se traiga a la memoria una de sus partes, está esperando la e/s y no puede ejecutarse así que puede otorgarse la CPU a otros procesos lo mismo que cualquier otro sistema de multiprogramación.

PAGINACION.

La mayor parte de los sistemas de memoria virtual emplean una técnica llamada paginación, que describimos a continuación. En cualquier computadora, existe un conjunto de direcciones de memoria que los programas pueden producir. Cuando un programa ejecuta una instrucción como MOVE REGL, 1000 está copiando el contenido de la dirección de memoria 1000 en REG (o viceversa dependiendo de la computadora) las direcciones pueden generarse usando indización, registro de base, registro de segmento y otras técnicas.

...

Descargar como (para miembros actualizados) txt (41 Kb) pdf (250 Kb) docx (500 Kb)
Leer 26 páginas más »
Disponible sólo en Clubensayos.com