Sistemas Operativos by HC12021117233

VIEWS: 23 PAGES: 63

									Sistemas Operativos


     Evolución, categorías y
     características generales
Definición
   Un SO es un programa(s) que actúa
    como intermediario entre el usuario y
    los componentes físicos del sistema
    (hardware)
   El propósito principal del sistema
    operativo es el de hacer conveniente
    y eficiente el uso de los
    componentes físicos
   Programa que está corriendo todo el
    tiempo
Aplicación

   Una aplicación es cualquier otro
    programa que no sea el sistema
    operativo
Componentes Básicos de un
sistemas de computadoras

   HARDWARE
   Sistema Operativo
   Aplicaciones
   Y el usuario
Los componentes básicos del
Hardware

   CPU
   Periferales de entrada y salida ( I/O)
   memoria
Diagrama de un Sistema
Operativo

                                         User #n
User#1      User#2      User#3



  Compiladores Editores Juegos Hojas de Cálculo



               Sistema Operativo

                 HARDWARE
SO programa de Control

   Un programa de control es el que
    dirige la ejecución de programas, para
    prevenir errores y el uso impropio de
    la computadora.
   Su mayor responsabilidad son los
    periferales (I/O)
Evolución de los Sistemas
Operativos

   Simple Batch Systems
   Multiprogrammed Batch Systems
   Time Share or Multitasking
   Parallel Systems
   Distributed Systems
   Real time systems
Simple Batch System

   Surguieron por la necesidad de
    controlar los periferales I/O.
   Los CPU’s aunque eran relativamente
    rápidos, eran extremadamente
    ineficientes pues tenían que esperar
    por los periferales para poder
    continuar.
   Los trabajos se dejaban por lotes
    (batch) para que el CPU los procesara
    en orden
Simple Batch Systems

   El orden en que se ejecutaban las
    tareas era en forma secuencial
   Según los periferales aumentaban la
    velocidad, los CPU’s hacían lo mismo,
    acrecentando el problema de
    sincronización (Los CPU’s son mucho
    más rápidos que los periferales)
¿BUFFERS?

   Los buffers aparecen con la llegada de
    los discos duros.
   Los buffers aliviaron el problema de la
    sincronización.
   Los buffers aumentaron la eficiencia
    de los SO por que los CPU ya no
    tenían que leer la data directamente
    de los periferales sino que leían los
    datos desde el disco/buffer.
¿SPOOLING?

   S – imultaneous
   P – eripheral
   O – perations
   O–N
   L - ine
¿Cúal es el propósito de
SPOOLING?

   El propósito de SPOOL es el de
    aumentar la eficiencia del SO,
    mediante la técnica de leer o escribir a
    periferales desde el disco.
   El SO puede estar leyendo desde un
    periferal al mismo tiempo que
    haciendo cálculos o escribiendo a otro
    dispositivo
MULTIPROGRAMMED
BATCHED SYSTEM

   Surgen a raíz de la técnica de
    SPOOLING
   Proveen la capacidad de escoger cual
    tarea ejecutará primero y cúal
    despúes.
¿”job scheduling”?

   Ocurre “job scheduling” cuando el
    sistema operativo tiene que tomar una
    decisión entre un “job” y otro, en
    cuanto a cúal cargará primero en la
    memoria (por concepto de prioridad).
    Cuando la decisión es sobre qué job
    tomará el CPU; se conoce como “CPU
    scheduling”
Time Sharing Systems
Multitasking Systems

   Es la extensión lógica de
    multiprogramming
   Ejecuta varios “jobs” alternándolos
    basado en tiempo de acceso al CPU
   Permite ejecutar varios procesos “al
    mismo tiempo” con sólo un
    procesador.
   Permite el uso de múltiple usuarios
    simultáneamente
¿Virtual Memory?

   Es la técnica utilizada cuando
    queremos cargar un programa en
    memoria y éste no cabe.
   Consiste en cargar una porción del
    programa en memoria y la otra en el
    disco, alternando según se necesite.
