Historia so

23
SISTEMAS OPERATIVOS

Transcript of Historia so

Page 1: Historia so

SISTEMAS OPERATIVOS

Page 2: Historia so

Es un programa que actúa como intermediario entre el usuario y el hardware. Es el único programa del que no se puede prescindirGestiona periféricos, ficheros y usuariosA) Nivel bajo o núcleo del SOB) Nivel alto, de utilidades y herramientas

Sistema operativo

Page 3: Historia so

• Gestión versátil de los periféricos

• Procesamiento por lotes

MS-DOS

• Presentación de la información en forma de ventanas

WINDOWS• Pensados para

operar en forma multiusuario y multitareas, con gran cantidad de herramientas y utilidades

OTROS (UNIX, Linux, OS/2,

etc.)

Tipos de Sistema Operativo

Page 4: Historia so

Clasificación y estructura

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

Clasificaciónde los

SistemasOperativos

Por el númerode usuarios

MonousuariosMultiusuarios

Por el númerode tareas

MonotareasMultitareas

Por el númerode procesadores

UniprocesoMultiproceso Simétricos

Asimétricos

Por el propósitoEspecíficoGeneral

Por el tipo dediseño

Monolíticos

Abiertos

ModularesPor capasMicronúcleoMáquinas virtuales

Por el tipo dedesarrollo Cerrado

Ciclo Escolar 2013-2014B

Page 5: Historia so

Generación 0 40's

El usuario debía codificar su

programa en código máquina,

introducirlo mediante tarjetas

perforadas y recibir la salida de forma

impresa.

No existían los sistemas

operativos.

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.

ENIACEDVAC

Page 6: Historia so

Ciclo Escolar 2013-2014BEl software principal del S.O. se denominaba monitor, y era el que

controlaba la secuencia de sucesos.

Disponían de un conjunto de rutinas de E/S.

Procesamiento por lotes: agrupar los

trabajos en lotes, para que se ejecutaran de

forma continua para no perder tiempo en la

transición

Permitían la recuperación del sistema si un trabajo

acababa en error.

1ª. Generació

n.50's

$END

$RUN

$LOAD

$FTN

$JOB

Paquete de ta

rjetas

para un siste

ma

sencil

lo de por lotes

Programaa compilar

Datos

del

prog

ram

a

Page 7: Historia so

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

Ciclo Escolar 2013-2014B

2ª. Generación.

Page 8: Historia so

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.

Ciclo Escolar 2013-2014B

3ª. Generación.

Page 9: Historia so

Cuarta generación 1980 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 Proceso distribuido. Se difunde el concepto de máquina virtual

Ciclo Escolar 2013-2014B

Page 10: Historia so

Sistema operativo (Unix/Linux)

Estructura general de un sistema Unix/Linux

HardwareHardwareHardware

Núcleo

Interfaz de Llamadas al Sistema

ShellComandos y

Librerías

Programas deAplicación

Componentesdel compilador

Compilador

Ciclo Escolar 2013-2014B

Page 11: Historia so

Sistema operativo (Unix/Linux)

Dia

gra

ma d

e b

loq

ues

del núcl

eo U

nix

/Lin

ux

A

dap

tado d

e U

nix

. Pro

gra

maci

ón

avanza

da

Hardware

Control del hardware

Controladores de dispositivos

Caracter Bloque

Buffer cache

Subsistema deArchivos

Sistemade control

de procesos

Comunicaciónentre procesos

Planificador

Gestor de memoria

Interfaz de llamadas al sistema

Librerías

Programas de usuario

Nivel Hardware

Nivel Kernel

Nivel Usuario

Ciclo Escolar 2013-2014B

Page 12: Historia so

Subsistema de archivos Controla los recursos del sistema de archivos, tiene funciones

como: Reservar espacio para los archivos. Administrar el espacio libre Controlar el acceso a los archivos Permitir el intercambio de datos entre los archivos y el usuario.

Los procesos interaccionan con el subsistema de archivos a través de unas llamadas específicas (open, read, write, status, etc).

Se comunica con los dispositivos de almacenamiento secundarios a través de los controladores de dispositivos. Se consideran dos tipos según el acceso: bloques y caracteres. Un mismo dispositivo puede ser manejado en modo bloque o en modo carácter, depende del controlador que se este usando.

Subsistema de control de procesos Es el responsable de la planificación de los procesos, su

sincronización, comunicación entre los mismos y del control de la memoria principal.

Ciclo Escolar 2013-2014B

Sistema operativo (Unix/Linux)

Page 13: Historia so

