martes, 28 de mayo de 2013

Conclusiones Finales


Conclusión exposiciones
con estas exposiciones cada uno de nosotros experimentó la labor de interiorizar cada
concepto una tarea nada fácil ya que cada uno de los grupos le fueron asignados temas con un
nivel considerable de complejidad, sobre todo conceptos muy técnicos que requieren de gran
esfuerzo para poderlos comprender. Cada uno de nosotros como expositor experimento en un
sentido lo que es dar conceptos y que dichos conceptos se han comprendidos por la audiencia
una labor compleja pero que contribuye para un crecimiento personal ya que de una forma
aporta en el desarrollo de herramientas de expresión oral . De una manera muy personal creo
que una buena manera de apropiarse de un tema,es una prueba que enriquece el aprendizaje, y
aprender es crecer:
                                                       Conclusion  del Curso
de manera general cabe resaltar el trabajo realizado por el profesor,ya que a través de una
metodología de enseñanza mediante el uso de herramientas tecnológicas el uso del blog que
nos permite participar de manera activa dinámica e innovadora de los contenidos de la materia.
es una metodología interesante y atractiva.Personalmente creo que la clase fue muy
participativa durante el semestre y que los temas abordados en cada clase quedaron
plasmados por cada uno de nosotros los estudiantes en una herramienta tan popular como lo
es el blog.

lunes, 27 de mayo de 2013

Nuestra Expo

Conjunto Residente




Con memoria virtual paginada no es necesario y, puede no ser posible, traer todas las páginas de un proceso a la memoria principal para preparar su ejecución. El sistema operativo debe decidir cuantas paginas traer, es decir, cuanta memoria principal asignar a un proceso. Aquí entran en juego varios factores:


*Cuanto menor es la cantidad de memoria asignada a un proceso, mayor es el número de procesos que pueden estar en la memoria principal. Esto aumenta la probabilidad de que el sistema operativo encuentre al menos un proceso Listo y, por lo tanto, reduzca el tiempo perdido en el intercambio.



*Si en la memoria principal hay un número relativamente pequeño de paginas de un proceso entonces a pesar del principio de cercanía, el porcentaje de fallos de pagina será algo mayor.


*La asignación de memoria adicional a un proceso en particular no tendrá efectos notables en el porcentaje de fallos de pagina para ese proceso debido al principio de cercanía.Con estos factores en los sistemas operativos actuales se pueden encontrar con dos tipos de políticas. La política de asignación fija otorga a cada proceso un número fijo de paginas en las que ejecutar. Con una política de asignación fija, cada vez que se produce un fallo de pagina en la ejecución de un proceso, se debe reemplazar una de las paginas de dicho procesador la pagina que se necesite.La política de asignación variable permite que el núcleo de marcos asignados a un proceso cambie a lo largo de su vida.La política de asignación variable parece ser la mas potente. La dificultad de este método esta en que requiere que el sistema operativo evalué el compartimiento de los procesos activos.

.......SOFTWARE DEL SISTEMA OPERATIVO



Usada menos recientemente (LRU, Last Recently  Used): reemplaza la página de memoria que no ha sido referenciada desde hace más tiempo. Debido al principio de cercanía esta debería ser la página con menor probabilidad de ser referenciada en un futuro cercano. El problema de este método es su dificultad de implementación. Una solución sería etiquetar cada página con el momento de su última referencia; tanto para instrucciones como datos. Este esquema produce sobrecarga


 Primera en entrar, primera en salir (FIFO, First In First Out): trata los marcos asignados a un proceso como un buffer circular y las páginas se suprimen de la memoria según la técnica de Round-Robin. Lo que se necesita es un puntero que circule a través de los marcos del proceso. Esta es una de las políticas de reemplazo más sencillas de implementar. Se reemplaza la página que a estado más tiempo en la memoria, teniendo como desventaja que habrá regiones del programa o de datos que son muy usadas a lo largo de la vida de un programa por lo cual estas páginas se cargarán y expulsarán repetidas veces.


