Está en la página 1de 39

Sistemas Operativos

Visin general de los sistemas


operativos

Agenda
Introduccin
Computadoras

y software
Comparticin de recursos
Mquinas abstractas
Estrategias de sistemas operativos

Introduccin
SO

es como un director

Coordinar los componentes


individuales del
computador
Asigna los recursos del
computador a los diversos
programas
Eficiencia y funcionalidad
son claves

Qu es un sistema operativo?
Es un administrador de recursos
como si fuera un gobierno del hardware
programa de control
ojo, no realiza trabajo productivo

Es una interfaz con el hardware


aade caractersticas no existentes en el hw
oculta caractersticas inconvenientes del hw
mquina extendida

Elementos de un sistema
informtico
Hardware (lo tangible)
Software (programas, lo intangible)
software del sistema
aplicaciones

Personas (usuarios del sistema)


Usuarios
programadores

Computadores y Software
Software

se diversifica por su finalidad:

Software de aplicacin
Software del sistema
Sistema operativo

corta imprime
enva
guarda

malloc() open()
fork()

inicia-impresora
lee-disco
sigue-ratn

Software de
Aplicacin
Software de
Sistemas

Software de
Aplicacin
Software de
Sistemas

Software de
Aplicacin
Software de
Sistemas

hardware

hardware

hardware

Software del sistema general


Interfaz de programacin de

aplicaciones (API)

API Software
Interprete de
lnea de
rdenes
Compilador

Cargador

Sistema de
ventanas

Bibliotecas

Sistema Gestor
de Base de
Datos

SO
Software del sistema
Hardware

El SO como interfaz
Es una capa entre el usuario y el hardware.
La interfaz ofrece una mquina extendida que
es una abstraccin de la realidad.

Abstraccin de recursos

El software del sistema provee un modelo abstracto


de cmo funcionan los componentes del hardware.
Simplifica la forma como el programador de aplicaciones
controla el hardware.
Tambin limita la flexibilidad de cierto hardware concreto.

Abstracciones de nivel ms bajo estn el en SO, las


de nivel alto estn en el sw del sistema exterior al SO.
Definir un conjunto de abstracciones que sern
generalizadas para varios recursos.

Comparticin de recursos
El

SO conmuta el hardware entre los


programas a una velocidad muy
elevada.
Computadores pueden soportar una
autntica operacin simultnea en
algunos casos.
Programas concurrentes y paralelos,
deben compartir el mismo computador.

Mquinas abstractas y
comparticin transparente
Mquina

abstracta: es una simulacin


de un computador real.
Comparticin multiplexada en espacio y
en tiempo
Programa

Resultados

..
.

..
.

Programa

Resultados

Comparticin explcita de
recursos
Permiten

que los procesos usen recursos


comunes con su propia estrategia
Aislamiento de recursos: obligacin del SO de
prevenir el acceso no autorizado a los recursos
por una mquina abstracta, cuando estn ya
asignados.
Comparticin autorizada es deseable cuando
los procesos deben cooperar entre s, por tanto,
deben de poder acceder al recurso compartido

Resumen
Interfaz hombre-mquina

Software de Aplicacin
API
Software de Sistema
(recursos abstractos)
Interfaz SO
SO fiable
(recursos
abstractos)
Interfaz hardware-software
Recursos
Hardware

Estrategias de sistemas
operativos
Caractersticas generales de la mquina abstracta
del programador.
Criterios de negocio y de ingeniera:

Quin usar el computador?


Es la interaccin humana ms importante que el ritmo
al que se completan las tareas?
Habr mas de una persona a la vez en el computador?
Ser posible implementar una estrategia sin afectar de
aburrimientos las prestaciones del sistema completo?

Estrategias de sistemas
operativos

En los inicios:

Un solo programa todo el tiempo


No existe el SO
Aplicaciones para la defensa nacional
Acceso exclusivo a una mquina completa para el
programador para desarrollo y depuracin

En los 60s:
Usuarios esperaban la ejecucin concurrente
Necesaria la comparticin de recursos
Mquina abstracta y multiprogramacin

Estrategias de sistemas
operativos

Sistemas de procesamiento por lotes o tandas:


Sirve trabajos individuales de una coleccin de trabajos
predefinidos.
El SO especifica cada trabajo por medio de una lista de
ordenes predefinidas: especificacin de control de
trabajos
Usuarios no interactan con un trabajo.
Al completar el trabajo, se imprimen los resultados y se
devuelve al usuario.
Perspectiva del usuario: cada usuario prepara una tarea,
y despus las tareas se recolectan en un lote que se remite
al computador. Tras el cmputo del lote, se produce un lote
de listados de salida.

Estrategias de sistemas
operativos

Sistemas de procesamiento por lotes o


tandas:

Trabajo
19

Bobinadora de
entrada

Bobina de entrada

Trabajo
3

Bobinadora de
salida

Bobina de salida

Sistemas por lotes

Estrategias de sistemas
operativos

Sistemas de tiempo compartido


Varios usuarios interactivamente a la vez
Usuario establece una sesin interactiva con el computador
y proporciona operaciones, programas y datos.
SO proporcionara una respuesta adecuada en tiempo a los
usuarios
Gestin de los recursos y mecanismos de proteccin
Polticas de implementacin para compartir
equitativamente el procesador
Sistema multitarea: sistema multiprogramado de tiempo
compartido que soporta varios procesos por usuario.

Estrategias de sistemas
operativos
Computadores

personales y las
estaciones de trabajo
Mquina completa dedicada a un solo usuario
Para el SO es ms importante minimizar el
tiempo de espera para el usuario en ves de
maximizar la utilizacin del hardware.
El computador puede realizar diferentes
tareas concurrentemente.

El problema de la E/S
La E/S era muy lenta en comparacin con
la CPU.
Esto provocaba que la CPU quedara
ociosa mucho tiempo esperando por la
terminacin de operaciones de E/S.
Algunas tcnicas para tratar el problema:
Operacin fuera de lnea (offline)
Uso de bferes
Spooling

Operacin fuera de lnea (off-line)


El computador central dialoga directamente slo con
dispositivos rpidos (cintas magnticas).
Un pequeo computador (satlite o canal) se encarga de
las transferencias con dispositivos lentos (tarjetas,
impresora).

Operacin fuera de lnea (off-line)


Resultado:
mejor aprovechamiento del procesador central
ejecucin paralela de clculos y operaciones de E/S

Se puede incrementar la velocidad utilizando


varios satlites.
Los trabajos siguen usando los mismos servicios
para la E/S. Lo que cambia es su implementacin
en el S.O: independencia del dispositivo.

Bferes
Esquema de operacin de E/S en el que las
transferencias de E/S se realizan a travs de un rea
intermedia de memoria (bfer)
La operacin de E/S se realiza slo cuando el dispositivo
est preparado.

Bferes
La CPU slo espera por E/S cuando el
bfer est vaco (entrada) o lleno (salida)
El uso de bferes permite solapar
operaciones de E/S de una tarea con
instrucciones de CPU de esa misma tarea

Bferes
El uso de bferes no resuelve totalmente el
problema de la lentitud de los equipos de E/S
Los bferes slo sirven para amortiguar picos
de alta actividad de E/S.
Su eficacia depende fundamentalmente de
la velocidad de los equipos de E/S y del
tipo de tareas en ejecucin
Si la E/S es muy lenta, los bferes de entrada se
vacan y los de salida se congestionan.

Spooling
(Simultaneous Peripheral Operation On-Line)

Este esquema de funcionamiento de


operacin de la E/S surge gracias a la
aparicin de los discos
Se utiliza el disco como un enorme bfer.
El proceso lee/escribe sobre el disco, en
lugar del dispositivo de E/S.
Mientras se ejecuta un trabajo, el S.O.:
lee los datos del siguiente trabajo de la
cinta/tarjetas al disco
imprime la salida del anterior trabajo, del disco a
la impresora

Multiprogramacin
El modo de operacin offline y el spooling
aumentan el rendimiento de la CPU pero
tienen sus limitaciones
En algn momento la CPU quedar ociosa
esperando por alguna operacin de E/S
Al existir la posibilidad de tener varios
trabajos en un dispositivo de acceso directo,
como un disco, es posible la planificacin
de trabajos
El SO puede escoger qu trabajo ejecutara a
continuacin

Multiprogramacin
Cuando un proceso se bloquea al esperar por la E/S,
ejecutamos en la CPU instrucciones de otro proceso.
Los procesos entrelazan su ejecucin: concurrencia.
La CPU y la E/S trabajan a la misma vez se terminan
ms trabajos en menos tiempo

