Lec01 intro

38
1 2012-B Sistemas Operativos – G. Incacari PC081 Sistemas Operativos Que es un sistema operativo? 2012 Prof. Gerber Incacari Sancho

Transcript of Lec01 intro

Page 1: Lec01 intro

12012-B Sistemas Operativos – G. Incacari

PC081Sistemas Operativos

Que es un sistema operativo?

2012Prof. Gerber Incacari Sancho

Page 2: Lec01 intro

22012-B Sistemas Operativos – G. Incacari

Quien soy?

• Gerber Incacari Sancho, M.Sc.

– Proyecto Infraestructura de llaves publicas - PKI» Especialista HW y SW PKI

– Investigación» Uso de Certificados digitales en la seguridad de documentos » Número de patrones Galton para determinar la identificación

dactilar– Cursos actuales

» Sistemas Operativos» Teleinformática II

Page 3: Lec01 intro

32012-B Sistemas Operativos – G. Incacari

Objetivos para hoy

• Que es un sistema operativo?– y – que no es?

• Ejemplos de SO• Porque estudiar SO?

Interaccíon es importante!Hacer preguntas!

Nota: los diapositivas estan basados y daptados de Silberschatz y otros

Page 4: Lec01 intro

42012-B Sistemas Operativos – G. Incacari

Tendencias tecnológicas: la Ley de Moore

Transistores 2X / CHIP cada 1,5 años

Llamado "La Ley de Moore"

La Ley de Moore

Los microprocesadores se han vuelto más pequeño, más denso y más potente.

Gordon Moore (co-fundador de Intel) predijo en 1965 que la densidad de transistores de los chips semiconductores se duplicaría aproximadamente cada 18 meses.

Page 5: Lec01 intro

52012-B Sistemas Operativos – G. Incacari

Sistemas de información de escala

Escalable, confiable,Servicios de Seguros

MEMS para Las redes de sensores

InternetConectividad

Clusters

Massive Cluster

Gigabit Ethernet

Bases de datosRecopilación de InformaciónAlmacenamiento remotoJuegos en líneaComercio

...

• El mundo es un sistema paralelo gran– Los microprocesadores en todo– Infraestructura detrás de ellos

Page 6: Lec01 intro

62012-B Sistemas Operativos – G. Incacari

La Relación de personas y el ordenador con el tiempo

• Hoy: Multiple CPU / persona!

De David Culler

Page 7: Lec01 intro

72012-B Sistemas Operativos – G. Incacari

1

10

100

1000

10000

1978 1980 1982 1984 1986 1988 1990 1992 1994 1996 1998 2000 2002 2004 2006

Pe

rfo

rma

nce

(vs

. V

AX

-11

/78

0)

25%/year

52%/year

??%/year

Nuevo reto: la desaceleración en la ley de Joy de Desempeño

De Hennessy y Patterson, Arquitectura de Computadores: un enfoque cuantitativo, 4 ª edición, 15 de septiembre 2006

⇒Sea el cambio en el diseño del chip: múltiples "núcleos" o procesadores por chip

3X

Page 8: Lec01 intro

82012-B Sistemas Operativos – G. Incacari

Chips de varios núcleos : El futuro ya está aquí

• "Varios núcleos" se refiere a muchos procesadores de chips /

• La programación de estos?– 2 CPUs para vídeo / audio– 1 para procesador de textos, un navegador para– 76 para detección de virus???

• Paralelismo debe ser explotado en todos los niveles

• Intel 80-core chips multinúcleo (Feb 2007)– 80 núcleos simples– Dos motores de punto flotante / núcleo– Mesh-como "red-on-a-chip"– 100 millones de transistores– Tamaño de la característica de 65nm

Tensión Frecuencia Potencia Ancho de banda Rendimiento3,16 GHz 0,95 V 62W 1,62 Terabits / s 1,01 Teraflops5,1 GHz 1,2 V 175W 2,61 Terabits / s 1,63 Teraflops5,7 GHz 1,35 V 265W 2,92 Terabits / s 1,81 Teraflops

