martes, 26 de abril de 2016

actividad 2

investigar los mecanismos y funciones de los manejadores de dispositivos.

Funciones de los manejadores de dispositivos

Funciones generalmente realizadas por el software independiente del dispositivo:
·         Interfaz uniforme para los manejadores de dispositivos.

·         Nombres de los dispositivos.
·         Protección del dispositivo.
·         Proporcionar un tamaño de bloque independiente del dispositivo.
·         Uso de buffer.
·         Asignación de espacio en los dispositivos por bloques.
·         Asignación y liberación de los dispositivos de uso exclusivo.
·         Informe de errores.

Las funciones básicas del software independiente del dispositivo son:

·         Efectuar las funciones de e / s comunes a todos los dispositivos.
·         Proporcionar una interfaz uniforme del software a nivel usuario.

El software independiente del dispositivo asocia los nombres simbólicos de los dispositivos con el nombre adecuado.
Un nombre de dispositivo determina de manera única el nodo-i de un archivo especial:
·         
     Este nodo-i contiene el número principal del dispositivo, que se utiliza para localizar el manejador apropiado.
·      
   El nodo-i contiene también el número secundario de dispositivo, que se transfiere como parámetro al manejador para determinar la unidad por leer o escribir.

El software independiente del dispositivo debe:
·         Ocultar a los niveles superiores los diferentes tamaños de sector de los distintos discos.

·         Proporcionar un tamaño uniforme de los bloques, por ej.: considerar varios sectores físicos como un solo bloque lógico.


actividad 1.

investiga cuales son los dispositivos y manejadores de dispositivos mediante conceptos e imagenes.

Dispositivos de entrada/salida
Se pueden clasificar en dos grandes categorías:
1.    Dispositivos de bloque: dispositivo que almacena la información en bloques de tamaño fijo.

Fig. 4.1 unidad de disco
2.    Dispositivos de carácter: envía o recibe un flujo de caracteres, sin apegarse a una estructura de bloques

Fig.4.2 impresora, dispositivo de carácter
 Las principales características de los dispositivos de bloque son:
- La información se almacena en bloques de tamaño fijo.
- Cada bloque tiene su propia dirección.
- Los tamaños más comunes de los bloques van desde los 128 bytes hasta los 1.024 bytes.
- Se puede leer o escribir en un bloque de forma independiente de los demás, en cualquier momento.
- Un ejemplo típico de dispositivos de bloque son los discos.
      Las principales características de los dispositivos de carácter son:
-La información se transfiere como un flujo de caracteres, sin sujetarse a una estructura de bloques.
- No se pueden utilizar direcciones.
- No tienen una operación de busqueda.
- Unos ejemplos típicos de dispositivos de carácter son las impresoras de línea, terminales, interfaces de una red, ratones, etc.

Manejador de dispositivos

4.3 Fig. ejemplo de manejador de dispositivo

Funciones de los manejadores de dispositivos
Funciones generalmente realizadas por el software independiente del dispositivo:
  • Interfaz uniforme para los manejadores de dispositivos.
  • Nombres de los dispositivos.
  • Protección del dispositivo.
  • Proporcionar un tamaño de bloque independiente del dispositivo.
  • Uso de buffer.
  • Asignación de espacio en los dispositivos por bloques.
  • Asignación y liberación de los dispositivos de uso exclusivo.
  • Informe de errores.
Las funciones básicas del software independiente del dispositivo son:
  • Efectuar las funciones de e / s comunes a todos los dispositivos.
  • Proporcionar una interfaz uniforme del software a nivel usuario.
El software independiente del dispositivo asocia los nombres simbólicos de los dispositivos con el nombre adecuado.
Un nombre de dispositivo determina de manera única el nodo-i de un archivo especial:
  • Este nodo-i contiene el número principal del dispositivo, que se utiliza para localizar el manejador apropiado.
  • El nodo-i contiene también el número secundario de dispositivo, que se transfiere como parámetro al manejador para determinar la unidad por leer o escribir.
El software independiente del dispositivo debe:
  • Ocultar a los niveles superiores los diferentes tamaños de sector de los distintos discos.
  • Proporcionar un tamaño uniforme de los bloques, por ej.: considerar varios sectores físicos como un solo bloque lógico.




http://sistemasoperativos.angelfire.com/html/4.1.html

martes, 12 de abril de 2016

Administrador de memoria

Se refiere a los distintos métodos y operaciones que se encargan de obtener la máxima utilidad de la memoria, organizando a los procesos y programas que se ejecutan de tal manera tal que se aproveche de la mejor manera posible el espacio disponible. (insertar imagen)

Esquemas de administrador de memoria.