Multiprogramacin
Los sistemas multiprogramados son ms
complejos:
Cuando la CPU queda libre, a qu proceso
elegimos? (planificacin de la CPU)
conflictos por acceso simultneo a la E/S
(planificacin de dispositivos)
varios procesos a la vez en memoria (gestin
de memoria)
Proteccin
Solucin a situaciones de interbloqueo

Tiempo compartido (time sharing)


Multiprogramacin + interactividad = tiempo
compartido
Los sistemas por lotes no son interactivos (el usuario
no interviene durante la ejecucin)
Idea: la CPU reparte su tiempo entre los distintos
procesos.
Cada proceso dispone de una rodaja de tiempo
peridica. Si el periodo es lo bastante pequeo, el
usuario no lo percibe.

Tiempo compartido (time sharing)


Por tanto con el tc se consigue:
tiempos de respuesta cortos
Los usuarios tienen la impresin de poseer un
ordenador particular

Estrategias de sistemas
operativos
Sistemas

embebidos

Concebidos con la idea de controlar


sistemas autnomos, carecen de usuario
humano
Funciona como un componente de otro
sistema ms complejo
SO debe garantizar tiempos de respuesta
para ciertas tareas

Estrategias de sistemas
operativos
Sistemas

de tiempo real

Hay sistemas en los que el tiempo de respuesta


es crtico
Control industrial
Control de guiado de misiles
Autmatas (air bag, inyeccin electrnica,)
Asistencia mdica
Si
Siante
anteun
unevento
eventooosuceso
sucesoeleltratamiento
tratamientoadecuado
adecuado
no
nose
serealiza
realizadentro
dentro del
deltiempo
tiempoespecificado
especificado(muy
(muypequeo)
pequeo)
El
El Sistema
Sistema Falla!
Falla!

Estrategias de sistemas
operativos
Sistemas

de tiempo real

Un sistema de tiempo real es aquel en el que si el


proceso adecuado no se realiza dentro de unos lmites
de tiempo muy estrictos y muy pequeos, el sistema
falla

Dos niveles de exigencia

T.R.RIGUROSO
T.R.RIGUROSO
(hardreal
real time)
time)
(hard
quelas
lastareas
tareas
Garantizanque
Garantizan
crticasse
serealizan
realizanaatiempo
tiempo
crticas
memoriasecundaria
secundaria
Pocamemoria
Poca
ROM
RAM,ROM
RAM,
muysimple
simple
S.O.muy
S.O.

T.R.MODERADO
T.R.MODERADO
(softreal
real time)
time)
(soft
tareasde
deprioridades
prioridades
Mezclatareas
Mezcla
muydistintas
distintas
muy
paracontrol
control industrial
industrial
Nopara
No
paraMultimedia,
UtilesparaMultimedia,
Utiles
RealidadVirtual
Virtual
Realidad
Ej:VMS,
VMS,Unix,
Unix,Windows
WindowsNT..
NT..
-- Ej:

Estrategias de sistemas
operativos
Computadores

pequeos con capacidades de


comunicacin (SCC)
Incluyen los computadores mviles y los
inalmbricos
Mquinas pequeas, porttiles, diseados para las
comunicaciones
SO con nuevas polticas de gestin de recursos,
estrategias de gestin de energa, capacidad de
almacenamiento limitado, etc.
Tablet, set-top boxes, PDA.

Estrategias de sistemas
operativos
Tecnologa

de redes

Redes de alta velocidad

Computadores personales
Estaciones de trabajo
Sistemas de proceso por lotes
Sistemas de tiempo compartido,
Sistemas de tiempo real
Pequeos computadores

SO que gestiones recursos e informacin


entre las mquinas conectadas en red

Estrategias de sistemas
operativos
Sistemas

Paralelos

Para ciertas situaciones se necesita mucha ms velocidad

Este sistema no es 4 veces ms rpido!


- Comunicacin y sincronizacin
- Conflictos en accesos a recursos comunes
- No todo el cdigo es paralelizable.
Es ms fiable,
si falla uno, quedan tres.

Sistemas Tolerantes
a Fallos

Estrategias de sistemas
operativos
Sistemas

Distribuidos
Ventajas
Se comparte recursos
Impresoras, Ficheros,
Dispositivos, CPUs,...
Mayor velocidad (en clculo
distribuido)
Fiabilidad

Mltiples procesadores
Cada uno con su propio reloj y memoria

También podría gustarte