Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

24
Sistemas Operativos Unidad I Introducción a los Sistemas Operativos

Transcript of Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Page 1: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Sistemas Operativos

Unidad IIntroducción a los Sistemas Operativos

Page 2: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Introducción a los Sistemas Operativos

Definición y concepto de Sistema Operativo.

Características de los Sistemas Operativos.

Clasificación de los Sistemas Operativos.

Historia y desarrollo de los Sistemas Operativos.

Sistemas operativos de amplia difusión

Page 3: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Definición y concepto de Sistema Operativo

Definiciones: El software y/o firmware que hace utilizable al

hardware [Deitel]. Es un programa que controla la ejecución de

los programas de aplicación y que actúa como interfaz entre los usuarios y el hardware [Satllings].

Es un programa que actúa como intermediario entre el usuario y el hardware. El primer objetivo es la comodidad, el segundo la eficiencia [Silberschatz].

Es un programa que tiene encomendada una serie de funciones diferentes cuyo objetivo es simplificar el manejo y utilización de la computadora, haciéndolo seguro y eficiente [Carretero].

Page 4: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Características de los Sistemas Operativos

Se puede considerar que un S.O. tiene tres objetivos: Comodidad.

Hace que un sistema informático sea más fácil y cómodo de utilizar, al funcionar como una interfaz entre el usuario y el hardware, presentando una cara amistosa y sencilla.

Eficiencia. Administrar los recursos del sistema informático de

forma eficiente. Dichos recursos pueden ser físicos (procesador, memoria principal, periféricos, etc.) o lógicos (archivos, puertos de comunicación, etc.).

Capacidad de evolución. El S.O. debe construirse de modo que permita el

desarrollo efectivo, la verificación y la introducción de nuevas características al sistema y, a la vez, no interfiera con los servicios que brinda.

Page 5: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Características de los Sistemas Operativos ... (2)

Capa del Núcleo o kernel. Suministra la funcionalidad

básica del sistema gestionando los recursos de hardware.

Capa de servicios o llamadas al sistema.

Ofrece una máquina virtual extendida a los programas.

Capa de intérprete de mandatos o Shell.

Provee una interfaz a través de la cual el usuario dialogar interactivamente con la computadora.

Programas de

Usuario

Núcleo

Hardware

Servicios

Shell

Usuarios

S.O

Conceptualmente un S.O. esta formado por tres capas:

Page 6: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Características de los Sistemas Operativos … (3)

El sistema operativo como gestor de recursos. Asigna recursos

Se encarga de asignar los recursos a los programas en ejecución en función de la disponibilidad de estos y la prioridad de los programas.

También tiene que recuperar los recursos asignados cuando los programas ya no los necesiten.

Los recursos pueden ser físicos o lógicos. Protege

Tiene que asegurar la confidencialidad de la información y que los trabajos no interfieran entre sí por los recursos asignados.

Hace contabilidad Mide la cantidad de recursos, que a lo largo de su

ejecución, utiliza cada programa. Bitácoras y Monitorización

Page 7: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Características de los Sistemas Operativos … (4)

El Sistema operativo como una máquina extendida. Ofrece a los programas un conjunto de servicios, o llamadas

al sistema, que pueden solicitar cuando lo necesiten. Los servicios se pueden agrupar en cuatro clases:

Ejecución de programas. El S.O. incluye servicios para lanzar a ejecución, parar o abortar un

programa. Órdenes de E/S.

Servicios para proveer a los programas de operaciones de lectura, escritura y modificación del estado de los periférico, de forma cómoda y protegida.

Operaciones sobre archivos. Es un nivel de abstracción mayor que las órdenes de E/S. Estos

servicios permiten: creación, borrado, apertura, escritura y lectura de archivos.

Detección y tratamiento de errores. El S.O. debe tratar todas las condiciones de error que detecte el

hardware. Algunos de los errores que pueden aparecer son provocados por la E/S y otros por la ejecución de los programas.

Page 8: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Características de los Sistemas Operativos … (5)

El sistema operativo como una interfaz de usuario. Permite que los usuarios dialoguen de forma

interactiva con el sistema. El dialogo puede ser a través de:

Interfaz de Texto. Se conoce como shell o intérprete de mandatos. Espera que el usuario teclee una orden en el shell.

Después la analiza y si es válida la ejecuta. Una vez que esta concluye retorna a la espera.

Interfaz grafica. Existen elementos gráficos para comunicarse con

el S.O. (botones, menús, iconos, etc.). Espera por eventos generados por el ratón y el

teclado. Valida el evento y lo ejecuta. Una vez ejecutado retorna a la espera de más eventos.

Page 9: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Características de los Sistemas Operativos … (6)

Para interactuar con las tres capas conceptuales de un S.O. este debe proveer de al menos de: Un ensamblador. Un núcleo o kernel Un intérprete de comandos. Un compilador. Una amplia biblioteca del

lenguaje de la plataforma. Un enlazador.

Programas de

Usuario

Núcleo

Hardware

Servicios

Shell

Usuarios

S.O