Casos de estudio (Unix/Linux) … (5)

El módulo de gestión de memoria Se encarga de controlar qué procesos están cargados en la

memoria principal en cada instante. Cuando no hay memoria suficiente se recurre al swaping

(intercambio). El planificador

Se encarga de gestionar el tiempo del CPU que tiene asignado cada proceso.

Entra en ejecución cada cuanto de tiempo y decide si el proceso actual tiene derecho a seguir ejecutándose o a de conmutarse de contexto.

La comunicación entre procesos Puede realizarse de forma asíncrona (señales) o síncrona (colas de

mensajes, semáforos). El módulo de control de hardware

Es la parte del kernel encargada del manejo de las interrupciones y de la comunicación con la máquina.

Ciclo Escolar 2013-2014B

Page 14: Historia so

Sistema operativo(Windows)

Arquitectura simplificada de Windows (NT)

ModoKernel

ModoUsuario

Capa de Abstracción de Hardware (HAL)

KernelControladores de

Dispositivos

EjecutorSistema deVentanasy Gráficos

Procesos deSoporte del

Sistema

Subsistema de DLL’s

Procesosde

Servicio

Aplicacionesde

Usuario

Subsistemasde

Ambiente

Ciclo Escolar 2013-2014B

Page 15: Historia so

Modo Kernel Capa de Abstracción de Hardware (HAL)

(1) Separa al kernel, los controladores de dispositivos y al administrador del hardware, y (2) Oculta las diferencias específicas de hardware, (tarjetas madre x86, MIPS, PowerPC, y otras).

Kernel Se encarga entre otras cosas de: (1) Las funciones del S. O. a bajo

nivel, (2) Sincronización de múltiples microprocesadores, y (3) Administración de hilos.

Controladores de dispositivos Traducen las llamadas de Entrada/Salida provocadas por el usuario en

la información específica que los dispositivos de Entrada/Salida requieren.

Ejecutor Son los servicios del sistema operativo de base, se encarga, entre otras

cosas de: (1) El manejo de memoria, (2) Manejo de procesos e hilos, (3) Seguridad, (4) Entrada/Salida, (5) Comunicación entre procesos.

Sistema de ventanas y Gráficos. Funciones de la Interfaz Gráfica de Usuario (GUI), Ventanas, Controles

para la GUI y trazado.

Ciclo Escolar 2013-2014B

Sistema operativo(Windows)

Page 16: Historia so

(Windows)

Modo Usuario Procesos de soporte del sistema

Entre otras cosas, tiene las tareas de: (1) Acceso al sistema (nombre de usuario y contraseña) y (2) Administrar la sesión.

Procesos de servicio Son servicios anfitriones de Windows, como: (1) El

planificador de tareas, (2) Servicios de Spooler (ej. Impresión). Y muchas otras aplicaciones servidor de Windows.

Subsistema de DLL’s (Librerías de Enlace Dinámico) Traduce de una función documentada a una llamada

interna del sistema Windows apropiada (no documentada).

Subsistemas de Ambiente Maneja los procesos del cliente en su mundo.

Windows API (originalmente de 32 bits, ahora de 64 bits) POSIX (escasos servicios Unix)

Ciclo Escolar 2013-2014B

Page 17: Historia so

MS-DOS, Windows 95, 98 y ME (16 bits) sobre Windows XP (32 bits). Windows corre una Máquina DOS

Virtual NT (NTVDM.EXE), la cual es una imagen Windows de 16 bits montada sobre el Subsistema de DLL’s. En realidad CMD.EXE es una aplicación de consola de Windows.

Para aplicaciones de 16 bits NTVDM carga “WOW”, un traductor de API de 16 a 32 bits.

ModoKernel

ModoUsuario

Capa de Abstracción de Hardware (HAL)

KernelControladores de

Dispositivos

Administrador Sistema deVentanasy Gráficos

Procesos deSoporte del

Sistema

Subsistema de DLL’s

Procesosde

Servicio

Aplicacionesde

Usuario

Subsistemasde

Ambiente

Aplicación MS-DOSAplicación de 16 bitsEmulación MS-DOS

Memoria Extendida de MS-DOS

Emulación de MS-DOS a 32 bits

Controladores de dispositivosVirtuales (COM, LPT, Teclado)

Subsistema de DLL’s

0 K

640 K

1 MB

16 MB

16 bits

32 bits

7FFFFFFF

Ciclo Escolar 2013-2014B

Sistema operativo(Windows)

Page 18: Historia so

Casos de estudio (Windows) …(5)