Page 9: Lec01 intro

92012-B Sistemas Operativos – G. Incacari

Otro reto: Densidad de Potencia

• La extrapolación Ley de Moore– Densidad de energía potencial alcanza niveles increíbles!

• Otro punto: la vida de batería muy importante

Page 10: Lec01 intro

102012-B Sistemas Operativos – G. Incacari

Organización de la computadora

• Computadora – Uno o más CPU, controladores de dispositivo de conexión a través del bus común que proporciona acceso a la memoria compartida

– Ejecución concurrente de CPUs y dispositivos compitiendo por ciclos de memoria

Page 11: Lec01 intro

112012-B Sistemas Operativos – G. Incacari

Funciones viene con una gran complejidad!

Proc

CachesLos buses

Memoria

Dispositivos de E / S:

Controladores

adaptadores

DiscosMuestraTeclados

Redes

Pentium IV Chipset

Page 12: Lec01 intro

122012-B Sistemas Operativos – G. Incacari

Muestra de Temas Arquitectura de Computadores

Instruction Set Architecture

Direccionamiento,Protección,Control de excepciones

Caché L1

L2 Cache

DRAM

Discos, WORM, cinta

Coherencia,Ancho de banda,Estado latente

Tecnologías EmergentesIntercaladoProtocolos de bus

RAID

VLSI

De entrada / salida y almacenamiento

JerarquíaMemoria

RedComunicación

Otr

os

proc

esad

ores

Page 13: Lec01 intro

132012-B Sistemas Operativos – G. Incacari

El aumento de la complejidad del software

De 6,033 MIT curso

Page 14: Lec01 intro

142012-B Sistemas Operativos – G. Incacari

Page 15: Lec01 intro

152012-B Sistemas Operativos – G. Incacari

Ejemplo: Un poco de Mars Rover ("Pathfinder") Requisitos

• limitaciones de hardware / complejidad:– Procesador de 20 Mhz, 128 MB de DRAM, VxWorks OS – cámaras, instrumentos científicos, baterías,

paneles solares y equipos de locomoción– Muchos procesos independientes trabajen juntos

• No se puede golpear botón de reinicio muy fácilmente!– Debe se reiniciará si es necesario– Siempre capaz de recibir órdenes desde la Tierra

• Programas individuales no deben interferir– Supongamos que el MUT (Martian Módulo Universal

Translator) Carrito– no chocar software de antena de posicionamiento!

• Además, todo el software puede fallar de vez en cuando– Reinicio automático con diagnóstico enviados a la Tierra– Control periódico de los resultados grabado?

• Ciertas funciones de tiempo crítico:– Necesidad de parar antes de llegar a algo– Debe seguir la órbita de la Tierra para la comunicación

Page 16: Lec01 intro

162012-B Sistemas Operativos – G. Incacari

¿Cómo domar la complejidad?

• Cada pieza de hardware diferente– CPU

» Pentium, PowerPC, ColdFire, ARM, MIPS– Diferentes cantidades de memoria, discos, ...– Diferentes tipos de dispositivos

» Ratones, teclados, sensores, cámaras, lectores de huellas digitales

– Entorno de red diferente» Cable, DSL, Wireless, Firewalls, ...

• Preguntas:– ¿El programador tiene que escribir un único programa que lleva a cabo muchas actividades independientes?

– ¿Cada programa tiene que ser modificada para cada pieza de hardware?

– ¿Cada programa tiene acceso a todo el hardware?

Page 17: Lec01 intro

172012-B Sistemas Operativos – G. Incacari

Herramienta OS: Abstracción de la máquina virtual

• Problema Software Engineering: – hardware / software peculiaridades ⇒

lo que los programadores quieren / necesitan– Optimizar para mayor comodidad, la utilización, la seguridad, la fiabilidad, etc ...

