domingo, 15 de marzo de 2015

Paginacion

La paginación es una estrategia de organización de la memoria que consiste en dividir la memoria en porciones de igual tamaño, a dichas porciones se las conoce como marcos de página o simplemente como páginas. Las páginas están definidas por un número de página, que identifica de forma única a cada página (dentro del espacio de memoria de un proceso). Cada página se asigna en exclusividad a una tarea que esta de igual manera se pagina.



Segmentacion

La segmentación es la división lógica de las tareas, la tarea se segmenta y el segmento se pagina, esto funciona o se ve principalmente en programas como un reproductor de música no se ejecuta todo el programa sino el inicio y si se necesita se llama el resto del programa.

Paginacion por demanda

La paginación por demanda es un sistema de paginación con el cual, además de las ventajas de la paginación convencional, se busca disminuir los tiempos de respuesta y aumentar la cantidad de programas en memoria. Para lograr estos objetivos se hace uso de un intercambiador perezoso (llamado paginador) el cual carga a memoria solo las páginas que serán utilizadas por el programa en ejecución, de esta manera se logra un menor tiempo de carga y un ahorro en cuanto a espacio utilizado por dicho programa, ya que, por un lado, no necesitamos que todo el programa este en memoria para comenzar su ejecución mientras que, por otra parte, al no estar el programa completo en memoria, disminuimos considerablemente el espacio que éste ocupa.
Ya que el paginador solo busca las páginas que se necesitan para ejecutar algún programa, debemos agregar un bit que nos diga si las referencias de memoria son válidas o no, de lo contrario, al no encontrar una página no podríamos diferenciar si el paginador aún no la carga o si esta es realmente una referencia inválida.

El proceso que se sigue es el siguiente:
-Se intenta leer la página requerida
-Si la página requerida ya esta en memoria, simplemente se lee.
-Si no está en memoria, revisa si la referencia es válida.
-Si la referencia es inválida, se aborta.
-Si la referencia es válida, se intenta cargar la página.
-Cuando la página sea cargada, se reintenta la instrucción.




Memoria de particiones dinámicas y dinámicas re localizables

Las particiones dinámicas son variables en número y longitud, esto quiere decir que cuando se carga un proceso a memorial principal se le asigna el espacio que necesita en memoria y no más. Esta partición comienza siendo muy buena pero en el trascurso de uso deja un gran número de huecos pequeños en la memoria lo cual se le denomina fragmentación externa y la memoria se comienza a comportar como fija ya que el espacio asignado por la anterior tarea no cambia si no queda igual.



Técnicas de Asignación de memoria

1er Ajuste
Se encarga de particionar la memoria y llenar de manera rápida la memoria, es un ajuste de rapidez

Mejor ajuste
Se encarga de poner las tareas en mejores espacios por lo cual proporcionando que la memoria tenga muy poca fragmentacion, es un ajuste de optimista  

peor ajuste
Asigna tareas muy pequeñas en espacios muy grandes, usado para tener precisión, se utilizo en el lenguaje falscran en el viaje a la luna.

Siguiente ajuste
Se asigna una tarea, la siguiente tarea a asignar se evalúa desde la siguiente partición a la tarea anterior no desde el inicio de la memoria


Casos de eliminación

Las tareas al terminar su proceso de memoria y al salir en dinámicas ocurren tres casos

1-- Entre 2 espacios ocupados: 1 libre

2- Entre 1 espacio ocupado y 1 vació: une  2 particiones

3- Entre dos espacios de memoria Vacíos: une 3 particiones

Dinámicas re localizables

El administrador de memoria re localizar los programas para reunir los bloques vacíos y los compacta para hacer un bloque de memoria lo bastante grande, lo que permite que la fragmentacion externa se elimine entre tareas lo que da un mejor funcionamiento a la memoria, menor fragmentacion mas espacios para tareas.

Este proceso se ejecuta por 3 razones
1-Tiempo
2-% de memoria
3- Tareas en cola







