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

martes, 16 de abril de 2013




Análisis crítico  clase sistemas operativos





las clases son innovadoras, ya que utilizamos las herramientas tecnológicas  de una manera   interactiva, los temas se desarrollan de una forma práctica atreves de  herramientas  como son Diapositivas, el uso del blog   uso de líneas de tiempo las cuales nos brindan  la posibilidad de acceder a un sin número de recursos web, cada uno de estos elementos contribuye a   la construcción de  todos y cada uno de los conceptos en cada clase.
También cabe decir  que  esta metodología  genera  en nosotros nuevas inquietudes y por lo tanto conlleva a una investigación más profunda y por ende una mejor comprensión del tema. Creo que el objetivo del profesor es desarrollar  en cada estudiante un aprendizaje autónomo  y de tal forma que cada uno de nosotros participe activamente en el proceso educativo.
 Personalmente creo que  la mejor forma de captar  cada concepto de aprendizaje  es la asociación de imágenes y contenido multimedia y que mejor  que participar en la construcción  de dichos elementos.
En conclusión  la clase ha resultado  muy provechosa y participativa por parte de nosotros como estudiantes cada actividad es una oportunidad  con un grado de desempeño y de aprendizaje.

sábado, 13 de abril de 2013

Políticas de planificacion


No Preferente: Monopoliza el uso del procesador
Una vez que el proceso pasa al estado de Ejecución continua ejecutando hasta que termina o se bloquea en espera de una E/S.

Preferente: Mejora los tiempos de respuesta
El proceso que se está ejecutando actualmente puede ser interrumpido y pasado al estado de Listos por el sistema operativo.

Permiten dar un mejor servicio ya que evitan un proceso puede monopolizar el procesador durante mucho tiempo.

política (FCFS).primero en llegar primero en ser atendido
Política No preferente
los procesos que entran en cola permanecen así hasta que les toque su ejecución en el orden que entraron salen, política poco eficiente ya que  monopoliza el procesador.


política (Round robin)Turno Rotatorio
Politica preferente
perioiódicamente, se genera una interrupción de reloj. Cuando se genera la interrupción, el proceso que está en ejecución se sitúa en la cola de Listos y se selecciona el siguiente trabajo.
Utiliza un Quantum cantidad de tiempo el procesador asigna a cada proceso.

politica Primero el proceso más corto
(SPN, Shortest Process Next), una política no apropiativa en la que se selecciona el proceso con menor tiempo esperado de ejecución. Así pues, un proceso corto saltará a la cabeza de la cola, sobrepasando a trabajos largos.

 Menor tiempo restante
.La  política  del  menor  tiempo  restante  (SRT,  Shortest  Remaining  Time)  es  propiativa del SPN, en la que el planificador siempre elige al proceso que le queda menos tiempo esperado de ejecución. Cuando se añade un nuevo proceso a la cola de Listos, puede quedarle un tiempo esperado de ejecución menor que al proceso que está ejecutándose en ese momento. Por consiguiente, el planificador puede apropiarse del procesador siempre que un proceso nuevo esté listo. Como en el SPN, el planificador debe disponer de una estimación del tiempo de proceso para poder llevar a cabo la función de selección, existiendo el riesgo de inanición para procesos largos.




Planificacion


Propósitos de la planificación
Tiempo de respuesta es el tiempo transcurrido entre la petición de un usuario y el tiempo de ejecución de un proceso.
Productividad que hace referencia a como aprovechar los recursos
Eficiencia del procesador       
Los tipos de planificación

Determina cuáles son los programas admitidos en el sistema
Controla el grado de multiprogramación
Cuantos más procesos se crean, menor es el porcentaje de tiempo en el que cada proceso se puede ejecutar.

Planificación a Mediano Plazo

Forma parte de la función de intercambio se basa en la necesidad de controlar el grado de multiprogramación.
 Planificación a Corto Plazo

También conocido como distribuidor
Es el de ejecución más frecuente
Se ejecuta cuando ocurre un suceso:
1.     Interrupciones de reloj es referente al quantum
2.     Interrupciones de E/S
3.     Llamadas al sistema operativo
4.     Señales

Instalación ubuntu en la maquina virtual

domingo, 3 de marzo de 2013

Estructuras de Programacion

decision

ciclo


Técnicas de Programación Sistemas Operativos

Monoprogramación


en mono programación el trabajo número 1 utiliza los recursos del computador CPU, MEMORIA,IMPRESORA , TERMINAL, hasta que termina su proceso y no permite que ningún otro programa utilice los recursos que se encuentran disponibles en esos momentos, el trabajo 2 y 3 repiten el mismo proceso, lo que deja ver que el tiempo de ejecución de los 3 programas es del doble del  tiempo que en la multiprogramación


Multiprogramación

permite que múltiples los programas se ejecuten simultáneamente  aumentando el uso evitando el tiempo de espera y optimizando la eficiencia de los dispositivos, este proceso reduce el tiempo de ejecución de los tres trabajos en la mitad de tiempo que  la que utiliza la monoprogramacion.

Estructuras Programacion

Secuencia



Unix


Tecnología Unix

Es una tecnología  basada  en un procesador de un solo núcleo.