Page 10: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Clasificación de los sistemas operativos

Existen diversas clasificaciones desde distintos puntos de vista para los sistemas operativos.

Clasificaciónde los

SistemasOperativos

Por el númerode usuarios

Monousuarios

Multiusuarios

Por el númerode tareas

Monotareas

Multitareas

Por el númerode procesadores

Uniproceso

MultiprocesoSimétricos

Asimétricos

Por la InterfazGráficos

De texto

Por la forma dedesarrollarlos

Cerrados

Abiertos

Page 11: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Historia y desarrollo de los sistemas operativos

Los S.O. han estado evolucionando a través de los años. Su historia y desarrollo esta ligado con las generaciones de computadoras. Prehistoria (años cuarenta).

Prácticamente sin S.O. Procesamiento en serie.

Primera generación (años cincuenta). Procesamiento por lotes

Segunda generación (años sesenta) Multiprogramación y tiempo compartido.

Tercera generación (años setenta) Sistemas de propósito general y multimodo de

operación. Cuarta generación (años ochenta hasta la

actualidad) Proceso distribuido. Se difunde el concepto de máquina virtual.

Page 12: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Historia y desarrollo de los sistemas operativos … (2)

Prehistoria (años cuarenta) Máquinas como la ENIAC o la EDVAC. No existía un S.O. La interacción se

daba directamente con el hardware. El usuario debía codificar su

programa en código máquina, introducirlo mediante tarjetas perforadas y recibir la salida de forma impresa.

El procesamiento se dice que se realiza en serie por que refleja el hecho de que los usuarios tenían que acceder en serie al computador.

Con el paso del tiempo, para hacer más eficiente el proceso en serie, se desarrollaron bibliotecas de funciones comunes, montadores, cargadores, depuradores, etc.

ENIAC

EDVAC

Page 13: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

$END

$RUN

$LOAD

$FTN

Historia y desarrollo de los sistemas operativos … (3)

Primera generación (años cincuenta) Procesaban un único flujo de

trabajos en lotes. Disponían de un conjunto de

rutinas de E/S. Permitían la recuperación del

sistema si un trabajo acababa en error.

Tenían un lenguaje de control de trabajos que permitía especificar los recursos a utilizar y las operaciones a realizar por cada trabajo.

El software principal del S.O. se denominaba monitor, y era el que controlaba la secuencia de sucesos.

Tratamiento de interrupciones

Controlador deDispositivos

Secuenciamientode trabajos

Intérprete delLenguaje de

Control

Zona delPrograma

delUsuario

Monit

or

Disposición dela memoria

$JOBProgramaa compilar

Datos

del

prog

ram

a

Paquete de tarjetaspara un sistema

sencillo de por lotes

Page 14: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Historia y desarrollo de los sistemas operativos … (4)

Segunda generación (años sesenta) La multiprogramación se impuso en sistemas de lotes

como una forma de aprovechar el tiempo empleado en las operaciones de E/S.

Se construyen los primeros multiprocesadores. Se introduce el concepto de independencia de

dispositivos. Comienzan los sistemas de tiempo compartido. Aparecen los primeros sistemas de tiempo real.

Ejecutar EjecutarEsperar E/S

Tiempo

MonoprogramaciónSolo un programa

en ejecución a la vez

EjecutarA

EjecutarA

Tiempo

EjecutarB

EjecutarB

MultiprogramaciónMás de un programaen ejecución a la vez

Esperar E/S

Esperar E/S Esperar E/S

Page 15: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Historia y desarrollo de los sistemas operativos … (5)

Tercera generación (años cincuenta) Es la época de los sistemas de propósito general y se

caracterizan por ser sistemas multimodo, capaces de operar:

Por lotes Multiprogramación En tiempo real En tiempo compartido En modo multiprocesador

Estos S.O. interpusieron entre el usuario el hardware una gruesa capa de software y ya no había que preocuparse por la circuitería.

Los inconvenientes fueron: Un complejo lenguaje de control Consumían muchos recursos.

Aparece sistemas de gran difusión principalmente el UNIX. Este sistema fue el primero en codificarse en un lenguaje de alto nivel, el C.

Page 16: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Historia y desarrollo de los sistemas operativos … (6)

Cuarta generación (años ochenta hasta la actualidad) Los S.O. tienden a dar más importancia a la

productividad del usuario que al rendimiento de la máquina.

Se hace masivo el uso de la PC y aparecen los sistemas “amistosos” (se añade un gestor de ventanas).

Adquieren también más importancia las redes de computadoras y surge el proceso distribuido.

Surgen interfaces de programación estándar POSIX Win32

Page 17: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Sistemas operativos de amplia difusión

Actualmente existe una gran diversidad de sistemas operativos. Los que se consideran como de amplia difusión son: Los sistemas tipo Unix (Linux, Mac OS X) y los sistemas Windows (Microsoft). Cada uno de ellos tiene su historia y desarrollo, con cada nueva versión se intenta mejorar la comodidad y la eficiencia.

Page 18: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Sistemas operativos de amplia difusión … (2)