*administración de la memoria sin intercambio o paginacion
*MONOPROGRAMACION sin intercambio de paginacion
*multiprogram con con particiones fijas.
*intercambio
*multiprogramacion  con particiones variables.
*memoria virtual.
*paginacion .
*algoritmos de remplazo de páginas .
*algoritmo de remplazo de páginas óptimos
*algoritmo de página de uso no muy reciente
*algoritmo  de remplazo " primero en entrar, primero en salir FIJO.
*algoritmo de remplazo de páginas de la segunda oportunidad
*algoritmo de remplazo de páginas de reloj.
*segmentacion


filosofia:
la memoria principal de puede ser considerada como un arreglo lineal de localidades de almacenamiento de un byte de tamaño. cada localidad de almacenamiento tiene asignada una direccion que la identifica.

una de las funciones basicas que de debe almacenar un S.O. es la adminitracion de la memoria para tener el control sobre los lugares donde estan almacenados los procesos y datos que actualmente se están utilizando

NOTA: sea cual sea el esquema de organizacion de almacenamiento que se adopte para un sistema especifico, es necesario decidir que estrategias se deben utilizar para obtener un rendimiento optimo .

martes, 5 de abril de 2016

tecnicas de administracion del planificador

Las disciplinas de planificación pueden ser:• Expropiativas• No expropiativas


Se denomina planificador al software del sistema operativo encargado de asignar los recursos de un sistema entre los procesos que los solicitan. Siempre que haya tomar una decisión, el planificador debe decidir cuál de los procesos que compiten por la posesión de un determinado recursos lo recibirá.



FIFO: First In First Out

Mecanismo de scheduling en el cual los procesos se ordenan en una fila, en la cual se ejecutan cada uno de los procesos hasta su finalización secuencialmente. Es tremendamente ineficiente. Cuando se tiene que elegir a qué proceso asignar la CPU se escoge al que llevara más tiempo listo. El proceso se mantiene en la CPU hasta que se bloquea voluntariamente.
El sistema debe reservar el tamaño de memoria necesario para acoger todos los datos, sea cual sea el número de elementos usados, lo que en algunas aplicaciones supone un despilfarro de la memoria.
Tiene dos punteros:
1. Puntero de Lectura/Registro de Dirección de Lectura
2. Puntero de Escritura/Registro de Dirección de Escritura



SJF


Al igual que en el algoritmo FIFO las ráfagas se ejecutan sin interrupción, por tanto, sólo es útil para entornos batch. Su característica es que cuando se activa el planificador, éste elige la ráfaga de menor duración. Es decir, introduce una noción de prioridad entre ráfagas.

Hay que recordar que en los entornos batch se pueden hacer estimaciones del tiempo de ejecución de los procesos. La ventaja que presenta este algoritmo sobre el algoritmo FIFO es que minimiza el tiempo de finalización promedio, como puede verse en el siguiente ejemplo:
Supongamos que en un momento dado existen tres ráfagas listos R1, R2 y R3, sus tiempos de ejecución respectivos son 24, 3 y 3 ms. El proceso al que pertenece la ráfaga R1 es la que lleva más tiempo ejecutable, seguido del proceso al que pertenece R2 y del de R3.





Rr


Cada proceso tiene asignado un intervalo de tiempo de ejecución, llamado quantum o cuanto. Si el proceso agota su quantum de tiempo, se elige a otro proceso para ocupar la CPU. Si el proceso se bloquea o termina antes de agotar su quantum también se alterna el uso de la CPU.

El round robín es muy fácil de implementar. Todo lo que necesita el planificador es mantener una lista de los procesos listos.


 
QuevesMultilevel


Un algoritmo de planificación multinivel particiona la cola de listos en colas separadas. Se asignan en forma permanente los trabajos a una cola, generalmente, basándose en alguna propiedad del mismo (requerimientos de memoria, tipo de trabajo), teniendo cada cola su propio algoritmo. Por ejemplo, la cola interactiva podría planificarse usando RR y la batch FIFO.

Ningún trabajo en una cola de baja prioridad puede ejecutarse si las colas con mayor prioridad no están vacías. Si algún trabajo entra en una cola de mayor prioridad, el trabajo de otras colas es interrumpido.

 


MultiLevel Feedback Queves


En colas multinivel realimentadas los trabajos pueden moverse dentro de distintas colas. La idea es separar procesos con distintos tipos de interrupciones de la CPU. Si un trabajo consume mucho tiempo de CPU, será movido a una cola con menor prioridad.
En forma similar, si un proceso espera demasiado tiempo en una cola de baja prioridad, lo moveremos a una cola de mayor prioridad.

En general un planificador de este tipo esta definido por los siguientes parámetros:

1. El número de colas.
2. El tipo de algoritmo de planificación de cada cola.
3. Un método de determinación de cuando mover un trabajo a una cola de mayor prioridad.
4. Un método de determinación de cuando mover un trabajo a una cola de menor prioridad.
5. Un método de determinación de a qué cola se enviará un trabajo cuando necesita servicio.