• Para cualquier área OS (por ejemplo, sistemas de archivos, memoria virtual, redes, programación):

– ¿Cuál es la interfaz de hardware? (La realidad física)– ¿Cuál es la interfaz de la aplicación? (Mejor abstracción)

Aplicación

Sistema Operativo

HardwareMachine Interface Físico

Virtual Machine Interface

Page 18: Lec01 intro

182012-B Sistemas Operativos – G. Incacari

Interfaces Proporcionar Límites Importantes

conjunto de instrucciones

software

hardware

Page 19: Lec01 intro

192012-B Sistemas Operativos – G. Incacari

Máquinas virtuales• Software de emulación de una máquina abstracta

– Haz que parezca hardware tiene características que desea

– Programas de hardware y un sistema operativo en otro• Programación sencillez

– Cada proceso piensa que tiene todo el tiempo la memoria / CPU

– Cada proceso cree que es dueño de todos los dispositivos– Diferentes dispositivos parecen tener la misma interfaz– Dispositivos hardware más potente que prima Interfaces

» Pantalla mapa de bits ⇒ sistema de ventanas» Tarjeta Ethernet ⇒ confiable, ordenado, trabajo en red

(TCP / IP)• Aislamiento de fallos

– Los procesos que no pueden afectar directamente otros procesos

– Los insectos no pueden bloquear toda la máquina• Protección y Portabilidad

– Interfaz Java seguro y estable a través de muchas plataformas

Page 20: Lec01 intro

202012-B Sistemas Operativos – G. Incacari

Máquinas virtuales (cont.): Las capas de sistemas operativos

– Cuando se bloquea OS, restringido a una máquina virtual

– Puede ayudar a los programas de pruebas en otros sistemas operativos

Page 21: Lec01 intro

212012-B Sistemas Operativos – G. Incacari

¿Qué es un Sistema Operativo hacer?• Silerschatz y Gavin:

"Un sistema operativo es similar al de un gobierno"– Plantea la pregunta: ¿puede un gobierno hacer algo útil por sí

mismo?• Policia ó Agente de tráfico:

– Gestiona todos los recursos– Resuelve conflicto entre las peticiones de recursos– Evitar los errores y el uso indebido de la computadora

• Facilitador:– Proporciona servicios que cada uno necesita– Librerías estándar, sistemas de ventana– Hacer la programación de aplicaciones más fácil, más rápido y

menos propenso a errores• Algunas características reflejan tanto las tareas:

– Por ejemplo Sistema de archivos es necesaria para todos (Facilitador)

– Pero el sistema de archivos debe estar protegida (Traffic Cop)

Page 22: Lec01 intro

222012-B Sistemas Operativos – G. Incacari

¿Qué es un Sistema Operativo, ... ¿En serio?

• Más probable:– Gestión de la memoria– Gestión E / S– Programación de la CPU– Comunicaciones? (¿Email pertenecen OS?)– Multitarea / multiprogramación?

Page 23: Lec01 intro

232012-B Sistemas Operativos – G. Incacari

Sistema Operativo Definición (Cont.)

• No existe una definición universalmente aceptada

• "Todo lo que se envía un vendedor al comprar un sistema operativo" es una buena aproximación

– Pero es muy dispar• "El programa de una ejecución en todo momento

en el equipo" es el núcleo.– Todo lo demás es o bien un programa de sistema (se suministra con el sistema operativo) o un programa de aplicación

Page 24: Lec01 intro

242012-B Sistemas Operativos – G. Incacari

¿Qué pasaría si no tuviéramos un sistema operativo?

• Código Fuente⇒ ⇒ compilador de Object Code ⇒ Hardware

• ¿Cómo se obtiene el código objeto en el hardware?

• ¿Cómo se puede imprimir la respuesta?• Érase una vez, Altair, programa en binario y leer

respuesta de LED!

Altair 8080

Page 25: Lec01 intro

252012-B Sistemas Operativos – G. Incacari

