Está en la página 1de 63

Sistemas Operativos

Evolucin, categoras y
caractersticas generales
Definicin
Un SO es un programa(s) que acta
como intermediario entre el usuario y
los componentes fsicos del sistema
(hardware)
El propsito principal del sistema
operativo es el de hacer conveniente
y eficiente el uso de los
componentes fsicos
Programa que est corriendo todo el
tiempo
Aplicacin

Una aplicacin es cualquier otro


programa que no sea el sistema
operativo
Componentes Bsicos de un
sistemas de computadoras

HARDWARE
Sistema Operativo
Aplicaciones
Y el usuario
Los componentes bsicos del
Hardware

CPU
Periferales de entrada y salida ( I/O)
memoria
Diagrama de un Sistema
Operativo

User #n
User#1 User#2 User#3

Compiladores Editores Juegos Hojas de Clculo

Sistema Operativo

HARDWARE
SO programa de Control

Un programa de control es el que


dirige la ejecucin de programas, para
prevenir errores y el uso impropio de
la computadora.
Su mayor responsabilidad son los
periferales (I/O)
Evolucin de los Sistemas
Operativos

Simple Batch Systems


Multiprogrammed Batch Systems
Time Share or Multitasking
Parallel Systems
Distributed Systems
Real time systems
Simple Batch System

Surguieron por la necesidad de


controlar los periferales I/O.
Los CPUs aunque eran relativamente
rpidos, eran extremadamente
ineficientes pues tenan que esperar
por los periferales para poder
continuar.
Los trabajos se dejaban por lotes
(batch) para que el CPU los procesara
en orden
Simple Batch Systems

El orden en que se ejecutaban las


tareas era en forma secuencial
Segn los periferales aumentaban la
velocidad, los CPUs hacan lo mismo,
acrecentando el problema de
sincronizacin (Los CPUs son mucho
ms rpidos que los periferales)
BUFFERS?

Los buffers aparecen con la llegada de


los discos duros.
Los buffers aliviaron el problema de la
sincronizacin.
Los buffers aumentaron la eficiencia
de los SO por que los CPU ya no
tenan que leer la data directamente
de los periferales sino que lean los
datos desde el disco/buffer.
SPOOLING?

S imultaneous
P eripheral
O perations
ON
L - ine
Cal es el propsito de
SPOOLING?

El propsito de SPOOL es el de
aumentar la eficiencia del SO,
mediante la tcnica de leer o escribir a
periferales desde el disco.
El SO puede estar leyendo desde un
periferal al mismo tiempo que
haciendo clculos o escribiendo a otro
dispositivo
MULTIPROGRAMMED
BATCHED SYSTEM

Surgen a raz de la tcnica de


SPOOLING
Proveen la capacidad de escoger cual
tarea ejecutar primero y cal
despes.
job scheduling?

Ocurre job scheduling cuando el


sistema operativo tiene que tomar una
decisin entre un job y otro, en
cuanto a cal cargar primero en la
memoria (por concepto de prioridad).
Cuando la decisin es sobre qu job
tomar el CPU; se conoce como CPU
scheduling
Time Sharing Systems
Multitasking Systems

Es la extensin lgica de
multiprogramming
Ejecuta varios jobs alternndolos
basado en tiempo de acceso al CPU
Permite ejecutar varios procesos al
mismo tiempo con slo un
procesador.
Permite el uso de mltiple usuarios
simultneamente
Virtual Memory?

Es la tcnica utilizada cuando


queremos cargar un programa en
memoria y ste no cabe.
Consiste en cargar una porcin del
programa en memoria y la otra en el
disco, alternando segn se necesite.
Qu es un proceso?

Es un programa que se ha cargado a


la memoria y se esta ejecutando.
Qu es un thread?

Se puede definir un thread como: un


proceso corriendo en el espacio de
otro.
Ser asunto del pasado los
Multiprogrammed y los
Multitasking Systems?
No, los sistemas operativos modernos
utilizan grandemente los conceptos de
los multiprogrammed, multitasking
systems.
Sistemas Paralelos o
Multiprocesing Systems

Sistemas paralelos o multiprocesos


consisten en varios procesadores
compartiendo recursos como
periferales, bus, system clock, y hasta
en ocasiones la misma memoria.
Aumentar el nmero de
procesadores aumentar la
eficiencia/velocidad?
N procesadores no significa N aumento en
la velocidad.
Aunque si es cierto que habr un aumento
en la velocidad, el aumento no ser
proporcional al nmero de procesadores.
Existe un overhead para poder coordinar
las operaciones entre los procesadores
N procesadores no significa N trabajo
realizado
Cando se utilizan los
sistemas paralelos?

Se utilizan los sistemas paralelos o


multiprocesing cuando la
confiabilidad es un factor
indispensable.
Es decir, se utilizan los sistemas
parallelos cuando queremos fault
tolerant systems sistemas tolerantes
a fallas.
Ej. Reactor Nuclear, controlador de
trenes, controlador areo, etc.
Si tenemos 10 procesadores y
uno de ellos falla qu sucede?

