jueves, 23 de julio de 2015


Memoria

Una memoria es un dispositivo de almacenamiento. La información se almacena de manera codificada, en espacios de la memoria que están direccionados, es decir, que la memoria contiene direcciones, cada dirección almacena una parte de la información.

Por lo tanto los accesos a memoria se hacen de manera direccionada. El procesador manda la dirección a la memoria, además del tipo de operación que va a realizar, que puede ser escritura o lectura. La velocidad de estos accesos depende del procesador que este mandando las solicitudes.

La memoria tiene por lo tanto, bits de direcciones y bits de datos, determinados por los pines del chip. Por ejemplo, si una memoria tiene 3 bits de direcciones quiere decir que puede almacenar hasta 8 piezas de información. Los bits de datos determinan el tamaño de la información que puede caber en cada dirección.

Organización Física de Memoria 

Memoria Secundaria


La memoria secundaria es un conjunto de dispositivos periféricos para el almacenamiento masivo de datos de un ordenador, con mayor capacidad que la memoria principal, pero más lenta que ésta.





El Disquete
El disco Duro
Las Memorias Flash 







Memoria Cache

Cuando en informática se habla de memoria caché o cache se está hablando de aquella cantidad de información que permanece de manera temporal en la computadora y que ayuda a la adquisición de velocidad y eficiencia cuando es necesario recurrir a determinado tipo de datos. El nombre de memoria cache proviene del francés, que significa “escondido” u “oculto”.




Memoria RAM

La memoria principal o RAM (Random Access Memory, Memoria de Acceso Aleatorio) es donde el computador guarda los datos que está utilizando en el momento presente. El almacenamiento es considerado temporal por que los datos y programas permanecen en ella mientras que la computadora este encendida o no sea reiniciada.




Memoria ROM

La Memoria ROM (Read Only Memory o Memoria de sólo lectura) viene grabada en chips con una serie de programas por el fabricante de hardware y es sólo de lectura, por lo que no puede ser modificada - al menos no muy rápida o fácilmente - y tampoco se altera por cortes de corriente. En esta memoria se almacenan los valores correspondientes a las rutinas de arranque o inicio del sistema y a su configuración.

Memoria Virtual

La memoria virtual o de intercambio (swap memory) es usada por el sistema operativo junto con la memoria física o RAM para incrementar la máxima capacidad de memoria disponible y permitir ejecutar aplicaciones que requieran más memoria que la física, o abrir simultáneamente varias aplicaciones que sobrepasen ésta.

Administrador de Memoria

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, así como administrar el intercambio entre la memoria principal y el disco en los casos en los que la memoria principal no le pueda dar capacidad a todos los procesos que tienen necesidad de ella.

El administrador de memoria tiene como objetivos:

  • Ubicar, reemplazar, cargar y descargar procesos en la memoria principal.
  •  Proteger la memoria de acceso indeseados (accidentales o intencionados).
  •  Permitir la compartición de zonas de memoria (indispensable para lograr la cooperación de procesos). 
Requisitos De La Gestión De Memoria
  •          Reubicación

 La reubicación permite crear un espacio lógico independiente para cada proceso y el Sistema Operativo.
o   Direcciones lógicas: direcciones de memoria generadas por el programa.
o   Direcciones físicas: direcciones de memoria principal asignadas.

Mientras que se está ejecutando el programa, puede que se descargue en el disco y que vuelva a la memoria principal, pero en una ubicación distinta a la anterior (reubicación).

        o  Reubicación Estática: Implica generalmente que la reubicación es realizada antes o durante la carga del proceso de memoria.

    o  Reubicación Dinámica: Implica que la correspondencia  entre el espacio de direcciones virtuales y el espacio de direcciones físicas se efectúan en tiempo de ejecución.

  •  Protección

El código de un proceso no puede hacer referencia a posiciones de memoria de otros procesos sin permiso, con fines de lectura o escritura sin permiso.

Es imposible comprobar las direcciones absolutas de los programas, puesto que se desconoce la ubicación de un programa en la memoria principal.

Normalmente los procesos de usuario no pueden acceder al sistema operativo
·         
  •      Compartición

El sistema de gestión de memoria debe permitir accesos controlados a las áreas compartidas de la memoria, sin comprometer la protección básica.

  • Organización Lógica

 La mayoría de los programas se organizan en módulos.

Los módulos pueden escribirse y compilarse independientemente. Pueden otorgarse distintos grados de protección alguna de los cuales no son modificables y otros contienen datos modificables.

·   Organización Física