Simple OS: ¿Qué pasa si sólo una aplicación?

• Ejemplos:– Informática inicios– Los primeros PCs– Controladores Embebidos (ascensores, coches, etc)

• OS se convierte simplemente en una biblioteca de servicios estándar

– Controladores de dispositivos estándar– Interrupción de los manipuladores– Bibliotecas matemáticas

Page 26: Lec01 intro

262012-B Sistemas Operativos – G. Incacari

MS-DOS capa de estructura de

Page 27: Lec01 intro

272012-B Sistemas Operativos – G. Incacari

Más reflexiones sobre Simple OS

• ¿Qué pasa con teléfonos móviles, consolas Xbox, etc?

– ¿Es suficiente esta organización?• Puede ser codificados OS en la ROM / Flash

ROM? • ¿El sistema operativo tiene que ser software?

– ¿Puede ser hardware?– Chip de encargo con el comportamiento predefinido– ¿puede ser un sistema operativo?

Page 28: Lec01 intro

282012-B Sistemas Operativos – G. Incacari

OS Más complejo: múltiples aplicaciones

• Plena coordinación y Protección– Administrar las interacciones entre los diferentes usuarios

– Múltiples programas que se ejecutan simultáneamente

– Multiplex y proteger los recursos de hardware» CPU, memoria, E / S de dispositivos como discos,

impresoras, etc• Facilitador

– Aún proporciona bibliotecas estándar, instalaciones

• ¿Esta complejidad tiene sentido si hubiera una sola aplicación que te importa?

Page 29: Lec01 intro

292012-B Sistemas Operativos – G. Incacari

Ejemplo: La protección de los procesos entre sí

• Problema: Ejecutar múltiples aplicaciones, de tal manera que están protegidos uno de otro

• Meta: – Mantener los programas de usuario se estrelle OS– Mantener los programas de usuario de estrellarse entre sí

– [Guardar Partes de OS de estrellarse en otras partes?]

• Mecanismos(Algunas de las requeridos) :– Traducción de direcciones– Funcionamiento en modo dual

• Política Simple:– Los programas no se les permite leer / escribir en la memoria de otros programas o del sistema operativo

Page 30: Lec01 intro

302012-B Sistemas Operativos – G. Incacari

CPU MMU

VirtualDirecciones

FísicoDirecciones

Traducción de direcciones• Espacio de dirección

– Un grupo de direcciones de memoria utilizable por algo

– Cada programa (proceso) y el kernel tiene espacios de direcciones potencialmente diferentes.

• Traducción de direcciones:– Traducir desde direcciones virtuales (emitida por CPU) en direcciones físicas (de la memoria)

– Mapping a menudo realizada en hardware por la Unidad de Gestión de Memoria (MMU)

Page 31: Lec01 intro

312012-B Sistemas Operativos – G. Incacari

Ejemplo de traducción de direcciones

Prog 1Virtual

DirecciónEspacio 1

Prog 2Virtual

DirecciónSpace 2

CódigoDatosMontónApilar

CódigoDatosMontónApilar

Datos 2

1 de la pantalla

Montón 1

OS Heap & Stacks

Código 1

Pila 2

Datos 1

Montón 2

Código 2

OS código

De datos de SOTraducción mapa 1 Traducción mapa 2

Espacio de direcciones físicas

Page 32: Lec01 intro

322012-B Sistemas Operativos – G. Incacari

Datos de traducción de direcciones

• Por ahora, supongamos traducción ocurre con tabla (denominada tabla de la página):

• Traducción ayuda a la protección:– Traducciones de Control, control de acceso– ¿Sería capaz de cambiar Página?

Virtual Dirección

Página Tabla

índiceenpáginamesa

V AccesoDerechosPensilvania

V n º de página. offset10

tabla ubicadaen físicamemoria

P ninguna página. offset10

Físico Dirección

Page 33: Lec01 intro

332012-B Sistemas Operativos – G. Incacari

Funcionamiento en modo dual