¿Qué es un proceso?

    Es un programa que se ha cargado a
    la memoria y se esta ejecutando.
¿Qué es un thread?

   Se puede definir un thread como: un
    proceso corriendo en el espacio de
    otro.
¿Será asunto del pasado los
Multiprogrammed y los
Multitasking Systems?
   No, los sistemas operativos modernos
    utilizan grandemente los conceptos de
    los multiprogrammed, multitasking
    systems.
Sistemas Paralelos o
Multiprocesing Systems

   Sistemas paralelos o multiprocesos
    consisten en varios procesadores
    compartiendo recursos como
    periferales, bus, system clock, y hasta
    en ocasiones la misma memoria.
¿Aumentar el número de
procesadores aumentará la
eficiencia/velocidad?
   N procesadores no significa N aumento en
    la velocidad.
   Aunque si es cierto que habrá un aumento
    en la velocidad, el aumento no será
    proporcional al número de procesadores.
   Existe un “overhead” para poder coordinar
    las operaciones entre los procesadores
   N procesadores no significa N trabajo
    realizado
¿Cúando se utilizan los
sistemas paralelos?

   Se utilizan los sistemas paralelos o
    multiprocesing cuando la
    confiabilidad es un factor
    indispensable.
   Es decir, se utilizan los sistemas
    parallelos cuando queremos “fault
    tolerant systems” sistemas tolerantes
    a fallas.
   Ej. Reactor Nuclear, controlador de
    trenes, controlador aéreo, etc.
Si tenemos 10 procesadores y
uno de ellos falla qué sucede?

   Habrá una falla de 10% y nó de un
    100%
   El sistema operará un 10% más lento,
    pero todavía estará operando a un
    90% de la eficiencia.
   Aún cuando el sistema dañe 9
    procesadores, todavía estará
    operando un 10%.
Multiprocesamiento
Simétrico

   Una copia exacta del sistema
    operativo se instala en cada uno de
    los procesadores.
   Estas copias del SO se comunican
    entre ellas según ellas lo necesiten.
   Como cada procesador podrá ejecutar
    un proceso, habrá N procesos
    corriendo simultáneamente, sin daños
    mayores a la eficiencia.
Deficiencias
Multiprocesamiento
Simétrico
   Pueden haber procesadores
    sobrecargados de trabajo y otros con
    poco o ninguno
   Para mantener este esquema el
    sistema operativo necesita asegurarse
    que el I/O llegue al procesador
    correspondiente.
Multiprocesamiento
Asimétrico

   Es el esquema de procesamiento en
    donde tenemos un Jefe y varios
    esclavos.
   El jefe mantiene el control de los
    demás procesadores esclavos
   Pueden distribuirse una misma tarea o
    distribuirse por procesos diferentes
Sistemas Distribuídos

   Estos sistemas contrario a los
    anteriores, no comparten, el bus, el
    clock o la memoria
   Cada uno tiene sus propios recursos
   Se comunican a través de cables,
    líneas de teléfonos, microondas, etc.
   Varian en tamaño y función pueden
    incluir Mainframes, PCs, Minis, etc.
Sistemas Distribuídos

   Cada procesador distribuído se
    conoce de varios nombres según el
    contexto por ejemplo:
   Nodo
   Site
   Computadora
Ventajas de los Sistemas
Distribuídos

   Compartir Recursos (Data, Periferales,
    etc )
   Opción en velocidad de ejecución
   Confiabilidad
   Comunicación
   http://infytel.bc.inter.edu/jarodriguez/in
    dex.html
Real Time Systems

   Son sistemas operativos
    especializados en responder a
    situaciones con una eficiencia óptima.
Tipos de Real Time Systems

   Hard – Son los que controlan equipos
    que envuelven riesgo de pérdida de
    vidas humanas
   Soft – No implican riegos de pérdidas
    humanas
Para informe oral
   Historia
   Fotos de cómo se ve (GUI o no)
   Comandos más relevantes
   Sistema de Archivos
   Seguridad
   Aguanta conección para redes
   Qué conceptos discutidos en clase aplican
    (multitasking, multithreading, entre otros)
   10 minutos ni más ni menos
  Historia de los OS

