Está en la página 1de 17

Licenciatura en Ciencias de la Computacin

Sistemas
Operativos

M.C. Luis R. Basto Daz


luis.basto@uady.mx

Qu es un sistema operativo?
Un
programa
que
acta
como
intermediario entre el usuario y el
hardware de la computadora.
Objetivos del Sistema Operativo:
Proveer un ambiente en donde el usuario
pueda ejecutar programas y solucione sus
problemas de manera ms fcil.
Permitir el uso cmodo de la Computadora.
Utilizar el hardware de la computadora de
una manera eficiente.
Elabor: M.C. Jorge Gmez

Componentes de una Computadora


1. Hardware. Proporciona los recursos bsicos de una
computadora (CPU, memoria, dispositivos E/S).
2. Sistema Operativo. Controla y coordina el uso del
hardware entre diferentes aplicaciones para
diferentes usuarios.
3. Programa de Aplicacin. Define la forma en que los
recursos del sistemas son utilizados para resolver
los problemas computacionales del usuario
(compiladores, sistemas de bases de datos, video
juegos, etc).
4. Usuarios (personas, otras computadoras).
Elabor: M.C. Jorge Gmez

Vista de un sistema computacional

Elabor: M.C. Jorge Gmez

Perspectiva del usuario (1)

PC.

Los recursos slo son utilizados por un usuario.


S.O. diseado con facilidad de uso.
Cierta atencin al funcionamiento, casi nula para
la utilizacin de los recursos.

Mainframes.

Recursos
compartidos,
intercambio
de
informacin.
S.O. diseado para maximizar la utilizacin de
los recursos.
Asegura que los tiempos disponibles de CPU,
memoria, E/S son utilizados eficientemente
Elabor: M.C. Jorge Gmez

Perspectiva del usuario (2)


Estaciones de trabajo.
Computadoras conectadas con servidores. Sus
usuarios cuentan con recursos dedicados a ellos
pero tambin los comparten
S.O. diseados con compromisos entre la
usabilidad y la utilizacin de recursos

Handheld.
Sistemas personales con limitaciones de poder e
interface
S.O. diseados para la usabilidad individual.

Elabor: M.C. Jorge Gmez

Perspectiva del sistema


Asignador de recursos.
Administra y organiza los recursos.

Programa de control.
Control de los dispositivos de E/S y
programas de usuario para prevenir errores
y el mal uso de la computadora.

Kernel.
Elabor: M.C. Jorge Gmez

Evolucin de los sistemas operativos


Sistemas Mainframe
Las supercomputadoras fueron las primeras usadas
para resolver problemas comerciales o cientficos.
De estas computadoras parte la evolucin de los
S.O.

Sistemas de procesamiento por Lotes (Batch)


El usuario no interactuaba directamente con la
computadora.
En cambio, el usuario preparaba un trabajo y lo
introduca a la computadora (tarjetas perforadas).
Despus se obtena un resultado impreso
generalmente en papel.
Elabor: M.C. Jorge Gmez

Sistemas de procesamiento por Lotes (Batch)


Para acelerar el procesamiento se desarroll el
sistema de procesamiento por lotes
La idea era colectar un grupo de trabajos (batch) y luego
introducir el lote completo a la computadora

Los sistemas operativos en esta poca eran muy


simples y el trabajo principal del S.O. era transferir el
control de manera automtica de un trabajo a otro.
Al terminar con todo el lote, un operador retiraba las
cintas de entrada y salida, introduca la nueva cinta
con el Lote e imprima la cinta de salida.

Elabor: M.C. Jorge Gmez

Procesamiento de trabajos

Elabor: M.C. Jorge Gmez

10

Organizacin de la memoria en un sistema de


procesamiento por lotes

Elabor: M.C. Jorge Gmez

11

Sistemas de Multiprogramacin
Con la mejora de la tecnologa y la introduccin
de los discos se tuvieron dispositivos ms rpidos
de E/S.
Permiti a los sistemas operativos almacenar los
trabajos en dichos discos en lugar de cintas o tarjetas
perforadas

Esto permiti a los S.O. acceder directamente a