hardware interfaces (buses, I/O devices, interrupts, interval timers, DMA, memory cache control, etc., etc.)

System Service Dispatcher

Task Manager

Explorer

SvcHost.Exe

WinMgt.Exe

SpoolSv.Exe

ServiceControl Mgr.

LSASS

Ob

jectM

gr.

WindowsUSER,

GDI

File

System

Cach

e

I/O Mgr

UserApplication

Subsystem DLLs

System Processes Services Applications

Original copyright by Microsoft Corporation. CRK.

UserMode

KernelMode

Device &File Sys.Drivers

WinLogon

Session ManagerServices.Exe POSIX

Windows DLLs

Plu

g an

dP

lay Mg

r.

Po

wer

Mg

r.

Secu

rityR

eference

Mo

nito

r

Virtu

alM

emo

ry

Pro

cesses&

Th

reads

Lo

calP

roced

ure

Call

GraphicsDrivers

Kernel

Hardware Abstraction Layer (HAL)

(kernel mode callable interfaces)

Co

nfig

ura-

tion

Mg

r(reg

istry)

OS/2

Windows

SystemThreads

NTDLL.DLL

Ciclo Escolar 2013-2014B

Page 19: Historia so

Casos de estudio (Linux/Windows)

Al final del día, en la práctica, ambos se pueden clasificar como monolíticos: Todo el núcleo del sistema operativo y sus servicios se ejecutan

en un espacio de direcciones compartido y en modo kernel. El núcleo y los servicios forman parte de un módulo

En Linux: vmlinuz En Windwos: ntoskrnl.exe

La interfaz gráfica de usuario se maneja diferente En Windows es un subsistema del kernel En Linux se maneja en modo usuario

Device Drivers

Process Management,

Memory Management, I/O Management, etc.

Win32Windowing

Application

System Services

User ModeKernel Mode

Hardware Dependent Code

Windows

Device Drivers

Process Management,

Memory Management, I/O Management, etc.

X-Windows

Application

System Services

User ModeKernel Mode

Hardware Dependent Code

Linux

Ciclo Escolar 2013-2014B

Page 20: Historia so

Casos de estudio (Linux/Windows)

También es modular por: Opciones en tiempo de compilación La mayoría de los componentes del

kernel pueden ser construidos para cargarse de forma dinámica (DLKMs)

DLKMs Se pueden construir de forma

separada del núcleo principal. Se cargan en el kernel en tiempo de

ejecución y sobre demanda. Los módulos del kernel pueden ser

actualizados. Se pueden configurar kernels

mínimos.

Portabilidad La codificación se realiza

principalmente en C y es libre. Arquitecturas:

Alpha, ARM, ARM26, CRIS, H8300, x86, IA-64, M68000, MIPS, PA-RISC, PowerPC, S/390, SuperH, SPARC, VAX, v850, x86-64

Requiere memoria > 4MB La gran mayoría del supercómputo

usa Linux (diferentes distribuciones)

También es modular, pero en menor grado:

La inclusión de nuevos drivers extienden la funcionalidad del kernel.

Algunas versiones cuentan con herramientas para configurar kernels más a la medida.

Los drivers son cargados dinámicamente como módulos

Una cantidad significativa código se ejecuta como drivers.

Se construyen de manera independiente del kernel

Pueden ser cargados por demanda. Portabilidad

La codificación se realiza principalmente en C y no es libre

Arquitecturas x86, MIPS, PowerPC, Alpha, IA-64, x86-64

Requiere memoria > 64MB Solo un par de supercomputadoras

usan Windows (versión Server)

Linux Windows

Ciclo Escolar 2013-2014B

Page 21: Historia so

Sistema Operativo (Android)

Ciclo Escolar 2013-2014B

Page 22: Historia so

Arranque y activación

El arranque de una computadora actual tiene dos fases: La fase de arranque del hardware La fase de arranque del SO

S.O (Wnd, Linux, Mac OS X)

HDD

RAM

Test del Hardware

S.O.-Test del sistema de archivos- Creación de ED

internas- Completa carga del

SO residente- Creación de proceso login

S.O.-Test del sistema de archivos- Creación de ED

internas- Completa carga del

SO residente- Creación de proceso login

CPU

ROM

Carga en memoria delcargador del SO

Bajo el control del Inicador ROM

Carga enmemoriaComponentesdel SO

Bajo el control del Cargador del SO

Inicialización bajo el controlde la parte residente del SO

Arranque del Hardware Arranque del SO

Ciclo Escolar 2013-2014B

Page 23: Historia so