UNIX     1968 Primer OS en ser Multitasking,
              Multiusuario, 8 Bits
MS-DOS 1980 Primer OS en ser utilizado en
            computadoras personales 16 bit
MAC-OS 1984 Primer OS en utilizar un GUI.
            16 bits
Windows 1990 Primer OS con GUI para las PC
3.0
   Historia
Windows   1993 Primer OS en utilizar peer to
3.11           peer Networking en PC 16 bits
Windows 1993 Primer OS de 32 bits que era
NT – (new       multitasking y network
technology      ready.Workstation y Server
)               version
Window     1995 OS de 32 bit que proveía
95              compatibilidad con
                aplicaciones de 16 bits
Win 98     1998 Corrige errores de win 95
    Historia
Windows    2000 Mejora de NT 15m VS 45 Meg
2000            líneas de código. Versiones
                Professional, Server, Advance
                Server, Data Center
Windows    2000 Sucesor de Win 98. Diseñado
ME              para uso doméstico
Window     2001 Viene versiones Home,
XP              Professional, Table PC y Media
                Center
Win Server 2003 32/64 bits. Standard, Web Ed,
2003            Enterprise Ed, Datacenter Ed
Graphical User Interfase - GUI

   Es el ambiente gráfico de ventanas,
    botones e iconos que facilitan el
    manejo del sistema operativo.
   Es uno de los componentes que más
    cambia entre los distintos sistemas
    operativos y aún entre las versiones
    de un mismo sistema.
API – Application
programming interface
   Son las reglas o instrucciones que
    provee el sistema operativo para que
    las aplicaciones se puedan comunicar
    con él.
   Traduce los pedidos de las
    aplicaciones a código que el OS
    puede entender
   Provee una interfase para que el BIOS
    se pueda comunicar con el OS y
    viceversa
BIOS – Basic Input/Output
System

   Inicializa y permite la comunicación
    con los dispositivos del Hardware
   Realiza pruebas a los dispositivos al
    momento de encender la máquina
   Dirige la comunicación básica entre el
    HW y el SW
   Levanta al sistema operativo para
    interactúe con el usuario
BIOS – Basic Input/Output
System

   Cada computadora tiene uno
   Se almacena en memoria ROM (Read
    Only Memory)
   El OS interactúa con el BIOS cuando
    realiza transacciones de I/O
EFI = Intel BIOS 64 bits

   EFI – Extensible Firmware Interface
   Nuevo standard de Intel Corp para
    procesadores de 64 bits – Itanium
   Los OS Windows 64 no trabajarán a
    menos que sus procesadores tengan
    EFI.
ROM – Read Only Memory

   Es un tipo especial de memoria que no
    pierde su contenido cuando se corta la
    energía eléctrica
Device Drivers

   Son las instrucciones/software que
    permiten al OS comunicarse con el
    dispositivo en cuestión
   Necesitan una dirección(address) para
    que el OS pueda enviar y recibir
    mensajes
   Ej. Una impresora necesita instalar el
    Driver de ella para que el OS se pueda
    comunicar
CMOS – Complementary
Metallic Oxide Semiconductor

   Chip que guarda la configuración del
    BIOS
   Mantiene la información con una
    batería
Client/Server

   Servidor – Computadora principal de
    una red. Administra los recursos de
    una red. (Acceso, Aplicaciones,
    Usuarios, entre otros)
   Cliente – Cualquier dispositivo /
    computadora que solicite un servicio al
    servidor.
Sistema Operativo

   Entender cómo trabaja el sistema
    operativo es entender como funciona
    la computadora. Esto se debe a que el
    Sistema operativo maneja cada pieza
    del Hardware y del Software. En
    términos simples es el Gerente
    General
El Sistema Operativo Controla

   Los Archivos (Files)
   Los dispositivos (devices),
   La memoria
   El procesador
   Es el espíritu de la computadora
