lunes, 29 de febrero de 2016

Funciones Administrativas de los Sistemas Operativos

Administración del tiempo: Se encarga de administrar el tiempo y espacio de ejecución para la ejecución de los diferentes aplicativos y tareas del sistema.

Administración de consola: Es un interfaz que provee acceso a las funciones  del Servidor de Administración, de manera local o remotamente a través de la red. Técnicamente la Consola de Administración es un módulo, el interfaz estándar para ejecutar las tareas administrativas en los sistemas operativos.
Puede usar una sola Consola para administrar cualquier número de Servidores de Administración instalados en la red corporativa.
Administración de recursos:
El sistema operativo, puede administrar el uso del procesador y la memoria del servidor con directivas de recursos estándar o personalizadas. La administración de los recursos le puede ayudar a garantizar que todos los servicios que proporciona un único servidor estén disponibles de forma equivalente o que los recursos para aplicaciones, servicios o usuarios de alta prioridad están siempre disponibles.
Ejemplo:  El Administrador de recursos del sistema de Windows sólo administra los recursos del procesador cuando la carga combinada del procesador es superior al 70 por ciento. Esto significa que, cuando la carga del procesador es baja, no limita de forma activa los recursos que cada consumidor puede usar. Cuando hay contención de los recursos del procesador, las directivas de asignación de recursos ayudan a garantizar una disponibilidad mínima de recursos basándose en el perfil de administración que se define.
Administración de Procesamiento:
La planificación es el proceso por el cual el sistema operativo selecciona que proceso ejecutar.
Los objetivos de la planificación de proceso son:
  • Equidad, todos los procesos deben poder ejecutarse
  • Eficacia, mantener ocupada la CPU un 100% del tiempo
  • Tiempo de respuesta, minimizar el tiempo de respuesta al usuario
  • Tiempo de regreso, minimizar el tiempo que deben esperar los usuarios por lotes para obtener sus resultados
  • Rendimiento, maximizar el número de tareas procesadas por hora.



Ejecución de instrucciones del S.O




Todo programa es una sucesión de instrucciones que le indican al procesador la acción que este debe realizar, pero estas no son pasadas de forma directa del  programa al procesador, antes de esto se llevan a cabo algunos pasos intermedios.


INTERRUPCIONES

La comunicación entre el procesador y la memoria principal es a gran velocidad, sin embargo la mayoría de programas deben interactuar con algún tipo de dispositivo de E/S, durante este proceso la ejecución del programa se ve interrumpida ya que la comunicación con dichos dispositivos es significativamente más lenta que con la memoria, en algunas ocasiones esta operación puede ser incluso más lenta ya que puede requerir la intervención humana y obviamente el tiempo de reacción se reducirá de manera drástica.


TIPOS DE INTERRUPCIONES:



Del Programa:

En un procesador típico habrá un registro llamado contador de programa (PC), que se usa para llevar la cuenta de cuál es la próxima instrucción a leer. A menos que se diga otra cosa, el procesador siempre incrementará el PC después de leer cada instrucción, de forma que después se lea la instrucción siguiente en la secuencia (es decir, la instrucción ubicada en la dirección inmediatamente superior de la memoria).

De Entrada y salida:


Las interrupciones son generadas por los dispositivos periféricos habilitando una señal del CPU (llamada IRQ del inglés "interrupt request") para solicitar atención del mismo. Por ejemplo. cuando un disco duro completa una lectura solicita atención al igual que cada vez que se presiona una tecla o se mueve el ratón.
La primera técnica que se empleó para esto fue el polling, que consistía en que el propio procesador se encargara de sondear los dispositivos periféricos cada cierto tiempo para averiguar si tenía pendiente alguna comunicación para él. Este método presentaba el inconveniente de ser muy ineficiente, ya que el procesador consumía constantemente tiempo y recursos en realizar estas instrucciones de sondeo.
El mecanismo de interrupciones fue la solución que permitió al procesador desentenderse de esta problemática, y delegar en el dispositivo periférico la responsabilidad de comunicarse con él cuando lo necesitara. El procesador, en este caso, no sondea a ningún dispositivo, sino que queda a la espera de que estos le avisen (le "interrumpan") cuando tengan algo que comunicarle (ya sea un evento, una transferencia de información, una condición de error, etc.).
Interrupciones de hadware:

Cuando un periférico desea acceder a un recurso, envía un pedido de interrupción al procesador para llamar su atención. Los periféricos cuentan con un número de interrupción que se denomina IRQ (Peticiones de Interrupción. Es como si cada periférico tirara de un "hilo" que está atado a una campana para señalarle al equipo que desea que le preste atención.
Este "hilo" es, de hecho, una línea física que conecta cada ranura de expansión así como cada interfaz E/S a la placa madre. Para una ranura ISA de 8 bits, por ejemplo, hay 8 líneas IRQ que unen ranuras ISA de 8 bits a la placa madre (IRQ0 a IRQ7). Estos IRQ están controlados por un "controlador de interrupción" que se encarga de “cederle la palabra” al IRQ que posee la mayor prioridad.
Al aparecer las ranuras de 16 bits, se agregaron IRQ 8 a 15. En consecuencia , fue necesario agregar un segundo controlador de interrupción. Los dos grupos de interrupciones están unidos por IRQ 2 el cual se conecta (o "produce una cascada") a IRQ9. En cierto modo, esta cascada "inserta" IRQ 8 a 15 entre IRQ1 y 3:
IRQ2: Cascada
Dado que la prioridad va del IRQ inferior al superior y que se insertan IRQ 8 a 15 entre IRQ 1 y 3, el orden de prioridad es el siguiente:
0 > 1 > 8 > 9 > 10 > 11 > 12 > 13 > 14 > 15 > 3 > 4 > 5 > 6 > 7