varios trabajos por lo que los S.O. tenan
algoritmos incipientes de Calendarizacin de los
trabajos, con el propsito de realizar las tareas y
usar los recursos eficientemente.

Elabor: M.C. Jorge Gmez

12

Sistemas de Multiprogramacin
Uno de los aspectos ms importantes de la
multiprogramacin es la calendarizacin de
trabajos.
La multiprogramacin incrementa la utilizacin
del CPU mediante la organizacin de los
trabajos de tal forma que siempre hay un
proceso para ejecutar.
La idea es partir la memoria en varias partes,
con un trabajo distinto en cada particin
Mientras que un programa esperaba a que terminar la
operacin de E/S, otro podra utilizar la CPU

Elabor: M.C. Jorge Gmez

13

Sistemas de Multiprogramacin
No obstante, el nmero de particiones que se podan
hacer en memoria era muy inferior a la cantidad de
trabajos que se podan almacenar en los discos.
Entonces otra caracterstica de esta generacin de S.O.
fue la utilizacin de SPOOLING (Simultaneous
Peripheral Operational On Line), que consista en poder
cargar del disco un nuevo trabajo cuando conclua otro.
La multiprogramacin es de las primeras instancias en
donde el S.O. tiene que tomar una decisin por el
usuario.

Elabor: M.C. Jorge Gmez

14

Sistemas de Multiprogramacin
Si varios procesos estn listos para ser
cargados a la memoria y no hay suficiente
memoria, el S.O. debe escoger entre ellos.
(calendarizacin de procesos)
Si se tienen varios procesos en memoria
entonces es necesaria una Administracin de la
memoria
Si varios procesos estn listos para ejecutarse
al mismo tiempo, es necesaria entonces una
Calendarizacin del CPU
Elabor: M.C. Jorge Gmez

15

Sistemas de Multiprogramacin

Elabor: M.C. Jorge Gmez

16

Sistemas de multiprogramacin
Qu pasa cuando tenemos un proceso
que por mucho tiempo no necesita
realizar operaciones de entrada/salida
Conforme el uso de la computadora
evolucion a un modo mucho ms
interactivo la multiprogramacin por s
sola ya no satisfaca
Elabor: M.C. Jorge Gmez

17

Multitarea cooperativa
Procesos o tareas que
voluntariamente
tiempo
a
procesos

ceden
otros

Qu pasaba si un proceso que tena la


cpu se colgaba
Colapso del sistema

Elabor: M.C. Jorge Gmez

18

Sistemas de tiempo compartido


Los sistemas de tiempo compartido o Multitarea son
una extensin lgica de la multiprogramacin.
El cpu ejecuta mltiples trabajos intercambiando
entre uno y otro, pero el intercambio es tan frecuente
que el usuario puede interactuar con cada programa
mientras se ejecuta.
El tiempo compartido es otorgado por el hardware y el S.O.

Por lo tanto, un S.O. multitareas permite a muchos


usuarios compartir la computadora simultneamente.

Elabor: M.C. Jorge Gmez

19

Tiempo compartido
En un sistema de tiempo compartido cada
accin y comando solo necesita tiempos
cortos de CPU para cada usuario.
De esta forma, mientras el sistema cambia
rpidamente de un usuario a otro, da la
impresin que todo el sistema est dedicado
para su uso.
Reparto equitativo de los recursos

Elabor: M.C. Jorge Gmez

20

10

Tiempo Compartido
Un S.O. de tiempo compartido debe utilizar
calendarizacin del CPU y multiprogramacin
para proporcionarle a cada usuario una
pequea porcin del tiempo del sistema.
Al programa cargado en la memoria y que se
est ejecutando se le llama proceso.
Los procesos pueden necesitar operaciones
de E/S, en ese lapso, el S.O. le asigna el
procesador a algn otro usuario.
Elabor: M.C. Jorge Gmez

21

Tiempo compartido
Los S.O, de tiempo compartido
necesitan administracin y proteccin
de la memoria.
Para mantener tiempos razonables de
respuesta, los procesos pueden ser
cargados y descargados (swap) de la
memoria principal hacia el disco, el cual
sirve como un almacn temporal para la
memoria.
Elabor: M.C. Jorge Gmez

22

11

