Vous êtes sur la page 1sur 7

Sistemas operativos.

Resumen de la unidad administracin de memoria.


Profesor. Patricia Horta alumno. Jess Israel Illescas Nava
22-11-11

Administracin de memoria.

Si Parafraseamos la ley de prkinson que dice, "los programas se expanden hasta llenar la memoria disponible para contenerlos", vemos que es una situacin cotidiana hoy en da, memorias cada vez ms poderosas, pero tambin programas que cada vez consumen mas, es por ello que La memoria es un recurso importante que se debe administrar con cuidado. Corresponde al sistema operativo coordinar el uso de la memoria. Donde el administrador de memoria se mantiene al tanto de qu partes de la memoria estn en uso y cules no lo estn, asigna memoria a los procesos cuando la necesitan y la recupera cuando stos terminan, adems controla el intercambio entre la memoria principal y el disco cuando la primera es demasiado pequea para contener todos los procesos. La administracin de la memoria principal es vital. De hecho, el desempeo de todo sistema ha dependido de dos cosas: cunta memoria est disponible y de qu manera se utiliza mientras se procesan los trabajos o tareas. Ida M. Flynn. Es donde vemos que el propsito de la administracin de memoria es controlar la forma en que se tiene acceso a sta y maximizarla su disponibilidad y su almacenamiento. La memoria principal puede ser considerada como un arreglo lineal de localidades de almacenamiento de un byte de tamao. Cada localidad de almacenamiento tiene asignada una direccin que la identifica. La memoria real es donde son ejecutados los programas y procesos de una computadora y es el espacio real que existe en memoria. A lo largo del tiempo han aparecido diversas formas de gestionar la memoria, entre ellas tenemos que en los primeros sistemas operativos la memoria se divida en dos partes, una para el sistema operativo y otra para los programas del usuario. Posteriormente el sistema operativo fue capaz de gestionar la existencia de varios programas y a cada uno le asignaba un espacio llamado particin. Por ltimo y como predecesor de la memoria virtual tenemos el intercambio (swapping) que consiste en intercambiar procesos entre memoria y almacenamiento auxiliar. En lo referente a su administracin se pueden tener ciertos criterios bases como: Se coloca un solo programa de usuario o varios? Si se encuentran varios programas de usuario podemos proceder: conceder a cada uno la misma cantidad de espacio o se divide el almacenamiento en porciones o particiones de diferente tamao?, o se utilizar un esquema rgido de nmero y tamao de particiones o un esquema dinmico y adaptable?, se requerir que los trabajos de los usuarios sean diseados para funcionar en una particin especfica o se permitir que se ejecuten en cualquiera donde quepan? o se requerir o no que cada trabajo sea colocado en un bloque contiguo de memoria?. Segn nuestras necesidades ser el esquema de administracin

que empleemos multiusuario ).