Habr una falla de 10% y n de un


100%
El sistema operar un 10% ms lento,
pero todava estar operando a un
90% de la eficiencia.
An cuando el sistema dae 9
procesadores, todava estar
operando un 10%.
Multiprocesamiento
Simtrico

Una copia exacta del sistema


operativo se instala en cada uno de
los procesadores.
Estas copias del SO se comunican
entre ellas segn ellas lo necesiten.
Como cada procesador podr ejecutar
un proceso, habr N procesos
corriendo simultneamente, sin daos
mayores a la eficiencia.
Deficiencias
Multiprocesamiento
Simtrico
Pueden haber procesadores
sobrecargados de trabajo y otros con
poco o ninguno
Para mantener este esquema el
sistema operativo necesita asegurarse
que el I/O llegue al procesador
correspondiente.
Multiprocesamiento
Asimtrico

Es el esquema de procesamiento en
donde tenemos un Jefe y varios
esclavos.
El jefe mantiene el control de los
dems procesadores esclavos
Pueden distribuirse una misma tarea o
distribuirse por procesos diferentes
Sistemas Distribudos

Estos sistemas contrario a los


anteriores, no comparten, el bus, el
clock o la memoria
Cada uno tiene sus propios recursos
Se comunican a travs de cables,
lneas de telfonos, microondas, etc.
Varian en tamao y funcin pueden
incluir Mainframes, PCs, Minis, etc.
Sistemas Distribudos

Cada procesador distribudo se


conoce de varios nombres segn el
contexto por ejemplo:
Nodo
Site
Computadora
Ventajas de los Sistemas
Distribudos

Compartir Recursos (Data, Periferales,


etc )
Opcin en velocidad de ejecucin
Confiabilidad
Comunicacin
http://infytel.bc.inter.edu/jarodriguez/in
dex.html
Real Time Systems

Son sistemas operativos


especializados en responder a
situaciones con una eficiencia ptima.
Tipos de Real Time Systems

Hard Son los que controlan equipos


que envuelven riesgo de prdida de
vidas humanas
Soft No implican riegos de prdidas
humanas
Para informe oral
Historia
Fotos de cmo se ve (GUI o no)
Comandos ms relevantes
Sistema de Archivos
Seguridad
Aguanta coneccin para redes
Qu conceptos discutidos en clase aplican
(multitasking, multithreading, entre otros)
10 minutos ni ms ni menos
Historia de los OS

UNIX 1968 Primer OS en ser Multitasking,


Multiusuario, 8 Bits
MS-DOS 1980 Primer OS en ser utilizado en
computadoras personales 16 bit
MAC-OS 1984 Primer OS en utilizar un GUI.
16 bits
Windows 1990 Primer OS con GUI para las PC
3.0
Historia
Windows 1993 Primer OS en utilizar peer to
3.11 peer Networking en PC 16 bits
Windows 1993 Primer OS de 32 bits que era
NT (new multitasking y network
technology ready.Workstation y Server
) version
Window 1995 OS de 32 bit que provea
95 compatibilidad con
aplicaciones de 16 bits
Win 98 1998 Corrige errores de win 95
Historia
Windows 2000 Mejora de NT 15m VS 45 Meg
2000 lneas de cdigo. Versiones
Professional, Server, Advance
Server, Data Center
Windows 2000 Sucesor de Win 98. Diseado
ME para uso domstico
Window 2001 Viene versiones Home,
XP Professional, Table PC y Media
Center
Win Server 2003 32/64 bits. Standard, Web Ed,
2003 Enterprise Ed, Datacenter Ed
Graphical User Interfase - GUI

Es el ambiente grfico de ventanas,


botones e iconos que facilitan el
manejo del sistema operativo.
Es uno de los componentes que ms
cambia entre los distintos sistemas
operativos y an entre las versiones
de un mismo sistema.
API Application
programming interface
Son las reglas o instrucciones que
provee el sistema operativo para que
las aplicaciones se puedan comunicar
con l.
Traduce los pedidos de las
aplicaciones a cdigo que el OS
puede entender
Provee una interfase para que el BIOS
se pueda comunicar con el OS y
viceversa
BIOS Basic Input/Output
System

Inicializa y permite la comunicacin


con los dispositivos del Hardware
Realiza pruebas a los dispositivos al
momento de encender la mquina
Dirige la comunicacin bsica entre el
HW y el SW
Levanta al sistema operativo para
interacte con el usuario
BIOS Basic Input/Output
System

Cada computadora tiene uno


Se almacena en memoria ROM (Read
Only Memory)
El OS interacta con el BIOS cuando
realiza transacciones de I/O
EFI = Intel BIOS 64 bits

EFI Extensible Firmware Interface


Nuevo standard de Intel Corp para
procesadores de 64 bits Itanium
Los OS Windows 64 no trabajarn a
menos que sus procesadores tengan
EFI.
ROM Read Only Memory