Tiempo compartido
Memoria Virtual
Es una tcnica comn para lograr el swap.
Permite la ejecucin de un proceso que no puede
ser completado en la memoria.
La principal ventaja de la memoria virtual es que los
programas pueden ser ms grandes que la memoria
fsica.
Memoria virtual abstrae la memoria principal en un
gran
arreglo
uniforme
de
almacenamiento,
separando la memoria lgica vista por el usuario de
la memoria fsica.

Elabor: M.C. Jorge Gmez

23

Tiempo compartido
Los sistemas de T.C. deben proporcionar un
sistema de archivos.
Necesario una administracin de archivos

Tambin, proporcionan un mecanismo para


la ejecucin concurrente, lo que requiere de
esquemas complejos de calendarizacin del
CPU
Para asegurar la ejecucin ordenada, el
sistema debe proporcionar mecanismos para
la sincronizacin y comunicacin de
procesos.
Elabor: M.C. Jorge Gmez

24

12

Sistemas de Escritorio
Las pc aparecieron en 1970. Al principio los
S.O. de estos sistemas no fueron ni
multiusuarios ni multitareas.
Los principales objetivos de estos sistemas
es maximizar la conveniencia y tiempo
respuesta.
Pueden adoptar tecnologa desarrollada para
S.O. grandes (mainframes)
Dado que el usuario no tiene que compartir el
CPU, su mxima utilizacin ya no es una
preocupacin primaria
Elabor: M.C. Jorge Gmez

25

Sistemas Multiprocesadores
La mayora de los sistemas actuales son de
un solo procesador.
Sin embargo los sistemas que tienen ms de
un procesador (sistemas paralelos o
multiprocesadores) cada da crecen ms en
importancia.
Principales Ventajas
Incremento del rendimiento
Economa en escalabilidad?
Confiabilidad, tolerancia a fallas
Elabor: M.C. Jorge Gmez

26

13

Sistemas Multiprocesadores
Multiprocesamiento simtrico (SMP)
Cada procesador ejecuta una copia idntica del
sistema operativo.
Muchos procesos pueden correr al mismo tiempo
(tantos procesos como procesadores) afectando
poco el desempeo.
Este tipo de sistemas permite compartir
dinmicamente los procesos y recursos entre
varios procesadores.
La mayora de los sistemas modernos soportan
SMP
Elabor: M.C. Jorge Gmez

27

Sistemas Multiprocesadores
Multiprocesamiento asimtrico
Cada procesador tiene asignada una tarea
Un procesador maestro controla el sistema
Calendariza y asigna
procesador esclavo.

Comn en
grandes

sistemas

Elabor: M.C. Jorge Gmez

procesos

cada

extremadamente

28

14

Sistemas Distribuidos
Los sistemas distribuidos estn basado en las redes de
computadoras y su funcionalidad depende del trabajo
en redes.
Cada procesador tiene su propia memoria local.
Los procesadores se comunican entre ellos utilizando
las redes de comunicaciones.
Existen sistemas cliente-servidor o peer to peer
Sistema operativo de red, proporciona caractersticas
de trabajo en red, incluye esquemas de comunicacin
que permite a diferentes procesos en diferentes
computadoras intercambiar mensajes.
Elabor: M.C. Jorge Gmez

29

Sistemas en grupos (Cluster)


Al igual que en lo sistemas paralelos, los
clusters de computadoras agrupan mltiples
CPUs para realizar un trabajo computacional.
Una capa de software se ejecuta en cada
nodo del cluster. De esta manera, cada nodo
puede monitorear uno o ms de los otros
nodos.
Dos tipo de clustering
Asimtrico (Un monitor para el servidor activo)
Simtrico (Todos se monitorean entre ellos)
Elabor: M.C. Jorge Gmez

30

15

Tarea 1
Caractersticas de los sistemas operativos
de tiempo real

Elabor: M.C. Jorge Gmez

31

Sistemas Porttiles
Asistentes personales digitales (PDAs)
Telfonos celulares
Caractersiticas
Memoria limitada.
Procesadores lentos.
Pantallas pequeas.

Elabor: M.C. Jorge Gmez

32

16

El futuro

Elabor: M.C. Jorge Gmez

33

17

También podría gustarte