unidad de competencia 1introducción sistemas operativos. 0 ing. johnny larrea p. unidad de...
TRANSCRIPT
Introducción Sistemas Operativos. 0 Ing. Johnny Larrea P.
UNIDAD DE COMPETENCIA 1
Define y clasifica los sistemas operativos indicando sus objetivos y
funciones con criterio técnico.
CONOCIMIENTOS:
Definición
Objetivos
Funciones
Historia y evolución
clasificación
Sistemas operativos 1 Félix García Carballeira (1999)
Introducción Sistemas Operativos. 2 Ing. Johnny Larrea P.
Un sistema operativo es un programa de ordenador
que gestiona los recursos de la máquina (CPU,
memoria, dispositivos de E/S, discos, red, etc.)
Un programa que actúa como intermediario entre el
usuario de un computador y el hardware del mismo.
Un sistema operativo es un conjunto de
programas que gestionan de una manera eficiente
un sistema de información para proporcionar al
usuario un interface de sencillo manejo.
DEFINICIÓN DE SISTEMA OPERATIVO?
Introducción Sistemas Operativos. 3 Ing. Johnny Larrea P.
Conjunto de programas, implementados como software o firmware, que permiten utilizar el HW del computador a todos los usuarios, alcanzando buenas prestaciones.
DEFINICIÓN DE SISTEMA OPERATIVO?
Un Sistema Operativo es un conjunto de programas que
controla los dispositivos que forman el ordenador
(memoria y periféricos), administra los recursos y
gestiona la ejecución del resto del software.
Introducción Sistemas Operativos. 4 Ing. Johnny Larrea P.
El SO ocupa un lugar dentro del “Sistema Informático”
• Conjunto de HW y SW para el tratamiento
automático de la información
HW
estructuras
interrupc.
Gest. Procesos
Servicios del Sist.
System calls
Herramientas y librerías SW de aplicaciones y
Usuario:
SISTEMA INFORMÁTICO
Introducción Sistemas Operativos. 5 Ing. Johnny Larrea P.
PARTES DEL SISTEMA INFORMÁTICO
Usuarios y aplicaciones
SW de base
HW
Herramientas y librerías
Editores
Compiladores
Shell: interprete de comandos
SO
System calls / API
Gestión
Interfaz con el HW
CPU
MEM
E/S
Introducción Sistemas Operativos. 6 Ing. Johnny Larrea P.
OBJETIVOS DEL SISTEMA OPERATIVO?
Objetivos:
Proporcionar al usuario una máquina “amigable”
Gestionar eficientemente el HW del computador
Ejecutar programas y facilitar la solución de los
problemas del usuario
Hacer un uso conveniente del computador
Usar el computador de forma eficiente
Proporcionar una máquina virtual extendida
Visiones del SO:
Descendente: Máquina extendida
Ascendente: Gestión del HW
Introducción Sistemas Operativos. 7 Ing. Johnny Larrea P.
Descendente: Máquina extendida o virtual
• Mira la máquina desde arriba y ves una máquina virtual
fácil de usar
• El SO proporciona las herramientas para el uso cómodo
del HW
• Sin el SO tendríamos que programar la máquina
desnuda
Ascendente: Administrador o controlador de recursos
• Mira la máquina desde el punto de vista del HW (hacia
arriba)
• Se ve un SW que gestiona y administra ese HW (CPU,
MEM y E/S).
• EL SO es el “gobierno” del HW.
• El SO debe administrar los recurso sin consumirlos
VISIONES DEL SISTEMA OPERATIVO?
Introducción Sistemas Operativos. 8 Ing. Johnny Larrea P.
Introducción Sistemas Operativos. 9 Ing. Johnny Larrea P.
FUNCIONES DE LOS SISTEMAS OPERATIVOS
Desde el punto de vista del usuario común.
• Comandos para entrar y abandonar el sistema.
• Órdenes para modificar la clave de entrada.
• Comandos para definir las características de un terminal.
• Establecer las rutas de búsqueda.
• Ejecución y control de programas.
• Para establecer prioridades en los procesos.
• Para la manipulación de ficheros y subdirectorios.
• Para la información de estado.
• Órdenes de administración.
Introducción Sistemas Operativos. 10 Ing. Johnny Larrea P.
Desde el punto de vista del programador de
aplicaciones.
• Creación de procesos y borrado.
• Comunicación y sincronización de procesos.
• Actividades de temporización.
• Gestión y uso de recursos.
• Asignación y liberación de memoria.
• Establecimiento de prioridades.
Introducción Sistemas Operativos. 11 Ing. Johnny Larrea P.
Protección del sistema
• Protección de E/S: Para conseguirla se diferencian dos
modos de operación: modo usuario y modo supervisor. El
cambio de un modo a otro se controla por parte del S.O.,
siendo sólo posible el cambio a modo supervisor desde un
usuario por medio de llamadas a funciones del S.O. De este
modo ciertas instrucciones sólo se ejecutarán en modo
supervisor y el S.O. Podrá controlar como se realiza la E/S.
• Protección de la memoria: para que la protección de
memoria sea eficiente, se necesita generalmente recursos
hardware por los que se controla el acceso a la memoria. La
implementación de este control, varía dependiendo de la
gestión que se haga. De esta manera también se consigue
proteger la E/S.
Introducción Sistemas Operativos. 12 Ing. Johnny Larrea P.
1) Gestión de la CPU: Responsable de iniciar los programas,
finalizarlos, interrumpirlos, reanudarlos, etc. También debe
permitir la comunicación de la CPU con el exterior.
2) Gestión de memoria: Controla la cantidad de memoria que
necesita cada programa. Permite la coexistencia de varios
procesos en memoria central.
3) Gestión de E/S: Los programas acceden a los periféricos de
forma sencilla.
4) Gestión de dispositivos de almacenamiento: organiza la
información en archivos y carpetas y permite el acceso rápido y
eficiente a dicha información.
5) Intérprete de comandos: Las órdenes del usuario son
interpretadas y llevadas a cabo.
RESUMIDAMENTE LAS TAREAS QUE DEBE
LLEVAR A CABO UN SISTEMA OPERATIVO SON:
Introducción Sistemas Operativos. 13 Ing. Johnny Larrea P.
Introducción Sistemas Operativos. 14 Ing. Johnny Larrea P.
HISTORIA Y EVOLUCIÓN
Primera Generación 1945-1955
• Tecnología de válvulas
• No existe el S.O.
– E/S mediante interruptores y luces
– El programador: • Reserva el lab. para usar la máquina: hoja de reservas
• Carga el programa en binario, ejecuta y analiza salida
• Inconvenientes: – Sólo realizable para programas pequeños
– Baja productividad: reservas 2h, pero acabas en 1.5horas
• Mejoras
– Tarjetas perforadas, cintas (papel y magnét.)
– Compiladores (Fortran y Cobol)
Introducción Sistemas Operativos. 15 Ing. Johnny Larrea P.
HISTORIA Y EVOLUCIÓN
Primera Generación 1945-1955 • Los compiladores
– Simplifican la programación
– Complican la carga/ejecución de prog.
• Cargar compilador, compilar, cargar ensamblador,
ensamblar, cargar el binario, ejecutar, analizar salida.
• Conclusión: tiempo de “preparación” muy largo. CPU ociosa
• Soluciones – Contratar operador.
• El programador da las tarjetas al operador y vuelve otro día
• Depuración más difícil: post-mortem
– El operador agrupa tareas
• Primero carga el compilador y compila todos los programas,
• Luego carga el ensamblador y los ensambla todos
• Luego los ejecuta todos.
Introducción Sistemas Operativos. 16 Ing. Johnny Larrea P.
ENIAC
Introducción Sistemas Operativos. 17 Ing. Johnny Larrea P.
Transistores y sistemas de procesamiento por lotes
Segunda Generación 1955-1965
HISTORIA Y EVOLUCIÓN
• Seguía existiendo una pérdida de Tcpu entre el final de un
trabajo y el comienzo del siguiente
• Solución: sistemas por lotes
– Programa monitor que carga trabajos por lotes (batch).
– Primeros sistemas operativos.
– Interpretan JCL (Job Control Language)
– Precursor de los ficheros .bat y scripts
T4 T3 T2 T1
Introducción Sistemas Operativos. 18 Ing. Johnny Larrea P.
$END
Datos de entrada al programa
$RUN
$LOAD
Programa en Fortran
$FTN
T4 T3 T2 T1
$JOB Asenjo 1/2/61 1hora max
Área de programas
MEM
Monitor
Cargador
Lector de trabajos
Intérprete de tarjetas
Segunda Generación 1955-1965
HISTORIA Y EVOLUCIÓN
Introducción Sistemas Operativos. 19 Ing. Johnny Larrea P.
Operación fuera de línea ordenadores
para cómputos y otros para E/S
Introducción Sistemas Operativos. 20 Ing. Johnny Larrea P.
Tercera Generación 1965-1980
HISTORIA Y EVOLUCIÓN
• Tecnología de CI.
– Nuevas tecnologías
• Discos magnéticos, terminal
• Gestión de interrupciones y Acceso Directo Mem
(DMA)
– Aparecen familias de comput: IBM360
• Objetivo SO: reducir tiempos de E/S
• Técnicas
– Buffering
– Spooling
• Simultaneous Peripheral Operation On-Line
– Multiprogramación
– Multitarea o tiempo compartido (time-sharing)
Introducción Sistemas Operativos. 21 Ing. Johnny Larrea P.
Tercera Generación 1965-1980
HISTORIA Y EVOLUCIÓN
Introducción Sistemas Operativos. 22 Ing. Johnny Larrea P.
Tercera Generación 1965-1980
HISTORIA Y EVOLUCIÓN
Introducción Sistemas Operativos. 23 Ing. Johnny Larrea P.
Tercera Generación 1965-1980
HISTORIA Y EVOLUCIÓN
Circuitos integrados y multiprogramación
• Multiprogramación
– Mantener varios programas en memoria • El SO, es uno de ellos y ocupa parte de la memoria
• Cada programa ocupa una porción de memoria
• Hay que añadir mecanismos de protección para que un
programa no lea/escriba posiciones de memoria de otro
programa (y menos del SO)
• Cuando un programa encarga un operación de E/S, otro
de los que están cargados en memoria usa la CPU
• Similitud: abogados con varios casos en paralelo
Prog. A
Prog. B
SO
Introducción Sistemas Operativos. 24 Ing. Johnny Larrea P.
Tercera Generación 1965-1980
HISTORIA Y EVOLUCIÓN
• Tiempo compartido (multitarea)
– Orientado a mejorar la interactividad
• El procesamiento por lotes
– Impide al usuario interactuar con el programa
– Dificulta la depuración de programas (era dep. post-
mortem)
• Cuando aparece el terminal (teclado+monitor) tiene
sentido interactuar con la máquina
– Aparecen el interfaz de comandos y el sistema de
ficheros
– El usuario actúa en función de resultados anteriores
– Se necesita interactividad con tiempos de respuesta
breve
– Sin embargo: la máquina es cara para que la use un
sólo usuario
Introducción Sistemas Operativos. 25 Ing. Johnny Larrea P.
Tercera Generación 1965-1980
HISTORIA Y EVOLUCIÓN
• Multitarea: interactividad a bajo coste
• Computador con varios terminales para varios
usuarios
• La CPU “multiplexa en el tiempo” la ejecución de
los procesos
• Ejemplos de S.O.: OS/360, MULTICS, UNIX, etc
Introducción Sistemas Operativos. 26 Ing. Johnny Larrea P.
IBM/360 modelo 30
Introducción Sistemas Operativos. 27 Ing. Johnny Larrea P.
IBM/360
Introducción Sistemas Operativos. 28 Ing. Johnny Larrea P.
Cuarta Generación 1980-actualidad
HISTORIA Y EVOLUCIÓN
Ordenadores Personales
• Tecnología de CI. Procesadores
• En 1970 Intel fabrica el 4004
• El IBM-PC sale al mercado en 1981 con el 8088 y MS-DOS
• SO para computadores personales
• Inicialmente no son multitarea ni multiusuario. MS-DOS
– No implementan protección de ficheros: nacen los virus
• Los interpretes de comandos dan paso a entornos GUI:
– Monousuario: se prefiere aumentar la productividad del
usuario a mejorar el rendimiento del sistema
– Windows 3.11 es multiprogramado pero monousuario
• El desarrollo de las redes propicia
– Proceso distribuido: usuarios comparten PCs y
periféricos
– Para ello se recupera la multitarea y soporte multiusuario
• A veces las bases de datos sustituyen al sist. de archivos
Introducción Sistemas Operativos. 29 Ing. Johnny Larrea P.
Cuarta Generación 1980-actualidad
HISTORIA Y EVOLUCIÓN
Ordenadores Personales
• SO distribuidos • SO sobre una red de computadores
• Proporciona la visión de un solo computador más potente
• Ejemplos: Mach, Amoeba. Dejan ahora paso a los:
• Middleware • Una capa SW ejecutada sobre una red de computadores
• Cada computador tiene su SO convencional
• Ejemplos: Corba (open-source), DCOM (Microsoft)
• Maquinas virtuales: emuladores • Una máquina emula por SW a otra con otro SO
• Emuladores para PC: MAC, Commodore, Spectrum, MSX
• VMWare: Emula un PC por SW. En ese PC virtual puedes
instalar cualquier SO para PC.
• WindowsXP tiene maq. virtuales para MS-DOS y Win16.
• Java se ejecuta sobre una máquina virtual (JVM)
Introducción Sistemas Operativos. 30 Ing. Johnny Larrea P.
Cuarta Generación 1980-actualidad
HISTORIA Y EVOLUCIÓN
Ordenadores Personales
• SO para multiprocesadores • Los sistemas paralelos ofrecen velocidad y tolerancia a fallos • SO con soporte para multiprocesamiento asimétrico
– Un procesador ejecuta el SO y el resto ejecutan procesos • SO con soporte para multiprocesamiento simétrico (SMP)
– El SO se ejecuta en cualquier procesador – Los SO multithread (Linux, WindowsXP) soportan SMP
• SO en tiempo real • Para gestión de HW de control • Tiene restricciones temporales: t.respuesta acotado • Sin HD ni mem. virtual. Típicamente almacenado en ROM • Sistemas TR duros: garantizan un tiempo de respuesta
– Requiere que todos los retardos del sistema estén acotados
• Sistemas TR blandos: los procesos críticos tienen alta prioridad
– Requiere un planificador con prioridades.
Introducción Sistemas Operativos. 31 Ing. Johnny Larrea P.
LSI (Integración a gran escala)
Consistía de sistemas con al menos mil
compuertas lógicas.
VLSI (Integración a muy gran escala)
Varias decenas de miles de compuertas
en un solo chip.
Hoy en día, los microprocesadores tienen
varios millones de compuertas en el
mismo chip.
2006 comercializaban microprocesadores
con tecnología de hasta 65 nm.
2010 comercializan chipsets con
tecnología de 32 nm. VLSI
Introducción Sistemas Operativos. 32 Ing. Johnny Larrea P.
Introducción Sistemas Operativos. 33 Ing. Johnny Larrea P.
- Procesamiento en serie.
- Se trata de un procesamiento secuencial de todos los
procesos. Es lento y poco práctico.
- Procesamiento por lotes.
- Los trabajos se agrupan por lotes similares, se introduce
todo el lote en la máquina, y ésta ejecuta completamente el
lote. Este proceso conllevaba una pérdida de interactividad
con el usuario.
- Procesamiento en multiprogramación.
- Sistemas interactivos.
- Sistemas de tiempo real.
- Sistemas distribuidos.
- Son sistemas multiprocesador conectados entre sí por una
red, siendo el conjunto global un único sistema.
Introducción Sistemas Operativos. 34 Ing. Johnny Larrea P.
S.O. DE MAINFRAME
Orientados al procesamientos de varios trabajos a la vez,
que casi todos necesitan gran cantidad de E/S
3 tipos de servicios: por lotes, procesamiento de
transacciones y tiempo compartido
Ejemplo de S.O.: OS/390 descendiente del OS/360
S.O. DE SERVIDOR
Los servidores pueden ser PCs muy potentes, estaciones
de trabajo o incluso mainframes.
Dar servicio a múltiples usuarios a través de la red
Permiten compartir recursos HW y SW
Prestan servicios de impresión, de ficheros o de Web
Ejemplo de S.O.: UNIX (Linux, FreeBSD, Solaris),
Windows 2000
TIPOS DE SISTEMAS OPERATIVOS
Introducción Sistemas Operativos. 35 Ing. Johnny Larrea P.
S.O. MULTIPROCESADOR
S.O. para trabajar con computadoras paralelas,
multicomputadoras o multiprocesadores
Suelen ser S.O. de servidor, con funciones añadidas
especiales para comunicación y conectividad
Ejemplo: Linux en un IBM SP-2
S.O. PARA ORDENADORES PERSONALES
Su misión es presentar una buena interfaz a un único
usuario
Su principal uso procesamiento de textos, hojas de
cálculo, acceso a Internet, etc.
Ejemplos de S.O. Windows, Linux, MacOS X (Basado
en FreeBSD)
TIPOS DE SISTEMAS OPERATIVOS
Introducción Sistemas Operativos. 36 Ing. Johnny Larrea P.
TIPOS DE SISTEMAS OPERATIVOS
S.O. DE TIEMPO REAL Su parámetro clave es el tiempo
S.O. de tiempo real riguroso:
es indispensable que la acción se efectúe en cierto
momento, o en un intervalo
un ejemplo de su uso está en los procesos industriales
controlando máquinas de producción, centrales
nucleares, controladores de aviación, etc.
S.O. de tiempo real no riguroso :
es aceptable no cumplir de vez en cuando un plazo,
aunque esa imprecisión se tiene que ajustar a unos
parámetros, como un porcentaje de fallo
un ejemplo de su uso son los sistemas de audio digital
o multimedia, VxWorks y QNX
Introducción Sistemas Operativos. 37 Ing. Johnny Larrea P.
TIPOS DE SISTEMAS OPERATIVOS S.O. INTEGRADOS
Para computadoras de bolsillo (palm-top) y sistemas
integrados.
Tienen características de S.O. en tiempo real con limitaciones
de tamaño, memoria y consumo de electricidad
Ejemplos: PalmOS y Windows CE (Consumer Electronic),
Linux&QT-Embed
S.O. DE TARJETA INTELIGENTE
Son los más pequeños, se ejecutan en tarjetas inteligentes
del tamaño de una tarjeta de crédito que contienen una CPU
Grandes limitaciones: potencia de procesamiento y memoria
Realizan como mucho una o varias funciones
Orientadas a Java un intérprete de la Máquina Virtual de
Java
Los applets se descargan a la tarjeta y la JVM los interpreta
Si hay varios applets multiprogramación y planificación