Reloj (Clock):  requiere asociar un bit adicional a cada marco, denominado ‘bit de uso’. Cuando se carga una página por primera vez el bit de uso se pone a cero. Cuando se hace referencia a la página posteriormente, el bit de uso se pone a uno. Para el algoritmo de reemplazo de páginas, el conjunto de marcos candidatos a ser reemplazados se considera como un buffer circular con un puntero asociado. Al reemplazar una página, se hace que el puntero señale a la primer puntero del buffer. Cuando llega el momento de reemplazar una página, el S.O. recorre el buffer buscando un marco con el bit de uso a cero. Cada vez que se encuentra un marco con el bit de uso a uno, lo pone a cero. Si algún marco del buffer tiene el bit de uso a cero, al comienzo de la búsqueda, se elige para reemplazar el primero que se haya encontrado. Si todo los marcos tienen el bit de uso a uno, el puntero dará una vuelta completa al buffer, poniendo todos los bits a cero y se detendrá en la posición inicial, reemplazando la página de dicho marco.

SOFTWARE DEL SISTEMA OPERATIVO

SOFTWARE DEL SISTEMA OPERATIVO

El diseño del gestor de memoria en un sistema operativo depende de tres áreas fundamentales de decisión:
Si se emplean o no técnicas de memoria virtual.
El uso de paginación, segmentación o ambas.
Los algoritmos empleados para los problemas de la gestión de memoria
.
Políticas de Ubicación
Tiene que ver con determinar dónde va ha residir una parte de un proceso en la memoria principal. Es un aspecto importante del diseño en un sistema puro de segmentación.
Como posibles alternativas se tiene:
-Políticas del mejor ajuste.
-Políticas del primer ajuste
-entre otras.

Políticas de Remplazo
Trata de la selección de la página a reemplazar en la memoria principal cuando se debe cargar una nueva página. Esto resulta difícil de explicar por lo que se debe tener en cuenta algunos conceptos interrelacionados como ser:
 - El numero de marcos de página a asignar a cada proceso activo.
 -Si el conjunto de páginas a considerar para el reemplazo debe limitarse a las del proceso           que provocó el fallo de página o abarcar todos los marcos de página situados en la memoria principal.
-De entre el conjunto de páginas consideradas, cuál es la página específica que debe elegirse para el reemplazo.

Algoritmos basicos
Los algoritmos que se emplean para seleccionar una página a reemplazar son las siguientes:
Óptima: selecciona para reemplazar la página que tiene que esperar más tiempo hasta que se produzca la referencia siguiente. Esta política genera el menor número de fallos de página. Este algoritmo resulta imposible de implementar ya que requiere que el S. O. Tenga un conocimiento exacto de los sucesos futuros.

....Continuamos Paginacion Segmentacion




Segmentación de Memoria.
La Segmentación de memoria es un esquema de manejo de memoria mediante el cual la estructura del programa refleja su división lógica;llevándose a cabo una agrupación lógica de la información en bloques de tamaño variable de nominados segmentos.

Cada uno de ellos tienen información lógica del
programa: subrutina, arreglo, etc. Luego, cada espacio de direcciones de programa consiste de una colección de segmentos, que generalmente reflejan la división lógica del programa

Objetivos
Modularidad de programas: cada rutina del programa puede ser un bloque sujeto a cambios y
recopilaciones, sin afectar por ello al resto del programa.
Estructuras de datos de largo variable: donde cada estructura tiene su propio tamaño y este puede variar.

Protección: se puede proteger los módulos del segmento contra accesos no autorizados.
Compartición: dos o más procesos pueden ser un mismo segmento, bajo reglas de protección; aunque no sean propietarios de los mismos.
Enlace dinámico entre segmentos: puede evitarse realizar todo el proceso de enlace antes de comenzar a ejecutar un programa. Los enlaces se establecerán solo cuando sea necesario.

Paginación y Sementacion

Paginación :Cuando ejecutamos un programa este puede caber o no en la memoria física, si se da la situación de que el proceso es mayor que la memoria, el SO se encarga de mantener en memoria las partes del programa que estamos usando y el resto en el disco duro.

Pues bien, la técnica llamada ‘paginación’ se encarga del intercambio de información entre nuestra memoria y el disco duro cuando tiene que pasar información de la memoria al disco duro debido a lo comentado antes, que no hemos cargado el programa entero.

