(C) Mario Medina C. 1 Sistemas Computacionales Sistema

Anuncio
Sistema computacional
Š Hardware
“todo lo que se puede morder” (H. Rautenberg)
Sistemas Computacionales
z
Programas que usan el hardware para resolver
problemas
Š Sistema operativo
Sistemas Computacionales
Mario Medina C.
[email protected]
z
Capas de un sistema computacional
Usuarios
Š Software
Coordina el uso del hardware entre las
aplicaciones
Usuarios
Programadores
Aplicaciones
Utilitarios del S.O.
Sistema Operativo
Hardware
Aplicaciones
(C) Mario Medina C.
Sistemas operativos
1
Hardware
Un poco de historia
Š Primeros dispositivos
z
z
Utilizan engranajes y razones entre
radios para realizar cálculos
Blas Pascal (1642): Pascalina
œCalculador con sistema numérico
decimal
œSuma y (vía complemento) resta
z
Pascalina (1642)
Gottfried von Leibniz (1672):
Staffelwalze
œCalculadora asada en máquina de
Pascal
œSuma, resta, multiplicación y división
œRaíz cuadrada (algoritmo)
Un poco de historia
Un poco de historia
Š Tarjetas perforadas
Š Primeros dispositivos
z
Staffelwalze (1672)
Charles Xavier Thomas (1820): Arithmometer
œPrimer calculador de producción masiva
œUtiliza el mismo cilindro diseñado por von Leibniz
œEn producción por 90 años. Sus sucesores se mantuvieron
en producción hasta alrededor de 1970
œAntecesor de la regla de cálculo
z
z
Automatización de ingreso de
datos
Joseph-Marie Jacquard
(1801)
œMáquina tejedora
œPatrones de tejido
“programados” vía tarjetas
perforadas
œIdea fue copiada por Charles
Babbage y Herman Hollerith
œTarjetas perforadas en uso
común hasta los años 19701980
Máquina tejedora controlada por
tarjetas perforadas
Arithmometer (1820)
Un poco de historia
z
Š Computadores análogos
Charles Babbage (1833)
œExtensión de concepto a
programación de computadores
œTarjetas perforadas, energía a
vapor
œMáquina diferencial: cálculo de
polinomios
œMáquina analítica: programable,
incluye instrucciones, lazos
iterativos, saltos
œAda Lovelace (1815-1852)
creó un programa para calcular
secuencia de números de
Bernouilli
(C) Mario Medina C.
Un poco de historia
z
Reproducción de máquina
diferencial de Babbage
Utilizan analogías (típicamente
con procesos eléctricos) para
modelar y resolver problemas
matemáticos
œNivel de agua en un estanque Æ
voltaje en un condensador
œAmplificadores operacionales,
potenciómetros y otros
componentes eléctricos con
conexiones programables por el
usuario
Computador análogo
2
Un poco de historia
Š Tubos de Vacío (1945 - 1955)
Š Computadores análogos
z
z
Un poco de historia
Mark I: utilizado para
calcular trayectoria de
proyectiles durante la
segunda guerra mundial
Analizador diferencial:
resuelve ecuaciones
diferenciales por integración
(mecánico)
z
ENIAC (1946):
œ18000 tubos
œ1500 relés
œ30 toneladas
œ140 KWatts
z
UNIVAC (1951)
œPrimer computador comercial
Analizador diferencial
z
IAS: originó la arquitectura de von
Neumann.
œPrograma representado digitalmente,
almacenado en memoria junto a datos
Un poco de historia
Š Transistores (1955 - 1965)
z
DEC PDP-1 (1961)
z
IBM 7090, 7094
Un poco de historia
Š Circuitos integrados
(1965 - 1980)
œ4 KB memoria, 18 bits, 5 ms.
z
œFamilia de modelos
compatibles (ISA diferente
de implementación)
œMemoria de 250ns a 1ms,
límite de 16 MB
œMultiprogramación
œ32K memoria, 36 bits, 2 ms.
z
IBM 1401
z
CDC 6600 (1964)
œAplic. Comerciales
z
œParalelismo interno en CPU
z
IBM/360
DEC PDP-11
œMinicomputador para
producción masiva
œAsequible para pequeñas
empresas y universidades
Burroughs B5000
œDiseñada para facilitar tarea al
compilador
Almacenamiento
Memoria de núcleo magnético (1972).
65.536 núcleos de menos de 0.5mm de
diámetro (64Kbit) .
Tiempo de acceso 0.6us
Un poco de historia
Š Circuitos VLSI (1980 - ????)
z
z
z
z
z
z
Stack de 6 discos magnéticos
removible.
Capacidad total 2.68MB
Tasa de transferencia de 69KB/s.
Tiempo de acceso promedio
150ms
z
PCs
Estaciones de trabajo
Mainframes
Supercomputadores
Redes de computadores
Sistemas portables
Sistemas en un chip
IBM PC
Supercomputador Cray
PDA
Estación de trabajo
Tablet PC
(C) Mario Medina C.
3
Futuro del hardware
Š ¿Qué se está haciendo ahora?
z
Paralelismo dentro y fuera del chip
z
Procesadores de propósito específico
œ Múltiples instrucciones en paralelo
œ Múltiples CPU en un chip
œ Procesadores de redes
œ Procesadores de señales y medios
z
Š Computadores 1ra. Generación (tubos de vacío)
Š No tenían S. O.
Š Inicialmente, el usuario
hacía todo
Dispositivos portables
z
Computación reconfigurable
z
œ Alto desempeño, bajo consumo de energía y costo
œ Dispositivos implantables
z
Y el software?
Š Nuevos modelos computacionales
z
z
z
Computación cuántica
DNA
Computación neuromórfica
z
Escribía el programa (en
binario!)
Cargaba el programa en
memoria
Controlaba y depuraba la
ejecución
Š Más tarde, aparecen
programas utilitarios
z
z
z
z
z
Ensambladores
Compiladores
Bibliotecas
Enlazadores
Cargadores
2da. Generación (transistores)
Š Computadores mainframes
z
Transistores, cintas y discos magnéticos, tarjetas
perforadas, impresoras, etc.
Š Costos del HW bajan
z
z
Sistemas batch
Š Operador ingresa trabajo a la cola
Š Se ejecuta toda la cola de entrada
Š Se transfieren los resultados a la cola de salida
Utilización de CPU es factor importante
Sistemas batch
œAgrupar trabajos para mantener la CPU ocupada
Ejemplo de programa batch
Sistemas batch
Š Reduce demora debido al operador
z
FORSYS, SCOPE, OS/MFT
Š Tiempos de respuesta largos
z
No hay interactividad
Š Qué pasa si el programa necesita leer datos de
la cinta?
z
(C) Mario Medina C.
CPU ociosa mientras se leen los datos
4
ATLAS (1950-60)
Š Universidad de Manchester
z
z
Sistema operativo batch con spooling
Palabras de 48 bits, direcciona 1 MWord
Š Administración de memoria
z
z
z
Tambor magnético (98 KWords) y memoria
magnética (16 KWords)
Paginación y caching
Algoritmos de reemplazo de páginas
CTSS (1962)
Š Ejecución sobre IBM 7090
z
z
z
z
z
z
z
Sistema de tiempo compartido
32 usuarios simultáneos
Memoria física de 32 KWords
Palabras de 36 bits
S.O. ocupaba 5 KWords
Usuarios compartían 27 KWords
Algoritmos MLFQ
XDS-940 (1965)
Š Universidad de California at Berkeley
Š Sistema de tiempo compartido
Š Paginación
z
z
z
z
Memoria física de 64 KWords
Memoria por usuario de 16 KWords
Páginas de 2 KWords
Tabla de páginas en registros
MULTICS (1965)
Š MIT, GE, Bell Labs
Š Computador GE 645
z
z
z
Segmentación y paginación
Páginas de 1 KWord
Direcciones: 18 bits segmento, 16 bits offset en
página
Š Antecesor de UNIX
3ra. Generación (C. Integrados)
Š Hardware es aún más rápido y más barato
z
z
Minicomputadores (DEC, UNISYS, etc.)
Terminales, comunicaciones, redes
Š Sistemas multiprogramados
z
z
z
z
Compartir la CPU entre varios usuarios
Aprovechar el tiempo de E/S de la aplicación para
atender tareas de otros usuarios
Mejora utilización de los recursos
Complica administración de los recursos
(C) Mario Medina C.
S. O. Multitarea
Š Interactividad via terminales
z
z
Compartir computador entre varios usuarios
Atención interactiva a usuarios
Š IBM OS/360
z
z
Sistema operativo muy popular
Comercial código cerrado
Š UNIX
z
Antecesor de Linux, BSD, Solaris, Mac OS X
5
4ta. Generación (PCs)
Š Costos del hardware bajan y bajan
z
Posible tener un computador por usuario
Ejemplo: Windows 7
Š S.O. para arquitectura Intel x86
z
z
MS-DOS, CP-M, Windows
z
Š Ambientes gráficos (WIMP)
z
z
z
Última generación de S.O. Windows
œAparición: 22 de octubre de 2009
œWindows 1.0:1985!
Š Sistemas operativos monousuario multitarea
z
Windows, Icons, Mouse, Pull-down menus
Metáfora del escritorio
Windows, X11, MacOS, GNOME, KDE
Multitarea, multihebra, multicore
Interfaz WIMP Software comercial, código
cerrado
œWindows 7 Starter: $33.000
œWindows 7 Home Basic: $60.000
œWindows 7 Pro: $108.000
œWindos 7 Ultimate: $145.000
S. O. de Microsoft
z
z
z
z
z
z
z
z
z
z
z
S.O. Unix
Š Desarrollado en AT&T Bell Labs por Ritchie,
Thompson y McIllroy (1969)
1982: MS-DOS 1.0
1994: MS-DOS 6.22
1985: Windows 1.0
1993: Windows 3.11
1995: Windows 95
1996: Windows NT 4
1998: Windows 98
2000: Windows 2000
2001: Windows XP
2007: Windows Vista
2009: Windows 7
z
z
z
z
z
z
Š BSD (Berkeley Software Distribution)
z
z
SunOS, NetBSD, FreeBSD, OpenBSD
Solaris, UNIXWare
Š MINIX
Š Linux
Š MacOS X
(C) Mario Medina C.
z
z
Sistema de archivos
jerárquico
Comunicación entre
procesos (IPC)
œ“Filosofía UNIX”
Herederos de UNIX
Š ATT UNIX System V
Escrito en C
Multitarea
Multiusuario
Acceso a código
fuente!
Portable
Simple
Ejemplo: Linux
Š S.O. para procesadores Intel x86, PowerPC,
SPARC, y muchos otros
z
z
z
z
z
z
Kernel creado por Linux Torvalds en 1991
Utilidades y arquitectura basada en UNIX
Multitarea, multihebra, multicore
Interfaz WIMP y línea de comando
Libre de costo
Código fuente disponible
6
Descargar