• Hardware proporciona al menos dos modos:– "Kernel" modo (o "supervisor" o "protected")– "Usuario": los programas normales ejecutados

• Algunas instrucciones / prohibidos en modo de usuario:

– Ejemplo: no puede modificar las tablas de páginas en modo de usuario

» Intento de modificar ⇒ excepción generada • Las transiciones del modo usuario al modo kernel:

– Llamadas al sistema, interrupciones, excepciones Otros

Page 34: Lec01 intro

342012-B Sistemas Operativos – G. Incacari

Estructura del sistema UNIX

Modo de usuario

Kernel Mode

Hardware

Aplicaciones

Libs estándar

Page 35: Lec01 intro

352012-B Sistemas Operativos – G. Incacari

Nuevas estructuras para chips de varios núcleos?Tessellation: El despiece OS

• Componentes normales dividido en pedazos

– Los controladores de dispositivos (Seguridad / Confiabilidad)

– Servicios de red (Performance)

» TCP / IP» Firewall» Virus » Detección de Intrusos

– Persistent Storage (rendimiento, seguridad, fiabilidad)

– Servicios de monitoreo» Los contadores de

rendimiento– Identidad (Seguridad)

» Biométrica, • Aplicaciones dadas

Particiones más grandes– La libertad de usar los

recursos de manera arbitraria

Disposit ivoDisposit ivoDriversDrivers

Video &Video &VentanaVentanaDriversDrivers

FirewallFirewallVirusVirus

IntrusiónIntrusión

ControlarControlarYY

AdaptarAdaptar

PersistentePersistenteAlmacenamiento yAlmacenamiento y

Sistema de archivosSistema de archivos

HCI /HCI /VozVozRecRec

Calculo de grandes deCalculo de grandes deAplicaciónAplicación

Real-TimeReal-TimeAplicaciónAplicación

IdentidadIdentidad

Page 36: Lec01 intro

362012-B Sistemas Operativos – G. Incacari

OS Sistemas de Principios

• OS como ilusionista:– Hacer desaparecer las limitaciones del hardware– Proporcionar ilusión de máquina dedicada con memoria infinita y procesadores infinitas

• OS como gobierno:– Proteger a los usuarios el uno del otro– Asignar recursos de manera eficiente y justa

• OS como sistema complejo:– Tensión constante entre la simplicidad y la funcionalidad o el rendimiento

• OS como profesor de historia– Aprender del pasado – Adaptarse a nuevos cambios de hardware

Page 37: Lec01 intro

372012-B Sistemas Operativos – G. Incacari

¿Por qué estudiar los sistemas operativos?• Aprenda a construir sistemas complejos:

– ¿Cómo se puede gestionar la complejidad de los proyectos futuros?

• Cuestiones técnicas:– ¿Por qué es tan lenta la web a veces? ¿Se puede arreglar?

– ¿Qué características debe estar en el próximo Mars rover?

– ¿Cómo funcionan los sistemas distribuidos grande? (Kazaa, etc)

• Compra y uso de un ordenador personal:– ¿Por qué diferentes PC con el mismo CPU tiene comportamiento diferente

– ¿Cómo elegir un procesador (Opteron, Itanium, Celeron, Pentium, Hexium)? [Ok, realizo algun actualización]

– En caso de obtener Windows XP, 2000, Linux, Mac OS ...?

– ¿Por qué Microsoft tiene un nombre tan malo?• Seguridad, virus y gusanos

Page 38: Lec01 intro

382012-B Sistemas Operativos – G. Incacari

"En conclusión ..."

• Los sistemas operativos proporcionan una abstracción de máquina virtual para utilizar hardware diverso

• Los sistemas operativos coordinar los recursos y proteger a los usuarios entre sí

• Los sistemas operativos simplificar el desarrollo de aplicaciones, proporcionando servicios estándar

• Los sistemas operativos pueden proporcionar un arreglo de contención, tolerancia y recuperación de fallos