Memoria de Particiones fijas

La creación de las particiones fijas trago consigo una gran evolución al diseño de la memorias ya que estas particiones permitían ingresar mas tareas en cada fragmento de la memoria lo que evoluciona o trajo el termino multi tarea, una sola partición fija  de un tamaño predeterminado realizaba una tarea y estos tamaños se podían asignar cuando se reiniciaba el sistema pero durante su ejecución no se pueden cambiar, si la tarea no cumplía el tamaño establecido se mandaba a la cola o si se quería realizar se necesitaba reiniciar el sistema para asignar un espacio mas grande, y con esto trajo el termino "fragmentacion" que  es el espacio de memoria que no utiliza la tarea en el recuadro o espacio de memoria asignado.


Memoria de un solo usuario

La memoria de un solo solo usuario  lo que permitía que una sola tarea entrara en el espacio total de la memoria, pero si la tarea supera el tamaño de la memoria esto quedaba en cola, esto se veía principalmente en tiempos antiguos donde la memoria era muy pequeña y las tareas eran unitarias.


Tipos de Memoria

Memoria RAM

La memoria RAM es la memoria principal de la computadora, donde residen programas y datos, sobre la que se pueden efectuar operaciones de lectura y escritura.
La sigla RAM en inglés significa “Random Access Memory” y se traduce como “Memoria de Acceso Aleatorio”, la característica diferencial de este tipo de memoria es que se trata de una memoria volátil, es decir, que pierde sus datos cuando deja de recibir energía. Típicamente, cuando el ordenador es apagado

Memoria ROM

La memoria Rom es aquella que sirve de solo lectura, esto quiere decir solo sirve para guardar información mas no efectuar procesos y demás.


Memoria Cache

Es una memoria auxiliar de la RAM que su función es básicamente mantener de manera temporal y accesible aquellos datos que son requeridos para realizar determinadas funciones o tareas. Esta disponibilidad permite que cada programa o archivo tenga inmediato acceso a la información necesaria y pueda así dedicarse a subir el nivel de eficiencia de las funciones normales.


Memoria Virtual

La memoria virtual combina la RAM del equipo con espacio temporal en el disco duro. Cuando queda poca RAM, la memoria virtual mueve datos de la RAM a un espacio llamado archivo de paginación. Al mover datos al archivo de paginación y desde él, se libera RAM para que el equipo pueda completar la tarea.





Sistema Operativo

El sistema operativo es el programa (o software) más importante de un ordenador. Para que funcionen los otros programas, cada ordenador de uso general debe tener un sistema operativo. Los sistemas operativos realizan tareas básicas, tales como reconocimiento de la conexión del teclado, enviar la información a la pantalla, no perder de vista archivos y directorios en el disco, y controlar los dispositivos periféricos tales como impresoras, escáner, etc.




Procesos
Crea y elimina procesos del usuario y/o del sistema, suspende sincroniza y reanuda procesos, donde también le asigna a estos un espacio de ejecución en la memoria RAM.
Memoria principal
Se encarga del seguimiento de espacio y direcciones asignadas a las aplicaciones  o procesos abiertos y decir que procesos se pueden ejecutar o no.
Archivos
Se encarga de crear y eliminar archivos, directorios y de igual manera manipularlos para guardarlos en la memoria o lugar deseado en el sistema.
 Almacenamiento secundario
El almacenamiento primario es la memoria RAM y el secundario son discos locas o externos y el sistema se encarga de manera para donde se manejan los procesos y archivos y decir donde se guardan
Sistema de entrada y salida
Se encargar del manejo de periféricos como mouse, teclado, impresoras y que no halla conflicto entre ellos.
Redes
Permite reunir sistemas físicamente separados y heterogéneos en un solo sistema "coherente"
Protección
Mecanismo para controlar el acceso de programas, procesos o usuarios a los recursos de un sistema de computador
Interprete
Interfaz entre el usuario y el sistema operativo, con lo cual el usuario manda órdenes y el sistema lo puede entender.