Sistemas Operativos - PowerPoint PPT Presentation

1 / 41
About This Presentation
Title:

Sistemas Operativos

Description:

Permiten controlar el tiempo de atenci n por usuario (en un esquema multi ... alterna transmisiones de dispositivos lentos (t rminales, impresoras y l neas de ... – PowerPoint PPT presentation

Number of Views:68
Avg rating:3.0/5.0
Slides: 42
Provided by: royherre
Category:

less

Transcript and Presenter's Notes

Title: Sistemas Operativos


1
  • Sistemas Operativos
  • (Cb 00 856)
  • Dr. Armando Herrera C.
  • herrera_at_itesm.mx
  • Semestre Enero-Mayo 2006

2
  • Cronómetros
  • Permiten controlar el tiempo de atención por
    usuario (en un esquema multi-usuario), evitando
    con ello la monopolización del procesador. Esto
    se logra por medio de interrupciones.
  • Operación en Línea y Fuera de Línea
  • Es posible gracias a la participación de
    procesadores satélite que toman el control de
    ejecución en ciertas tareas.

3
  • Así, dispositivos periféricos son manejados
    por una unidad de control desacoplada del
    Sistema Central descargando con ello al
    procesador.
  • Por ejemplo en tareas de copia de cinta
    magnética sobre impresora (tarea muy lenta) está
    operación es implementada (fuera de línea)

4
  • Canales de E/S
  • En un inicio no existían, esto obligaba, al
    procesador a mantener, su atención en
    operaciones de E/S durante el tiempo que estás
    tomaran. Ello constituía una fuerte limitante
    y sub-utilización de recursos.
  • Un canal de E/S es una computadora con el
    propósito especial de controlar la E/S de
    manera independiente al procesador central.

5
  • Un canal puede obtener un acceso directo al
    almacenamiento primario en lectura y escritura.
  • Actualmente el procesador puede arrancar una
    transferencia de E/S con un comando (startio).
    El canal generará una interrupción al procesador
    al término de la misma.
  • Este mecanismo aumenta considerablemente la
    actividad concurrente del hardware de la
    computadora liberando al procesador.

6
  • Canal Selector
  • Lleva a cabo la tarea de transferencia de alta
    velocidad entre los dispositivos y la memoria
    principal .
  • Tiene un solo sub-canal que solo puede atender un
    dispositivo a la vez .
  • Canales Multiplexores
  • Poseen muchos sub-canales que intercalan flujos
    de datos en forma simultanea.

7
  • Canal multiplexor de bytes alterna transmisiones
    de dispositivos lentos (términales, impresoras y
    líneas de comunicación de baja velocidad)
  • Canal multiplexor de bloques alterna
    transmisiones de varios dispositivos de alta
    velocidad como impresoras láser y unidades de
    disco.

8
  • Robo de Ciclos
  • Según la manera de operar de los canales de E/S
    un conflicto entre estos y el procesador puede
    presentarse en acceso simultáneo a la memoria
    principal (MP).
  • Robo de ciclos es la solución al problema. Se
    basa en la prioridad a los canales, quienes
    literalmente roban ciclos de almacenamiento al
    procesador.

9
  • Debido a que el canal utiliza un porcentaje
    muy bajo de los ciclos, el concederles prioridad
    permite, un mejor aprovechamiento de los
    dispositivos E/S. Esta lógica está integrada
    actualmente en los sistemas operativos.

10
  • Nota importante
  • La necesidad de tallas más grandes en memoria
    principal llevó a la creación del concepto de
    acceso por dirección base más desplazamiento
    que resulta más ventajoso sobre un
    direccionamiento de gran longitud. Las
    direcciones se suman al contenido de un registro
    base.
  • Este concepto tiene la ventaja de hacer que los
    programas sean independientes de la ubicación, lo
    cual es de gran utilidad en ambientes
    multiusuarios.

11
  • Estados de Ejecución
  • Estado Usuario
  • Para los programas de usuarios existe un
    sub-conjunto de instrucciones posibles de
    ejecutar. Un usuario no tiene acceso abierto a
    operaciones E/S para la protección e integridad a
    la información contenida en el sistema, así como
    de evitar alteraciones en el sistema operativo.

12
  • Estado Supervisor
  • Usuario de máxima confianza. Se tiene acceso al
    total de instrucciones de la máquina.
  • En sistemas que exigen mayor seguridad pueden
    existir más estados, lo que permite una mayor
    granularidad de protección o protección más fina.
    Así los accesos son manejados bajo el principio
    de menor privilegio. Esto permite regular los
    recursos a la justas necesidades del usuario.

13
  • Almacenamiento Virtual
  • Permite a los programas hacer referencia a
    direccionamiento que no necesariamente se
    encuentra en el esquema real de direccionamiento
    primario.
  • En el momento de la ejecución de un programa, el
    hardware traduce dinámicamente el
    direccionamiento fuera de espacio primario de
    memoria, lo que permite grandes espacios de
    direcciones disponibles desde almacenamiento
    primario.

14
  • Ello permite
  • Programación independiente de las restricciones
    del almacenamiento primario.
  • Facilita la operación en sistemas multiusuario
    compartidos.
  • Esta forma de almacenamiento emplea la técnica de
    paginación de bloques de datos de tamaño fijo que
    se desplazan entre almacenamiento primario y
    secundario.

15
  • Así mismo de segmentación que identifica unidades
    lógicas de programas y datos, facilitando el
    control de acceso y el compartimiento.
  • Multiprocesamiento
  • Bajo este esquema se comparte (por varios
    procesadores)
  • Memoria principal (MP)
  • Sistema Operativo

16
  • Orden Secuencial
  • Es necesario para evitar conflictos de acceso
    simultaneo a memoria por parte de varios
    procesadores, lo que puede alterar
    inadecuadamente su contenido .

17
Acceso Directo a Memoria (DMA Direct Memory
Access)
  • Objetivo
  • Aumentar el rendimiento del procesador
    disminuyendo el número de interrupciones.
  • Sólo requiere de una interrupción por
    transferencia de un bloque en un operación de E/S
    (tradicionalmente el proceso es interrumpido por
    cada caracter que se transfiere).

18
  • La transferencia de información (de ó hacia
    memoria principal) es realizada mediante Robo de
    Ciclos. El canal toma temporalmente el bus del
    procesador hacia el almacenamiento, en la
    transferencia de un caracter, después es
    liberada y el procesador continua su operación.
  • Por cada caracter en trasferencia el procesador
    es interrumpido, pero gracias al hardware
    especial (canal de DMA) no es necesario guardar
    el estado del procesador (lo que toma mucho
    tiempo).

19
  • El caracter es transferido de o a memoria
    principal. Concluido esto el procesador continua
    su operación.
  • El DMA es particularmente útil en sistemas
    orientados a trasferencias de grandes volúmenes
    de E/S.

20
  • Canalización
  • Concepto que permite aumentar el rendimiento de
    un sistema. Su costo está en un incremento en el
    hardware quien crea un paralelismo en el
    procesamiento de instrucciones por parte del
    procesador. El procesador atiende por pasos a
    varias instrucciones, reduciendo el tiempo total
    de ejecución.

21
  • Jerarquía de Almacenamiento
  • Memoria Caché
  • Transparente a los programas del usuario
  • Rápida (más que la memoria principal)
  • Almacena la parte en ejecución de un programa
  • La parte en ejecución de un programa es colocada
    aquí
  • Memoria Principal
  • Almacenamiento primario
  • Memoria dinámica
  • Aquí residen los datos y programas a ejecutar o
    en ejecución

22
  • Memoria Secundaria
  • Almacenamiento de gran capacidad
  • Útil para guardar información a largo plazo
  • Ejemplos Discos, cintas, disquetes, etc.
  • De velocidad inferior a las de la memoria caché y
    primaria
  • Nota Conforme el costo y la velocidad decrecen,
    la capacidad de almacenamiento aumenta. Es esta
    relación que establece las diferencias
    jerárquicas.

costo velocidad
capacidad de almacenamiento
M. Caché
M. Principal
M. Secundaria
23
  • Tendencias Actuales en Sets de Instrucciones
  • Los sets de instrucciones en lenguaje máquina
    tendieron a crecer exageradamente.
  • Razón Instrucciones Complejas provenientes del
    SO (buscando una ejecución más sencilla)
  • Hardware más lento
  • Tendencias sets reducidos
  • Ejemplo Arquitectura RISC (Reduced Instruction
    Set Computing).

24
SOFTWARE
Conformado por los programas (instrucciones) y
los datos que definen para el hardware, los
algoritmos de solución a problemas El SO y otro
software del sistema generalmente es
proporcionado por el proveedor del hardware El
software de aplicación es generalmente
proporcionado por proveedores independientes
25
  • Lenguaje Máquina
  • Es el lenguaje de programación que la computadora
    puede entender directamente
  • Interpretado directamente por el hardware.
  • La disposición de estas instrucciones dentro de
    los programas en lenguaje máquina permite la
    generación de algoritmos útiles.

26
  • Sistema de Control de E/S (IOCS)
  • Resuelve al programador la compleja tarea de
    programar canales y procesador en operaciones de
    I/O
  • Antiguamente re-ensamblar las rutinas de IOCS
  • Codificación ardua
  • Larga compilación
  • Ocupación de espacio de memoria principal
  • Actualmente el responsable es el SO con la
    consiguiente demanda de mayores espacios de
    almacenamiento primario

27
  • Spool
  • Simultaneous Peripheral Operations On Line
    (Operaciones Periféricas Simultaneas en Línea)
  • Responde a demandas de transmisión con
    dispositivos de I/O de baja velocidad
  • Ejemplo
  • Una impresora lenta
  • En lugar de enviar directamente a ésta, se envía
    a un archivo en disco
  • Esto mantiene el rendimiento del sistema al
    acelerar el proceso de ejecución
  • Se enviará a la impresora cuando exista
    disponibilidad (tiempo)

28
  • Compiladores
  • Rápidos e Inoptimizados
  • Generan rápidamente un programa objeto
  • Código generado ineficiente
  • Consumo de memoria y velocidad de ejecución
  • Útil en desarrollo y depuración de programas
  • Optimizador
  • Se ejecutan más lentamente
  • Producen código de calidad
  • Propio para programas depurados y listos para
    entrar en producción
  • Código de Máquina de alta eficiencia
  • Optimización en Memoria requerida y en
    velocidad de ejecución

29
  • Interpretes
  • No generan programas objeto
  • Ejecutan directamente los programas fuente
  • Útil en desarrollo de software (al evitar el
    ensamblado y compilación)
  • Desventaja Velocidad de ejecución

30
  • Cargadores
  • Responsables de la tarea de colocación de
    programas y datos asociados, en un cierto espacio
    de memoria principal
  • Tipos
  • Absoluto Hace la colocación en localidades
    precisas indicadas por el programa en lenguaje
    máquina
  • Reubicable Puede cargar un programa en diversos
    lugares de la memoria en función de la
    disponibilidad de espacio al momento de la
    solicitud

31
  • Cargadores de Enlace y Editores de Enlace
  • Realizan la combinación de programas antes de la
    ejecución de los mismos previamente desarrollados
    por el programador.
  • Combinación
  • Programas del Usuario Programas del Sistema
  • Acervos de sub-rutinas disponibles al usuario
    por el sistema
  • Ventaja Facilitar al usuario las tareas de I/O,
    antes difíciles y complejas

32
  • Cargador de Enlace
  • Combina los programas necesarios y los carga en
    memoria principal
  • Editor de Enlace
  • Combina de igual manera y crea una imagen de
    carga que se guarda en almacenamiento secundario
    (para referencias futuras)

33
  • Programación Orientada a Objetos
  • Objetivo Responder de manera más eficiente a
    aplicaciones grandes y complejas
  • Se funda en la concepción de entidades abstractas
    llamadas objetos
  • Éstos encapsulan procedimientos y datos
    relacionados entre si

34
  • Los objetos pueden representar
  • Hardware
  • CPU
  • Memoria
  • Dispositivos
  • Entidades de software
  • Programas o archivos...
  • Se manejan como paquetes
  • Su desarrollo se inscribe en el seno de SOs
    tales como UNIX basado en C

35
  • Examen Rápido sobre
  • Qué es un PROCESO ?
  • Estados de un Proceso
  • Defina Firmware
  • Defina emulación
  • Funciones del SO en microcódigo. Citar 3
  • Leer
  • Cap 19 19.1-2 19.6-8 19.15-16

36
  • Procesos
  • La palabra juega un rol primordial en la
    comprensión de los actuales sistemas de cómputo
  • Significado Evoluciona rápidamente siguiendo
    las nuevas filosofías de hardware y software
  • La época multic da origen a la palabra (años
    60s)
  • Sinónimo de tarea

37
  • Definiciones populares
  • Programa en ejecución
  • Actividad asíncrona
  • Lógica activa según un procedimiento
  • Lógica de control en ejecución según un
    procedimiento
  • El trabajo (procedimientos) a los que se asignan
    los procesadores.
  • Universalmente aceptada Programa en ejecución

38
  • Son dos partes las que dan lugar a un proceso
  • El procesador
  • El procedimiento (programa)
  • Entonces
  • Cuando el procesador vuelve activo al programa
    se habla de un PROCESO

39
  • Estados de un proceso (conceptos)
  • Evento Puede ocasionar que un proceso cambie de
    estado. Los cambios son a través de estados
    discretos
  • Estado de Ejecución de un Proceso Cuando un
    programa tiene asignado el CPU
  • Proceso Listo Si puede utilizar el CPU en caso
    de disponibilidad de éste
  • Proceso Bloqueado Si se espera que suceda algún
    evento (fin de E/S por ejemplo)

40
  • Lista de Procesos Guarda el estado de los
    procesos. En esquema de un sólo CPU existe un
    sólo proceso en ejecución a la vez y puede haber
    varios listos y varios bloqueados. Esto da lugar
    a una lista de cada tipo.
  • Lista de procesos listos Ordenada por prioridad.
    El primer proceso de la lista es el que atiende
    el CPU

41
  • Lista de Procesos Bloqueados
  • No están ordenados por prioridad
  • No es la prioridad la que los activa, pero el
    orden de ocurrencia de eventos
  • Se asignan prioridades cuando varios procesos
    bloqueados esperan un mismo evento
  • Transición de Estado Es el paso (de un proceso)
    del estado listo al estado de ejecución (después
    de haber estado en la lista de procesos listos)
Write a Comment
User Comments (0)
About PowerShow.com