Академический Документы
Профессиональный Документы
Культура Документы
Profesor:
Ciclo 2016-1
Introduccin al curso
Presentacion
Apellidos y nombre
que SSOO mas conoce?
que esperas aprender en clases?
Numero de crditos
Curso Acadmico
2016-1
Tipo de curso
Obligatorio
Ciclo
VI
Horas Semanales
4 horas presenciales
Prerrequisito
Arquitectura de Computadoras
Introduccin
Presentacin
qu esperan del curso?
Objetivos del curso y nuestro contrato
Nuestro contrato
Espero de ustedes:
Lean anticipadamente el material de clases
Participen en clases
Proporcionen retroalimentacin
Tomen en serio las tareas asignadas
Introduccin
Presentacin
qu esperan del curso?
Objetivos del curso y nuestro contrato
Horario
Teoria
Jueves de 7 a 11 pm.
Feriado
M
15
22
29
5
12
19
26
3
10
17
24
31
7
14
21
28
5
12
19
M
16
23
30
6
13
20
27
4
11
18
25
1
8
15
22
29
6
13
20
J
17
24
31
7
14
21
28
5
12
19
26
2
9
16
23
30
7
14
21
V
18
25
1
8
15
22
29
6
13
20
27
3
10
17
24
1
8
15
22
S
19
26
2
9
16
23
30
7
14
21
28
4
11
18
25
2
9
16
23
Trabajos autnomos
D
20
27
3
10
17
24
1
8
15
22
29
5
12
19
26
3
10
17
24
MAR
ABR
MAY
JUN
JUL
Sem Tema
Introduccion al curso
1 Procesos. Estados
2 Diagrama del UNIX
3 Interrupciones, Hilos.
4 Sincronizacion. HA1
5 Abrazo Mortal. QUIZ No. 1
6 Objetivos.
7 Algoritmos. HA 2
Examenes Parciales
8 Organizacin. Estrategias
9 Fija y Variable. HA 3
10 Antecedentes.
11 Paginada. Quiz # 2
12 Estrategias. HA 4
13 Drivers. Algoritmos HD
14 Fin de Clases 2 Jul
15 Examen Final
16 Examen Final
17 Examen rezagado
PPT
C1_introduccion
C2_administracion_procesos
C2_administracion_procesos
C2_administracion_procesos
C3_sincronizacion_procesos
C4_abrazo_mortal
C5_planificacion_cpu
C5_planificacion_cpu
C6_adm_memoria_real
C6_adm_memoria_real
C7_memoria_virtual
C7_memoria_virtual
C7_memoria_virtual
C8_dispositivos
Introduccin
Presentacin
qu esperan del curso?
Objetivos del curso y nuestro contrato
Horario
Planificacin del curso
Material de apoyo
Evaluacin
10
Material de apoyo
Campus virtual
Todas las clases en pdf
Informacin de los trabajos (horas autnomas)
Bibliografia
11
Evaluaciones
Evaluacin
Porcentaje
Fecha
Examen Parcial
25 %
09 al 14 de mayo
Examen Final
25 %
06 al 12 de julio
Ponderacin y Cronograma para la Nota de Evaluacin Permanente (50% del Promedio Final)
Ponderacin
Desagregada
Tipo de Evaluacin
(de la Evaluacin
Permanente) (50%)
Promedio de
Prcticas
100%
Ponderacin Desagregada
(por Tipo de Evaluacin)
Semana
(%)
(%)
Nota
final
N
Descripcin
1
Prctica 1
15
7.5
3 (*)
Evaluacin Contnua 1
20
10
4 (*)
Prctica 2
15
7.5
6 (*)
Prctica 3
15
7.5
9 (*)
Evaluacin Continua 2
20
10
11 (*)
Prctica 4
15
7.5
12 (*)
Fecha
TOTAL 100
50
No se elimina ninguna Prctica ni Evaluacin Continua. No hay Prctica ni
Evaluacin Continua Rezagada. (*) Por confirmar
Introduccin
Presentacin
qu esperan del curso?
Objetivos del curso
Horario
Planificacin del curso
Material de apoyo
Evaluacin
Recomendaciones
13
En cualquier sitio
ALU
Address Bus
CPU
CU
Address Bus
RAM
Data Bus
I/O
Data Bus
Control Bus
Ha aumentado la complejidad
17
Preguntas:
El programador necesita escribir un programa unico que desarrolle
muchas actividades independientes?
Por cada HW, el programa tiene que ser alterado?
18 los HW?
Un programa que tenga acceso a todos
Hola mundo
Android
qu es un sistema operativo?
21
qu es un sistema operativo?
22
qu es un sistema operativo?
Magia!
Existe un gran nmero de definiciones:
Pruebe en Google con define: Operating System
Sistemas Operativos
SO interfaz
usuario
Applicaciones
GUI
CLI/shell
usuario
Interfaz llamada al sistema
kernel
Procesos
Drivers
Dispositivos
E/S
Manejo de
errores
File
systems
Memoria real
y virtual
hardware
25
Comunicaciones
Con la red
Proteccion
y seguridad
25
Hardware / Software
1.
2.
3.
4.
5.
OS
boot
OS
Segn su experiencia :
En el uso de un sistema operativo qu ventajas encontr?
28
29
Firmware ?
Word processor?
Window manager?
Windows Control Panel?
Device driver?
Browser?
Anti-virus?
31
32
$END
DATOS
$RUN
$LOAD
PROGRAMA
$FORTRAN
$JOB 10,47 DUPONT
33
34
35
Uniprogramacin a Multiprogramacion
Ejecucin.
Ejecucin.
espera
espera
tiempo
Se basan en el hecho de que los dispositivos de E/S son lentos
comparados con el procesador
Leer un registro
Ejecutar 100 instrucciones
Escribir un registro
TOTAL 0,0031 segundos
0,0015 segundos
0,0001 segundos
0,0015 segundos
La Multiprogramacin
128K
Proceso 1
Proceso 2
Proceso 3
Proceso 4
KERNEL
(MONITOR)
38
La multiprogramacin
39
La multiprogramacin
CPU
T1
E/S
T2
T2
T1
E/S
CPU
T1
T1
T2
Sin
T2
T1
T2
T1
T2
40
con
El Spooling
ARCHIVO SPOOL
DE SALIDA
ARCHIVO SPOOL
DE ENTRADA
DISCO
IMPRESORA
DE LINEA
LECTORA
TARJETAS
CPU
41
El Tiempo Compartido
Quantum
CPU
Tiempo Compartido
Multiprogramado
CPU multiplexada.
Interactivo
comunicacin on-line entre usuario y sistema (pequeas rodajas de
tiempo)
Sistema de Archivos
permite a los usuarios el acceso a datos y cdigo (operaciones de E/S)
Intrprete de mandatos
Permiten arrancar otros programas.
Multiusuario
varios usuarios simultneos
cada usuario cree tener todo el computador
44
45
46
SO
SO
SO
Red de
comunicacin
SO
SO
47
Ejemplo de SO de Red
48
49
Ejemplos SO Distribuidos
50
SO Paralelos
Sistemas multiprocesador o fuertemente acoplados.
Numerosas Ventajas:
Incremento del throughput.
Ms barato.
Ms confiable.
aplicaciones
52
Caracteristicas
Proporcionar rpidos tiempos de respuesta.
Proceso de mayor prioridad expropia recursos.
Gestin de memoria menos exigente. Usualmente
procesos son residentes permanentes en memoria.
Poblacin de procesos esttica en gran medida.
Poco movimiento entre almacenamiento secundario y
memoria.
Gestin de archivos se orienta ms a velocidad de acceso
que a su eficiencia.
53
Areas de Aplicacin:
STR Criticos
STR suave
multimedia, comunicaciones, etc.
Sistemas Abiertos
Recuperacin software
diseo programas para recuperarse de fallas
56
Sistemas Ubicuos
Googles Android
Apples iOS
Microsofts Windows Phone
RIMs BlackBerry OS
que es Android?
Que es Android?
Microsoft tiene cerca del 90% del mercado de Sos (solo desktop)
Complejidad
NT fue desarrollado desde los inicios de los 90s hasta fines 90s
5 aos en realizarlo
3 aos en realizarlo
62
Aumento en la complejidad de un SO
63
Linux
Fuente:
http://www.ibm.com/developerworks/linux/library/l-linux-kernel/
Configuracin de un Servidor
http://philip.greenspun.com/bboard/q-and-a-fetch-msg?msg_id=000tcP
20 Julio 2011
Linux
(2 horas)
Microsoft
(12 a 20 horas)
Linux setup
Tomcat Configuration
Mysql configuration
Firewall config
Server hardening
Windows setup
Update patches
Server config
.NET framework update & installIIS Config
Application Configuration
Server hardening -
40 mins
5 Mins
15 Mins
30 Mins
30 Mins
2 hrs
4hrs~8hrs
1 hr
20~40 Mins
30 Mins
1 hr
2hrs~5hrs.
Enfoques de diseo
Ncleos monolticos
Ejemplo: Linux, Windows, ...
Microkernels
Ejemplo: Mach kernel
66
Monolitico vs Microkernel
Gestor de procesos
Gestor de E/S (genrica y por bloques)
Servidores:
Servidor de ficheros
Servidor de proteccin y seguridad
Aplicaciones
Utilidades:
Intrprete de mandatos
Programas de sistema
68
Monoltico
Gestor de memoria
Microkernel
Bsicos:
Monitor monoltico
Procesos
de usuario
Proceso
de
usuario
Proceso
de
usuario
Proceso
de
usuario
SVC
Despertar
Intrprete
de la SVC
Desbloquear
Peticin
de E/S
Proceso de
la
interrupcin
Monitor
Dispositivos
Comienzo de la E/S
Interrupcin
69
Ejemplo : El UNiX
Programas de usuario
Bibliotecas
Trap
Nivel de usuario
Nivel kernel
Subsistema
Subsistema
control de procesos
de archivos
de E/S
Manejo de memoria
Buffer cache
IPC
Bloque
Carcter
Drivers
Planificador
Nivel kernel
Nivel hardware
Control hardware
HARDWARE
70
Modo usuario
Alto nivel
del ncleo
archivo
Manejador de
memoria
de
Manejador de
procesos
Sistemas
Manejador de
archivos
Interfaz de
sockets y
streams
Manejador de
terminales
Pila de red
Manejador
del buffer cache
Tabla de
dispatch
Manejador de
procesos de
bajo nivel
HARDWARE
71
Estructuras del
ncleo
(alto nivel)
Estructuras de
datos compartidas
entre el alto y
el bajo nivel
Manejadores de dispositivo
Manejador de interrupciones
Manejador
de callouts
Callout de
bajo nivel
Cambio
de contexto
Bajo nivel
del ncleo
Microncleo
Proceso
Proceso
Proceso
Proceso de de
usuario
dede
usuario
usuario
usuario
Lectura de disco
Proceso
gestionador
de
dispositivo
Dispositivo
Interrupcin
Despertar
Microncleo
Determinacin del
proceso que solicit
la E/S
72
Proceso de
la
interrupcin
Comparativa
Monitor monoltico
Microncleo
Todo el SO se ejecuta en
modo supervisor
Menos robusto
Ms robusto
El SO es ininterrumpible
El SO es interrumpible
Mayor rendimiento
Empleado en sistemas
pequeos
Empleado en sistemas
grandes
Difcil de modificar en
tiempo de ejecucin
Fcil de modificar en
tiempo de ejecucin
Menos adaptable
Ms adaptable
73
Procesos de sistema
Servicios
Controlador
de servicios
Aplicaciones
Subsistemas
POSIX
Replicador
Alertador
WinLogon
OS2
RPC
Manejador de
sesiones
Aplicaciones
DLLs
de usuario
DLLs
DLLs
Registrador
de eventos
Hilos del
sistema
Win32
NTDLL.DLL
API del ncleo
Manejador de
E/S
NtosKrnl.exe
Manejador
de cache
PnP
Control de
alimentacin
Sistema
de archivos
Seguridad
Memoria
virtual
Procesos
e hilos
Manejador de objetos
Manejadores de dispositivo
Kernel
HAL
HARDWARE
74
Win32
GDI
Hardware
76
Mquinas virtuales
Una MV crea una copia idntica del hardware
Procesador con su propia memoria y E/S
Sobre una MV se puede ejecutar cualquier SO
Sobre el mismo computador varios SSOO a la vez
multiproceso
multiplexacin E/S
MV del operador
Ventajas:
Proteccin sencilla, muy modular, bueno para investigacin y desarrollo (SO distribuido)
Inconvenientes:
Difcil compartir recursos
Difcil implementar duplicados exactos del HW
78
Objetivos de diseo
Implementacin
Arranque del sistema
80
Objetivos en el diseo de un SO
Para el usuario
Fcil de usar, fiable, seguro, potente y sencillo
Internamente:
Fcil de implementar y mantener
Flexible, fiable, eficiente y estar libre de errores
Base:
HAL ( Hardware Abstraction Layer)
Oculta los detalles especficos de la arquitectura
Proporciona una interfaz de alto nivel
82