El espacio de direcciones virtuales se divide en unidades llamadas “páginas”. Las unidades correspondientes en el disco duro se denominan “marcos de página”. Las páginas y los marcos tienen el mismo tamaño.
Fallo de pagina: es lo que se conoce  cuando una pagina no se encuentra referenciada con ninguna dirección física de la memoria 
cuando se produce un fallo de página, el SO examina todas las páginas y las divide en cuatro grupos dependiendo del estado de sus bits R (página solicitada) y M (página modificada).

Existen diversos algoritmos para decidir que página desalojar, los cuales son…
NRU (Not Recently Used, No Usada Recientemente), se desaloja al azar una página de Clase baja que no esté vacía. Este algoritmo presupone que es mejor desalojar una página modificada pero no solicitada en un tic de reloj (20 ms), a una limpia que se esté usando mucho. NRU es fácil de entender, tiene una implementación aceptable y un desempeño eficiente, aunque no es óptimo.
FIFO (First In, First Out – primero en entrar primero en salir), el SO mantiene una lista de todas lás áginas existentes, desde la más antigua hasta la más nueva, cuando se produce el fallo, se desaloja la primera de a lista (la más antigua) y la nueva se coloca al final.
por nombrar algunos hay otros mas como son de tipo reloj, LRU.

Memoria virtual y Principio de Cercania

MEMORIA VIRTUAL
La memoria virtual es una técnica para proporcionar la simulación  de  un  espacio de  memoria mucho mayor que la memoria física de una máquina. Esta "ilusión" permite que los programas se hagan sin tener en cuenta el tamaño exacto de la memoria física.
La memoria virtual también simplifica la carga del programa para su ejecución llamado reubicación, este procedimiento permite que el mismo programa se ejecute en cualquier posición de la memoria física. 
 En un estado estable, prácticamente toda la memoria principal estará ocupada con fragmentos de procesos, por lo que el procesador y el S.O tendrán acceso directo a la mayor cantidad de procesos posibles, y cuando el S.O traiga a la memoria un fragmento, deberá expulsar otro. Si expulsa un fragmento justo antes de ser usado, tendrá que traer de nuevo el fragmento de manera casi inmediata. Demasiados intercambios de fragmentos conducen a lo que se conoce como hiperpaginación: donde el procesador consume más tiempo intercambiando fragmentos que ejecutando instrucciones de usuario. Para evitarlo el S.O intenta adivinar, en función de la historia reciente, qué fragmentos se usarán con menor probabilidad en un futuro próximo.
principio de cercanía o PRINCIPIO DE LOCALIDAD que afirma que las referencias a los datos y el programa dentro de un proceso tienden a agruparse.
      

Particiones Fijas Y Dinamicas

Partición: Es el nombre que recibe cada una de las divisiones en una sola unidad física de almacenamiento de datos dándole a cada partición un propio sistema de archivo llamado formato, la gran mayoría de los sistemas operativos reconocen, utilizan y manipulan a una partición como un disco físico independiente sabiendo que están en un solo disco físico. Particiones fijas:Con la creación de estas particiones se comienza a ver la multiprogramación, una partición fija por cada tarea, el tamaño de la partición se daba al arrancar el sistema cada partición se podía reconfigurar al volver encender o reiniciar el sistema. con estas particiones nos aparece la fragmentación interna. 
ALGORITMO DE UBICACIÓN: Si se llega a tener alguna partición libre un proceso se puede cargar en esta y si se llega a tener todas las particiones llenas se saca un proceso que no esté listo para ejecutarse para que el proceso que se va a ejecutar pase a tomar su lugar dentro de la 
partición.

  
 imagen tomada (http://exa.unne.edu.ar/depar/areas/informatica/SistemasOperativos/SO3.htm)

Particiones dinámicas:Con esta partición, las particiones 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.

ALGORITMO DE UBICACION
Mejor ajuste: Elije el bloque de tamaño más próximo al solicitado
Primer ajuste: Recorre la memoria desde el principio y escoge  el primer bloque disponible que sea suficientemente grande
Siguiente ajuste: Es igual que el primer ajuste con la diferencia que se deja un apuntador en el lugar en donde se asignó el último hueco para realizar la siguiente búsqueda a partir de él.

Corrección segundo parcial

Ejercicio politicas planificacion