(monoprogramacin

multiprogramacin,

monousuario

Si vemos la memoria de forma jerrquica podramos hablar de tres niveles; el almacenamiento secundario, que es donde la cpu solo puede referenciar a los programas y datos luego de haber sido transferidos al almacenamiento primario. Tenemos tambin el almacenamiento primario donde la cpu puede referenciar directamente a los programas y datos. Y por ltimo tenemos la cache donde la nica diferencia que hay entre sta y la anterior es su velocidad, la memoria cache es mucho ms rpida que la memoria principal. Conforme vamos recorriendo estos niveles la cpu puede hacer referencia a los programas mucho ms rpido as como el costo. Ahora que sabemos como es la memoria, su importancia y su jerarqua veamos algunas estrategias para su administracin. En primer lugar podemos clasificarlas segn su obtencin donde determina cuando se debe transferir una pgina o un segmento de almacenamiento secundario al primario. Y a su vez podemos subclasificarla en: obtencin por demanda en donde se espera a que un proceso en ejecucin haga referencia a una pgina o a un segmento antes de traer la pgina o el segmento de almacenamiento primario. Y tambin en obtencin anticipada en donde se intenta determinar por adelantado a cuales paginas o segmentos har referencia un proceso. En segundo lugar tenemos lo que son estrategias de colocacin que determinan en que lugar del almacenamiento primario se debe colocar una pgina o un segmento entrante. Y por ltimo tenemos las estrategias de reemplazo que sirven para decidir cual pgina o segmento se debe desplazar para dar espacio a una pgina o segmento entrante cuando esta completamente ocupado el almacenamiento primario. Otra forma de organizar nuestra memoria es si se usa la asignacin contigua o no contigua. El almacenamiento contiguo es donde cada programa tiene que ocupar un nico bloque contiguo de localidad de memoria. El almacenamiento no contiguo un programa se divide e varios bloques o segmentos que se pueden colocar no necesitan ser adyacentes. El segundo es ms complejo pero ms eficiente que la asignacin continua. Actualmente el modelo de usuario respecto al sistema operativo es el de multiprogramacin en donde dividimos la memoria para ofrecer la capacidad de te ner ms de un proceso a la vez e incrementar el aprovechamiento del cpu. En la multiprogramacin podemos usar dos enfoques, la multiprogramacin de particin fija o variable y multiprogramacin con intercambio de almacenamiento. En la multiprogramacin de particin fija el sistema operativo lleva una tabla indicando cules partes de la memoria estn disponibles y cules estn ocupadas. Cuando llega

un proceso se asigna nicamente el espacio requerido, manteniendo el resto disponible para futuros procesos que requieran de espacio. Este modelo permite que varios procesos usuarios compitan al mismo tiempo por los recursos del sistema, por ejemplo: Un trabajo en espera de I/O ceder la cpu a otro trabajo que est listo para efectuar cmputos. Tambin Existe paralelismo entre el procesamiento y la I/O. A su vez se incrementa la utilizacin de la cpu y la capacidad global de ejecucin del sistema. Para acomodar a los proceso podemos hacer uso de una cola nica que asigna los procesos a los espacios disponibles de la memoria conforme se vayan desocupando. Otra forma de asignacin es buscar en la cola el proceso de tamao mayor que se ajuste al hueco (entindase por hueco a una localidad de memoria libre). En la multiprogramacin de Particin Variable. Los procesos ocupan tanto espacio como necesitan, pero obviamente no deben superar el espacio disponible de memoria. En ella se consideran esquemas de asignacin contigua, dado que un programa debe ocupar posiciones adyacentes de almacenamiento. Cuando los procesos termi nan dejan disponibles espacios de memoria principal llamados agujeros, stos Pueden ser usados por otros trabajos que cuando finalizan dejan otros agujeros menores. O si en sucesivos pasos los agujeros son cada vez ms numerosos pero ms pequeos, se genera un desperdicio de memoria principal. Esto ocasiona una combinacin de agujeros (reas libres), que consiste en fusionar agujeros adyacentes para formar uno sencillo ms grande. En la multiprogramacin con Intercambio de Almacenamiento. los programas del usuario no requieren permanecer en la memoria principal hasta su terminacin. Esto cede el almacenamiento y la cpu al siguiente trabajo. En Segundo lugar la totalidad del almacenamiento se dedica a un trabajo durante un breve perodo de tiempo. Y por ultimo que los trabajos son intercambiados, haciendo que un trabajo puede ser intercambiado varias veces antes de llegar a su terminacin. Cabe mencionar que los sistemas de intercambio fueron los predecesores de los sistemas de paginacin. Para lograr esto se mantienen al mismo tiempo varias imgenes de usuario o imgenes de memoria en la memoria principal. Despus procede retirando una imagen de usuario de la memoria principal solo cuando es necesario su almacenamiento para una nueva imagen. Las imgenes de usuario (imgenes de memoria) retiradas del almacenamiento principal se graban en el almacenamiento secundario (discos). Por ltimo mencionar, en lo relacionado a la multiprogramacin, que cuando un proceso llega y necesita memoria el sistema operativo lleva a cabo una compactacin de memoria. Esto significa que el sistema operativo busca en la tabla de huecos alguno lo suficientemente grande para el proceso. Si el hueco es muy grande, lo parte en dos, una parte es asignada al proceso y la otra se identifica como otro hueco liberando su memoria. Si el nuevo hueco es adyacente con otro, ambos huecos se unen formando un solo hueco ms grande.

A lo largo del resumen hemos visto la evolucin de la organizacin del almacenamiento, empezamos viendo lo que es el almacenamiento real, despus la multiprogramacin, ya sea de particin fija o variable, ahora veremos la siguiente evolucin en lo que a memoria se refiere y esa es la memoria virtual. Empezamos viendo que es el almacenamiento virtual; entendemos por almacenamiento virtual a la capacidad de direccionar un espacio de almacenamiento mucho mayor que el disponible en el almacenamiento primario. Los mtodos ms comunes son las tcnicas de paginacin, segmentacin y una combinacin de ambas. Empecemos viendo lo que es la paginacin. Consideremos el espacio de direcciones lgicas de cada proceso como un conjunto de bloques de tamao consistente llamados pginas. La memoria fsica se administra implementando bloques de tamao consistente denominados marcos. La paginacin funciona transfiriendo del almacenamiento secundario al primario en los marcos de pginas. Los marcos tienen el mismo tamao, comienzan en direcciones del almacenamiento real que son mltiplos enteros del tamao fijo de la pgina y podr colocarse una nueva pgina dentro de cualquier marco disponible. Para que a transferencia de almacenamientos funcione se lleva acabo una traduccin dinmica de direcciones, sta incluye un proceso en ejecucin que hace referencia en direccin virtual V= (p, d). Un mecanismo de transformacin de paginas busca la pagina p en la tabla de paginas y determina si la p se encuentra en el marco de pagina p. La direccin de almacenamiento real se forma por la concatenacin de p y d. Siguiendo con los mtodos para el almacenamiento virtual veamos lo que es la segmentacin, que consiste en la asignacin de bloques de memoria de tamao variable, llamados segmentos. El tamao ser el requerido segn la peticin del proceso, el tamao mximo para un segmento estar determinado por la capacidad de direccionamiento del hardware de la computadora, y el acceso a cada elemento individual se hace mediante una direccin de memoria que se integra por dos elementos; una direccin de segmento y una direccin de desplazamiento. La combinacin (suma) de ambas direcciones generan la direccin de memoria absoluta a acceder. Los segmentos tienes las siguientes caractersticas: no necesitan ser de igual tamao, los bloques separados no necesitan ser adyacentes, se complica la proteccin de bloques de memoria de un proceso de usuario y es ms difcil limitar el rango de acceso de cualquier programa. Un proceso solo puede ejecutarse si su segmento actual (como mnimo) est en el almacenamiento primario. Ahora como vimos anteriormente podemos hacer una combinacin de sistemas de paginacin y segmentacin. Ofrecen las ventajas de las dos tcnicas de organizacin del almacenamiento virtual, el tamao de los segmentos es mltiplo del de las pginas,

y no es necesario que todas las pginas de un segmento se encuentren al mismo tiempo en el almacenamiento primario. Ahora que hemos visto las tcnicas para la organizacin de la memoria, veamos las tcnicas que hay para su administracin. Bsicamente son cinco; reemplazo de pginas, paginacin por demanda, paginacin anticipada, liberacin de pginas y tamao de pgina. La tcnica de reemplazo de pginas se subdivide en seis ms. stas son: Principio de Optimalidad. Para obtener un rendimiento ptimo, la pgina que se debe reemplazar es aquella que tardar ms tiempo en ser utilizada. Reemplazo de Pginas aleatorio: Todas las pginas que se encuentran en el almacenamiento principal tienen la misma probabilidad de ser elegidas para el reemplazo. Es un esquema que casi no se utiliza por su enfoque aleatorio de acertar o errar. Reemplazo de pginas de primeras entradas-primeras salidas (PEPS). Cada pgina se registra en el instante que entr en el almacenamiento primario. Cuando se necesita reemplazar una pgina, se escoge la que ha permanecido en el almacenamiento durante el mayor tiempo. Reemplazo de pginas de la menos reciente utilizada. Se selecciona para su reemplazo, a aquella pgina que no se ha sido utilizada durante mayor tiempo. Exige que se marque cada pgina con el instante en que se hace referencia a ella. Por el trabajo adicional que requiere no se usa a menudo en los sistemas actuales; Reemplazo de pginas de la menos frecuentemente utilizada. La pgina por remplazar es aquella que ha sido utilizada menos frecuentemente. O a la que se ha hecho referencia con menos frecuencia. Siguiendo con la administracin de la memoria virtual tenemos tambin la paginacin por demanda, en donde no se debe transferir ninguna pgina del almacenamiento secundario al primado hasta que un proceso en ejecucin haga explcitamente referencia a ella, esto garantiza la entrega de pginas que requieren los procesos y el trabajo extra es mnimo. Otra tcnica es la paginacin anticipada, donde el sistema operativo intenta predecir las pginas que necesitar un proceso y entonces carga dichas cuando hay espacio disponible. Una tcnica ms es la liberacin de pginas, donde los programas que ya no requieran pginas especficas debern desechar tales pginas de sus conjuntos de trabajo.

Para terminar este resumen podemos ver que la memoria que en su concepcin es simple, un almacenamiento para actuar con el cpu, ha evolucionado hasta algo tan complejo como el almacenamiento virtual, donde utilizamos diferentes tcnicas para organizarla y administrarla. Este punto es importante puesto que gran parte de la computacin hoy en da recae en la memoria, sabemos que el componente principal puede ser el cpu, pero cuando se queda sin memoria es intil. Es por ello que el enfoque correcto para su administracin es crucial, y aunque en gran parte esto recae sobre los desarrolladores de los sistemas operativos, su funcionamiento puede ayudarnos a prevenir errores y fallos.

Bibliografa.
Sistemas operativos diseo e implementacin. Andrew S. Tanenbaum, Albert S. Woodhull Editorial Prentice Hall. Sistemas operativos. Ida M. Flynn, Ann Mclver Mchoes. Editorial Cengage Learning. Principios de sistemas de informacin: enfoque administrativo. Ralph M. Stair, George W. Rey Editorial Cengage Learning. Sistemas operativos monopuesto. Jess Nio. Editorial Editex. http://sisinfo.itc.mx/ITC-APIRGG/Materias/Mat4/SistOp-II_Unid1.php http://www.monografias.com/trabajos10/gesmem/gesmem.shtml http://exa.unne.edu.ar/depar/areas/informatica/SistemasOperativos/SO3.htm#OAA http://pedvazvid.tripod.com/index-old.htm http://pedvazvid.tripod.com/organizacion_de_memoria.htm

Vous aimerez peut-être aussi