Componentes de un Sist. Ope.

   Memory Manager
   Processor Manager
   Device Manager
   File Manager
Funciones de los Distintos
Managers

   Monitorear sus recursos
    constantemente para determinar
    quién, qué, cuando o cuanto
   Hacer cumplir las reglas del OS
   Añadir o remover recursos cuando sea
    apropiado
    Componentes del OS
  CPU                               RAM
            Processor   Memory
            Manager     Manager

                                   Program
                                     File
Keyboard     Device       File       Data
            Manager     Manager      File
  Ratón
                                  Compiladores
Impresora

 Monitor
Memory Manager

   Se encarga de administrar la memoria
    principal (RAM)
   Verifica la validez de cada pedido de
    memoria (request)
   Si es válido el pedido, lo coloca en
    algún lugar de la memoria que no esté
    en uso.
Memory Manager

   En un ambiente multiusuarios, crea
    una tabla que mantiene al tanto al OS
    de que espacio está utilizando cada
    usuario
   Elimina los programas o usuarios que
    no estén utilizando la memoria
    (Deallocate)
   Maneja el espacio que ocupa el propio
    OS en la memoria.
Processor Manager

   Maneja los procesos que se llevan a
    cabo en el CPU
   Determina que proceso tiene más
    prioridad que otros
   Determina el tiempo que le asignará a
    cada proceso para ejecutar
Processor Manager

   Mantiene el status de cada proceso
    (programas en ejecución).
   Maneja las transiciones de cada
    proceso (cuando esperar por I/O,
    cuando está durmiendo o esperando
    por algún recurso y cuando termina
   Se puede comparar con un semáforo
    de transito
Device Manager

   Monitorea cada dispositivo, canal y la
    unidad de control
   Su trabajo es escoger la manera más
    eficiente de asignar los dispositivos del
    sistema (impresoras, discos, teclado,
    entre otros)
   Señala el comienzo y el fin de la tarea
    a realizar (ej. Comienzo y final de un
    documento a imprimir).
File Manager

   Rastrea cada archivo presente en el
    sistema
   Asigna o determina su tipo (Data file,
    system file, executables)
   Controla el acceso a cada archivo
    dependiendo de sus permisos/policies:
    Read, Write, Exec, Delete, etc.
   Asigna los recursos necesarios para
    abrir, leer, escribir, cerrar los archivos,
Si se ejecutara una instrucción
de algún programa

   El device manager recibe el impulso
    eléctrico del teclado o del ratón u otro
    dispositivo.
   Se decodifica en forma de comando.
   Se envía por el User Command
    interfase, al Processor Manager donde
    será validado.
Si se ejecutara una instrucción
de algún programa

   El Processor Manager podría enviar el
    mensaje al dispositivo de la tarjeta de
    video para ser presentado en pantalla
   El Processor Manager puede
    determinar si tiene que ir al Disco Duro
    a buscar información o si ya está en
    memoria puede notificarle al Memory
    Manager para que se actualice
 Si se ejecutara una
instrucción de algún programa

   Si el prog. Esta grabado, el File
    Manager calcula la posición exácta en
    el disco y lo pasa al Device Manager.
   Este a su vez, comunica esta
    información al Memory Manager quien
    determinará si cabe en la memoria y
    donde y cuanto se guardará en la
    memoria
Si se ejecutara una instrucción
de algún programa

   Una vez en la memoria, el Memory
    Manager, rastrea la localización y el
    progreso del programa que está
    siendo ejecutado por el Processor
    Manager.
   Si el programa termina el Processor
    Manager envía un mensaje al Device
    Manager para que muestre en pantalla
    (si fuera ese el caso) para que el
KERNEL del Sistema
Operativo

   Es el corazón o núcleo del OS
   Coordina funciones tales como
       Manejo de memoria
       Almacenaje a los disco
El KERNEL se comunica con:

   API
   BIOS
   Device Drivers
   Resource Manager
Resource Manager

   Son programas que regulan el uso de
    la memoria y el CPU

								
To top