Es un tipo especial de memoria que no


pierde su contenido cuando se corta la
energa elctrica
Device Drivers

Son las instrucciones/software que


permiten al OS comunicarse con el
dispositivo en cuestin
Necesitan una direccin(address) para
que el OS pueda enviar y recibir
mensajes
Ej. Una impresora necesita instalar el
Driver de ella para que el OS se pueda
comunicar
CMOS Complementary
Metallic Oxide Semiconductor

Chip que guarda la configuracin del


BIOS
Mantiene la informacin con una
batera
Client/Server

Servidor Computadora principal de


una red. Administra los recursos de
una red. (Acceso, Aplicaciones,
Usuarios, entre otros)
Cliente Cualquier dispositivo /
computadora que solicite un servicio al
servidor.
Sistema Operativo

Entender cmo trabaja el sistema


operativo es entender como funciona
la computadora. Esto se debe a que el
Sistema operativo maneja cada pieza
del Hardware y del Software. En
trminos simples es el Gerente
General
El Sistema Operativo Controla

Los Archivos (Files)


Los dispositivos (devices),
La memoria
El procesador
Es el espritu de la computadora
Componentes de un Sist. Ope.

Memory Manager
Processor Manager
Device Manager
File Manager
Funciones de los Distintos
Managers

Monitorear sus recursos


constantemente para determinar
quin, qu, cuando o cuanto
Hacer cumplir las reglas del OS
Aadir o remover recursos cuando sea
apropiado
Componentes del OS
CPU RAM
Processor Memory
Manager Manager

Program
File
Keyboard Device File Data
Manager Manager File
Ratn
Compiladores
Impresora

Monitor
Memory Manager

Se encarga de administrar la memoria


principal (RAM)
Verifica la validez de cada pedido de
memoria (request)
Si es vlido el pedido, lo coloca en
algn lugar de la memoria que no est
en uso.
Memory Manager

En un ambiente multiusuarios, crea


una tabla que mantiene al tanto al OS
de que espacio est utilizando cada
usuario
Elimina los programas o usuarios que
no estn utilizando la memoria
(Deallocate)
Maneja el espacio que ocupa el propio
OS en la memoria.
Processor Manager

Maneja los procesos que se llevan a


cabo en el CPU
Determina que proceso tiene ms
prioridad que otros
Determina el tiempo que le asignar a
cada proceso para ejecutar
Processor Manager

Mantiene el status de cada proceso


(programas en ejecucin).
Maneja las transiciones de cada
proceso (cuando esperar por I/O,
cuando est durmiendo o esperando
por algn recurso y cuando termina
Se puede comparar con un semforo
de transito
Device Manager

Monitorea cada dispositivo, canal y la


unidad de control
Su trabajo es escoger la manera ms
eficiente de asignar los dispositivos del
sistema (impresoras, discos, teclado,
entre otros)
Seala el comienzo y el fin de la tarea
a realizar (ej. Comienzo y final de un
documento a imprimir).
File Manager

Rastrea cada archivo presente en el


sistema
Asigna o determina su tipo (Data file,
system file, executables)
Controla el acceso a cada archivo
dependiendo de sus permisos/policies:
Read, Write, Exec, Delete, etc.
Asigna los recursos necesarios para
abrir, leer, escribir, cerrar los archivos,
Si se ejecutara una instruccin
de algn programa

El device manager recibe el impulso


elctrico del teclado o del ratn u otro
dispositivo.
Se decodifica en forma de comando.
Se enva por el User Command
interfase, al Processor Manager donde
ser validado.
Si se ejecutara una instruccin
de algn programa

El Processor Manager podra enviar el


mensaje al dispositivo de la tarjeta de
video para ser presentado en pantalla
El Processor Manager puede
determinar si tiene que ir al Disco Duro
a buscar informacin o si ya est en
memoria puede notificarle al Memory
Manager para que se actualice
Si se ejecutara una
instruccin de algn programa

Si el prog. Esta grabado, el File


Manager calcula la posicin excta en
el disco y lo pasa al Device Manager.
Este a su vez, comunica esta
informacin al Memory Manager quien
determinar si cabe en la memoria y
donde y cuanto se guardar en la
memoria
Si se ejecutara una instruccin
de algn programa

Una vez en la memoria, el Memory


Manager, rastrea la localizacin y el
progreso del programa que est
siendo ejecutado por el Processor
Manager.
Si el programa termina el Processor
Manager enva un mensaje al Device
Manager para que muestre en pantalla
(si fuera ese el caso) para que el
KERNEL del Sistema
Operativo

Es el corazn o ncleo del OS


Coordina funciones tales como
Manejo de memoria
Almacenaje a los disco
El KERNEL se comunica con:

API
BIOS
Device Drivers
Resource Manager
Resource Manager

Son programas que regulan el uso de


la memoria y el CPU

También podría gustarte