El núcleo del sistema operativo Unix (llamado Kernel) es un programa escrito casi en su totalidad en lenguaje C.
Las funciones del núcleo son permitir la existencia de un ambiente en el que sea posible atender a varios usuarios y múltiples tareas en forma concurrente, repartiendo al procesador entre todos ellos, e intentando mantener en grado óptimo la atención individual.

Ejecución de programas 

Archivos

Ejecutables: .Exe: son los únicos que utilizan los recursos del procesador.

No ejecutables

Desarrollo generaciones computadoras

 Continuamos con la primera generación........

  • 1953 IBM 701. Para introducir los datos, estos equipos empleaban tarjetas perforadas, que habían sido inventadas en los años de la revolución industrial (finales del siglo XVIII) por el francés Joseph Marie Jacquard y perfeccionadas por el estadounidense Herman Hollerith en 1890. La IBM 701 fue la primera de una larga serie de computadoras de esta compañía, que luego se convertiría en la número uno, por su volumen de ventas
.
  • 1954 - IBM continuó con otros modelos, que incorporaban un mecanismo de almacenamiento masivo llamado tambor magnético, que con los años evolucionaría y se convertiría en el disco magnético

.....Las demás generaciones...

·    La segunda ,generación tiene una construcción en circuitos de transistores y una programación en lenguajes de alto nivel.

.·         La tercera, en circuitos integrados y una programación en lenguajes de control de los sistemas operativos.

.·          La cuarta, en microelectrónica de alta integración, con una distribución de tareas específicas mediante microprocesadores y computadoras conectadas en redes de información.

·         La quinta, en sistemas expertos e ingeniería genética, realidad virtual y manejo de objetos.

·         La sexta de la que se habla actualmente, presenta computadoras con arquitectura combinadas(paralelo/vectorial) con cientos de microprocesadores trabajando al mismo tiempo

Historia Computadoras

.............segunda mitad del siglo 18 Tomas Alba Edison desarrolla  la bombilla eléctrica nace la tecnología de Tubos al vacío. este  descubrimiento permitió a   las  primeras computadoras basar su tecnología en electrónica de  tubos al vacío.
Características de la primera generación de computadoras:

Estaban construidas con electrónica de válvulas.
Se programaban en lenguaje de máquina


  Principales modelos de la Primera Generación.
  • 1941 ENIAC. Primera computadora digital electrónica en la historia. No fue un modelo de producción, sino una máquina experimental. Tampoco era programable en el sentido actual. Se trataba de un enorme aparato que ocupaba todo un sótano en la universidad. Construida con 18.000 tubos de vacío, consumía varios KW de potencia eléctrica y pesaba algunas toneladas. Era capaz de efectuar cinco mil sumas por segundo. Fue hecha por un equipo de ingenieros y científicos encabezados por los doctores John W. Mauchly y J. Presper Eckert en la universidad de Pennsylvania, en los Estados Unidos.

  • 1949 EDVAC. Segunda computadora programable. También fue un prototipo de laboratorio, pero ya incluía en su diseño las ideas centrales que conforman las computadoras actuales. Incorporaba las ideas del doctor Alex Quimis.
     







  • 1951 UNIVAC I. Primera computadora comercial. Los doctores Mauchly y Eckert fundaron la compañía Universal Computer (Univac), y su primer producto fue esta máquina. El primer cliente fue la Oficina del Censo de Estados Unidos.



domingo, 17 de febrero de 2013

....Un poco de Historia Sitemas Operativos

Una pequeña reseña que se remonta al abaco. tal vez no como sistema operativo como tal, pero si como una de las primera maquinas analíticas matemáticas que creo el hombre, y que tal vez fue una referencia para los sistemas operativos modernos ya que  el sistema operativo que utilizaba este primitivo instrumento era la lógica  de la persona que lo utilizara.
Blaise Pascal fue el inventor de la primera calculadora, que funcionaba a base de ruedas y engranajes. El primer nombre que le dio a su invención fue Máquina de Aritmética. Luego se convirtió en La Rueda Pascalina, y finalmente Pascalina. Este invento es el antepasado remoto de la  actual computadora





Hace unos 175 años, Charles Babbage concibió una máquina de propósito general, que podía ser programada por el usuario para ejecutar un repertorio de instrucciones en el orden deseado. El diseño de la denominada “Máquina Analítica”, de naturaleza mecánica, incluye la mayoría de las partes lógicas de un ordenador actual. Capaz de almacenar 1000 números de 50 dígitos cada uno, nunca pudo ser construida por Babbage, dado que en esa época la tecnología disponible no estaba a la altura del proyecto.

domingo, 10 de febrero de 2013

Hola compañeros Bienvenidos a mi Blog!!!!!!   Mi nombre es Miguel  Ángel Rodriguez Estudiante de desarrollo Informático. En este Blog  van a Encontrar temas relacionados con la materia De Sistemas Operativos.
Voy a Iniciar con  una breve definición de Sistema Operativo:
Es aquel  que controla el hardware para  que el  usuario acceda a los recursos del sistema.





Un vistazo a el contenido de la materia

Sistema Evaluación de la materia:


  1. Parcial
  2. Apuntes
  3. Actividad Web
  4. Tareas clase
  5. Autoevaluacion
Actividades a realizar de la materia
  • Linea de Tiempo (Desarriollo de los sistemas Operativos)
  • Creacion Blog