La memoria principal en algunos casos no puede ser suficiente para los programas y sus datos.  La superposición permite que varios módulos sean asignados a la misma región de memoria. El programador no conoce cuanto espacio será asignado o donde se encuentra este espacio.



Partición Fija

Consiste en dividir la memoria libre en varias partes de igual tamaño o de diferentes tamaños Un programa puede ser demasiado grande para caber en la partición. En este caso, el programador debe diseñar el programa mediante superposiciones, para que sólo una parte del programa esté en memoria principal.  





Partición Dinámica

Consiste en particiones de memoria de tamaños variable, es decir, a cada proceso se le asigna la cantidad de memoria que necesita deben utilizarse algunos algoritmos para la ubicación de procesos en las particiones.




Paginación Simple

La memoria principal esta divida en bloques de igual tamaño llamados marcos o marcos de pagina.El proceso está dividido también en bloques de tamaño igual a los de la memoria principal llamados páginas.

Las paginas de un proceso se almacenan en marcos de paginas libres independientemente de que estén o no contiguas

El sistema operativo crea una lista o tabla de paginas que controla los marcos utilizados por un proceso (habrá una tabla por cada proceso). También se llevara un control de los marcos libres mediante una tabla de marcos libres (una sola tabla).







Segmentación Simple

En el caso de la segmentación, el proceso y sus datos asociados se dividen en segmentos de tamaños diferentes pero teniendo en cuenta que existe un limite en los segmentos.
Consta de:
  • Un numero de segmento
  • Un desplazamiento
  • Segmentación Simple

Los procesos se dividen en segmentos de longitud variable pero con un máximo establecido
Los segmentos de un proceso no necesitan encontrarse contiguamente en memoria.

Los procesos suelen dividirse en 3 partes:

  • Segmento de código
  • Segmento de pila
  • Segmento de datos
Fragmentación interna

La fragmentación interna es la pérdida de espacio en disco debido al hecho de que el
tamaño de un determinado archivo sea inferior al tamaño del cluster, ya que teóricamente el
archivo estaría obligado a ser referenciado como un cluster completo. Los cluster(s) son
contiguos de forma que desde el último bit del archivo situado en el cluster "A" hasta el
primer bit del archivo situado en el cluster contiguo (es decir "B") queda un espacio sobrante
siempre teniendo la condición de que el archivo del cluster "A" fuera más pequeño que el
cluster en sí.

Fragmentación Externa

Este tipo de fragmentación aparece como consecuencia de las distintas políticas de ajuste de bloques que tiene un sistema de ficheros, o al utilizar asignaciones dinámicas de bloques en el caso de la memoria. En el sistema de ficheros, la sucesiva creación y eliminación de ficheros de distintos tamaños puede conducir al aislamiento de los bloques libres de un disco y, dependiendo de la política de ajuste, su no elección para futuros ficheros.





Compactación

Cuando un proceso llega y necesita memoria ,el sistema operativo busca en la tabla de huecos alguno lo suficiente 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 hueco .Cuando el proceso termina y la memoria es liberada , el espacio es identificado como un hueco mas en la tabla y si el nuevo hueco es adyacente con otro ,ambos huecos se unen formando un solo hueco más grande .En ese momento se debe de checar si no existen procesos a los que este nuevo hueco pueda darles cabida


Análisis 

El administrador de memoria se encargar de dividir el espacio existente en la PC para  que los procesos se ejecuten correctamente, de este modo el sistema operativo puede (dependiendo del procesador) ejecutar la multitarea.

Es importante entender como es, el proceso de distribución de la memoria de una computadora para así comprender, cuales serian las posibles fallas en caso de que las haya.

Las computadoras cuentan con varias memorias para poder cumplir con los requerimientos tanto del sistema operativo como el de él usuario.

El sistema Operativo simula ante el usuario que todos los procesos se ejecutan al mismo tiempo, pero en realidad el procesador y las memorias trabajan en conjunto para logran trabajar a gran velocidad y así cumplir con los requerimientos de los usuarios.

También cabe destacar que es importante a la hora de elegir cierta cantidad de memoria, saber cuales son las exigencias del usuario para así no exceder o limitar las computadoras.


WebGrafía





REPÚBLICA BOLIVARIANA DE VENEZUELA
MINISTERIO DEL PODER POPULAR PARA LA EDUCACIÓN SUPERIOR
I.U.T. RUFINO BLANCO FOMBONA
CÁTEDRA: SISTEMAS OPERATIVOS
FACILITADOR: CAROLINA LÓPEZ