MS-DOS Micro-Soft Disk Operating System (Sistema

Operativo de Microsoft) Su origen esta en el QDOS (Quick and Dirty

Operating System) de Seattle Computer Products. Microsoft lo compró y lo renombró como MS-DOS.

Producto clave en los 70’s para que Microsoft se consolidara como el gigante de la industria a través de contratos exclusivos con marcas de hardware.

Con el tiempo imitó a otros sistemas operativos como Unix, salieron varias versiones desde la 1.0 hasta la 6.X con soporte para Windows, desfragmentación, copias de seguridad, antivirus, etc.

Page 19: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Sistemas operativos de amplia difusión … (3)

Windows 95 S.O. gráfico para 16 y 32 bits. Sustituye a MS-DOS, ahora Windows es multitarea apropiativa. Incorpora el sistema de archivos FAT32

Windows 98 S.O. gráfico de 16 y 32 bits Construido sobre Wnd 95 Soporta varios estándares: USB, MMX, AGP. Soporta múltiples monitores y WebTV. Integra el Internet Explorer como componente esencial del

sistema. Windows 98 SE

Corrección de fallos de Wnd 98 Soporte para DVD

Windows ME Windows Millenium Edition, S. O. gráfico de 32 bits Construido sobre Wnd 95 y 98 Introduce nuevo software para multimedia (media player, movie

maker) Se desliga un poco más de MS-DOS

Page 20: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Sistemas operativos de amplia difusión … (4)

Windows NT S.O. para estaciones de trabajo y servidores de 32 bits. Salieron varias versiones 3.1, 3.5, 3.51 y 4.0 con

características similares a las de Unix. Este S.O. ya no se basa en MS-DOS.

Incorpora el sistema de ficheros NTFS La versión 5.0 de NT se conoce como Windows 2000 o

Win2K y es la primera que intentó mezclar los Windows 95, 98, ME y NT

Soporta multiprocesamiento y multitarea, además las versiones de tipo servidor son multiusuarios.

Windows XP Basado en Windows 2000 con una nueva interfaz

gráfica. Existen diferentes versiones

Windows XP Home Edition (mercado doméstico) Windows XP Professional (Entornos empresariales, soporta

multiprocesamiento) Windows XP 64 bits Edition (Procesadores de 64 bits)

Windows Vista

Page 21: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Sistemas operativos de amplia difusión … (5)

Linux Estrictamente el término Linux es el

nombre de el núcleo (kernel) del sistema operativo. Sin embargo, el término se suele utilizar para nombrar un sistema operativo tipo Unix de libre distribución y código abierto.

La expresión Linux también es utilizada para referirse a las distribuciones. Una distribución es un conjunto de aplicaciones reunidas para instalar, configurar y administrar fácilmente un sistema Linux.

Page 22: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Sistemas operativos de amplia difusión … (6)

Linux, historia y presente Linux fue y es elaborado por un numerosos

desarrolladores alrededor del mundo que donaron y donan su tiempo, talento y recursos. Todo comenzó en 1990, cuando el estudiante Linus Torvalds, de la Universidad de Helsinki, tomó el S.O. Minix como base para crear el kernel de Linux, que posteriormente compartió e hizo público.

Originalmente Linux se implementó para PC y con ello tener el poder de una estación de trabajo Unix bajo los dedos de cualquiera. Para 1992 existían escasamente unos 100 usuarios.

En la actualidad los sistemas Linux funcionan sobre más de 20 plataformas de Hardware diferente (PC’s X86 y x86-64, Macintosh, PowerPC, MIPS, etc.). De hecho, más del 74% de las 500 supercomputadoras más poderosas del mundo, para Junio del 2006, utilizan sistemas Linux y el resto Unix propietarios; solo el 0.4% utilizan Windows??!!.

Page 23: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Sistemas operativos de amplia difusión … (7)

Mac OS X Es el sistema operativo de la familia de ordenadores

Macintosh. Originalmente con procesadores del consorcio Apple-IBM-Motorola, y en la actualidad también para procesadores Intel.

Es del tipo Unix (con kernel Linux) por lo que hereda todo el potencial de estos sistemas. Sin embargo, su kernel (Darwin) es código cerrado.

Posee una interfaz grafica de usuario (GUI) llamada Aqua. Incorpora diferentes tecnologías: OpenGL y QuickTime.

Los nombres de las versiones de este S. O. van acopladas con nombres de felinos (en inglés)

Mac OS X v10.0 (Cheetha) Mac OS X v10.1 (Puma) Mac OS X v10.2 (Jaguar) Mac OS X v10.3 (Panther) Mac OS X v10.4 (Tiger) Mac OS X v10.5 (Leopard)

Page 24: Sistemas Operativos Unidad I Introducción a los Sistemas Operativos.

Sistemas operativos de amplia difusión … (8)

Cuál es mejor?

En el mercado de las PC ComparativaX_ XP_LX.pdf

Y en lo que respecta a supercomputo, cuál es el sistema operativo que domina?

TOP500_JUN06.xls