Download Evolución histórica y desarrollo de la informática

Document related concepts
no text concepts found
Transcript
Tema 1:
Evolución Histórica y Desarrollo
de la Informática
Escuela Politécnica Superior
Ingeniería Informática
Universidad Autónoma de Madrid
1
Evolución Histórica y Desarrollo de la
Informática
O
B
J
E
T
I
V
O
S
Conocer los antecedentes de la
Informática.
Comprender la evolución
histórica y desarrollo de la
Informática.
TEMA 1: EVOLUCIÓN
HISTÓRICA Y
DESARROLLO DE LA
INFORMÁTICA
1.1 Antecedentes de la
Informática
1.2 Generaciones de la
evolución de ordenadores
1.3 Generaciones del
desarrollo del lenguaje de
programación
Bibliografía Tema 1:
- Introducción a la Informática. 4ª Ed. A. PRIETO, A.
LLORIS, J. C. TORRES. (McGraw Hill, 2006). Cap. 20.
2
EVOLUCIÓN HISTÓRICA Y
DESARROLLO DE LA INFORMÁTICA
• DEFINICIONES
• Antecedentes de la Informática
• Generaciones
Escuela Politécnica Superior
3
INFORMÁTICA: DEFINICIONES
• Informática, concepto:
– Ciencia y tecnología aplicada a la automatización del
razonamiento y del tratamiento de la información
INFORmación + autoMÁTICA
• Automática:
– Ciencia que trata de la sustitución del operador
humano por un operador artificial en la ejecución de
una tarea física o mental previamente programada
• Información:
– Yuxtaposición de símbolos con los que representar
convencionalmente hechos, objetos o ideas
Escuela Politécnica Superior
4
INFORMÁTICA: DEFINICIONES
• Informática, definición de la Real Academia:
– Conjunto de conocimientos científicos y técnicas que
hacen posible el tratamiento automático de la
información por medio de ordenadores
Escuela Politécnica Superior
5
EVOLUCIÓN HISTÓRICA Y
DESARROLLO DE LA INFORMÁTICA
• Definiciones
• ANTECEDENTES DE LA INFORMÁTICA
• Generaciones
Escuela Politécnica Superior
6
ANTECEDENTES DE LA INFORMÁTICA
• Diferentes períodos:
– Era mecánica
– Era electromecánica
– Era electrónica
• Primera generación
• Segunda generación
• Tercera generación
• Cuarta generación
• Quinta generación
Escuela Politécnica Superior
7
ANTECEDENTES DE LA INFORMÁTICA
• ERA MECÁNICA
– Ábaco
• 1200 d. C.
• Primera herramienta
eficaz para ayuda del
cálculo
• Representa números y
realiza sumas, restas
y multiplicaciones
Escuela Politécnica Superior
0 1 2 3 4
5
6 7 8 9
8
ANTECEDENTES DE LA INFORMÁTICA
• ERA MECÁNICA
– Varillas de Napier
• 1615
• Sencillo instrumento
mecánico con el que se
podía realizar con gran
facilidad
multiplicaciones y
divisiones
Ejemplo: 5 x 46732
Escuela Politécnica Superior
9
ANTECEDENTES DE LA INFORMÁTICA
• ERA MECÁNICA
– Reglas de cálculo
• 1620-1630
• Sistemas de cálculo analógicos
• Utilizan logaritmos para realizar diversas operaciones
• Operandos y resultados se representan por longitudes
• Utilizadas hasta mediados década de los 60
Escuela Politécnica Superior
10
ANTECEDENTES DE LA INFORMÁTICA
• ERA MECÁNICA
– Máquina de calcular de Pascal
• 1642
• Máquina para sumar y restar
• Ruedas giratorias o diales a las
que se encuentran unidas ruedas
dentadas
• Cada vez que una rueda da una
vuelta completa hace girar la
rueda de peso superior y pasa a
cero
• Los datos se introducen con
diales
• La cifra acumulada se lee a
través
de un Superior
visor
Escuela
Politécnica
11
ANTECEDENTES DE LA INFORMÁTICA
• ERA MECÁNICA
– Máquina de Leibniz
• 1671
• Realiza las cuatro operaciones
básicas
• Sustituye las ruedas dentadas por
cilindros dentados cuyos dientes
varían en longitud
• No funciona cuando hay que
propagar simultáneamente un
número determinado de cifras
Escuela Politécnica Superior
12
ANTECEDENTES DE LA INFORMÁTICA
• ERA MECÁNICA
– Aritmómetro
• Ideado por Charles-Xavier Thomas de Colmar en 1820
• Dispositivo a base de piñones dentados que realiza
multiplicaciones y divisiones basándose en el mismo
principio de la calculadora de Leibniz
• Uso sencillo. Buen funcionamiento
• Desde el año 1820 y hasta el año 1912 se producen
algunos millares de estos ejemplares.
• La empresa Brunsviga comercializó un máquina similar
(Dupla) usada hasta 1950.
Escuela Politécnica Superior
13
ANTECEDENTES DE LA INFORMÁTICA
• ERA MECÁNICA
– Tarjeta perforada
• Ideada por Joseph-Marie Jacquard en 1804
• Diferente tratamiento de las hebras del telar (elevándose o
desplazándose) controlado por varillas y tarjetas perforadas
(las varillas alineadas con perforación se elevan)
Escuela Politécnica Superior
14
ANTECEDENTES DE LA INFORMÁTICA
• ERA MECÁNICA
– Máquina de diferencias de
Babbage
• 1822
• Objetivo: producir tablas de
navegación
• Realiza cálculos científicos y
astronómicos practicados sobre unas
tarjetas de cartón
• Funcionamiento basado en la
evaluación automática de polinomios
por diferencias finitas
• Interés: cualquier función puede
aproximarse mediante polinomios.
• Puede considerarse un ordenador
digital con un programa fijo (el de la
evaluación de polinomios)
Escuela Politécnica Superior
15
ANTECEDENTES DE LA INFORMÁTICA
• ERA MECÁNICA
– Máquina analítica de Babbage
• 1832, en colaboración con Ada Lovelace
• Evolución de la máquina de diferencias:
– Adición de elementos de ordenadores modernos (entrada/salida,
elementos de operaciones aritméticas, memoria)
– Para la modificación del “programa” fijo en la máquina de
diferencias
• Es programable
• Los datos e instrucciones se introducen mediante tarjetas
perforadas
• No se construyó debido a su complejidad mecánica
Escuela Politécnica Superior
16
ANTECEDENTES DE LA INFORMÁTICA
• ERA ELECTROMECÁNICA
– Tabuladora
• Creada en 1890 por Hermann Hollerith
• Usa tarjetas perforadas sobre un conductor:
– Los agujeros permiten el cierre de circuitos eléctricos por
varillas metálicas telescópicas
– Las perforaciones tienen significado que permiten su clasificación
y contabilidad
• Posibilitó el censo de EE.UU. (1890-1900) (de 12 años se
pasó a 3)
– Sucesoras del Aritmómetro
• Leon Balle: Multiplicación directa, no mediante sumas
repetidas
• Door E. Felt: Introduce el teclado
•Escuela
William
S. Burroughs:
Industria mecanográfica
Politécnica
Superior
17
ANTECEDENTES DE LA INFORMÁTICA
• ERA ELECTROMECÁNICA
– Jugador automático de ajedrez
• Leonardo Torres Quevedo (1914)
– Grandes compañías (máquinas registradoras)
• IBM (International Business Machines), 1924
• BULL, 1931
– Primeros ordenadores: Cálculo científico
• ABC
– 1935 (John Atanasoff: Iowa State College)
– Uso de álgebra de Boole y sistema binario
– Sólo diseño, antecesor de ENIAC
Escuela Politécnica Superior
18
ANTECEDENTES DE LA INFORMÁTICA
• ERA ELECTROMECÁNICA
– Primeros ordenadores: Cálculo científico
• Mark I
–
–
–
–
1937-1944 (Howard Aiken: Universidad de Harvard)
Primer calculador automático digital
Elementos principales: relés(*)
Utiliza:
» Programa en una banda de papel perforado
» Tabuladoras Hollerith
– Electrónica digital
• C. E. Shannon (MIT: 1938), circuitos combinacionales
– Propone aplicación de álgebra de Boole binaria para el diseño de
circuitos lógicos con conmutadores (ej. relés)
• D. A. Huffman (1954), circuitos secuenciales
Escuela Politécnica Superior
19
ANTECEDENTES DE LA INFORMÁTICA
• ERA ELECTROMECÁNICA
(*)El relé
• Conmutador que contiene un contacto mecánico que puede abrir
o cerrar un circuito eléctrico mediante un electroimán que
atrae (o repele) al contacto mecánico.
Escuela Politécnica Superior
20
EVOLUCIÓN HISTÓRICA Y
DESARROLLO DE LA INFORMÁTICA
• Definiciones
• Antecedentes de la Informática
• GENERACIONES
Escuela Politécnica Superior
21
GENERACIONES DE ORDENADORES
• 1ª GENERACIÓN (1946-1958)
•
•
•
•
•
2ª Generación (1958-1964)
3ª Generación (1964-1971)
4ª Generación (1971-1988)
5ª Generación (1988-hasta el presente)
Generaciones de lenguajes de programación
Escuela Politécnica Superior
22
PRIMERA GENERACIÓN
• Tecnología
– Tubos al vacío
• Diodo: dispositivo que conduce electricidad sólo en
un sentido
– Dos electrodos (ánodo y cátodo)
• Triodo: dispositivo que puede ser un conmutador
– Dos electrodos (ánodo y cátodo) separados por una
rejilla. La corriente en la rejilla determina la
conducción entre los electrodos
– Memorias de líneas de retardo de mercurio
• Las memorias de tubos de vacío eran caras
• Basadas en el mantenimiento de información por la
circulación de corriente a diferentes velocidades por
las líneas de retardo
Escuela Politécnica Superior
23
PRIMERA GENERACIÓN
• Ordenadores
– COLOSSUS (1943)
• Debido a una reciente desclasificación de documentos británicos
de la Segunda Guerra Mundial se ha descubierto que la primera
computadora electrónica fue el Colossus
• Construcción secreta con el objetivo de descifrar los mensajes
militares secretos del ejército alemán, codificados con la máquina
Enigma
• Con 1500 válvulas
Escuela Politécnica Superior
24
PRIMERA GENERACIÓN
COLOSSUS
Escuela Politécnica Superior
25
PRIMERA GENERACIÓN
• Ordenadores
– ENIAC (Electronic Numerical Integrator and Computer)
• 1945, J. Presper Eckert y John W. Mauchly (Universidad de
Pennsylvania)
• Construcción secreta (uso militar: construcción de tablas
matemáticas para balística)
• Programable en hardware (por cambio de conmutadores y
conexiones)
• Utiliza aritmética decimal
• Con sus 18000 válvulas de vacío y 1500 relés pesó 30 toneladas y
ocupó 140 metros cuadrados, 5000 cálculos por segundo
Escuela Politécnica Superior
26
PRIMERA GENERACIÓN
ENIAC: dispositivos de control de ENIAC.
Escuela Politécnica Superior
27
PRIMERA GENERACIÓN
ENIAC: programación
Escuela Politécnica Superior
28
PRIMERA GENERACIÓN
ENIAC: cambio de un tubo
Escuela Politécnica Superior
29
PRIMERA GENERACIÓN
• Ordenadores
– EDVAC (John von Neumann: 1950)
• Evolución de ENIAC.
• Implementación de arquitectura von Neumann de los
ordenadores actuales:
– Estructura de máquina de Babbage (E/S, ALU, Unidad de control y
memoria).
– Aritmética binaria.
– Programa almacenado en memoria.
Escuela Politécnica Superior
30
EDVAC:
PRIMERA GENERACIÓN
Escuela Politécnica Superior
31
PRIMERA GENERACIÓN
• Ordenadores
– UNIVAC I (UNIVersal Automatic Computer I) (1951)
• Primer ordenador fabricado en serie
• Memoria de líneas de retardo
• El primero funcionó durante 12 años ininterrumpidamente (24
horas al día)
Escuela Politécnica Superior
32
PRIMERA GENERACIÓN
UNIVAC:
Escuela Politécnica Superior
33
PRIMERA GENERACIÓN
UNIVAC: consola
Escuela Politécnica Superior
34
PRIMERA GENERACIÓN
• Ordenadores
– IBM 704 último de la generación
Escuela Politécnica Superior
35
PRIMERA GENERACIÓN
• Software
– Ausencia de sistema operativo, la introducción y control de la
ejecución de programas manual.
– Sólo un programador usa el ordenador a la vez.
– Lenguajes de programación
• Lenguajes de máquina (secuencias de 0 y 1)
• Concepto de subrutina:
Fragmento de programa que realiza una tarea concreta, recibe un
nombre por el que puede ser ejecutado desde otra parte del
programa
• Aparición de primeros ensambladores (simbólicos)
– Se dan nombres mnemotécnicos a los códigos binarios que identifican las
operaciones para facilitar la programación.
• Aparición de ayudas a la programación:
– Generadores de programa en código máquina.
– Primeros compiladores (traducen programas escritos en lenguajes de más
alto nivel que lenguaje de máquina a éste) rudimentarios
Escuela Politécnica Superior
36
GENERACIONES DE ORDENADORES
• 1ª Generación (1946-1958)
• 2ª GENERACIÓN (1958-1964)
•
•
•
•
3ª Generación (1964-1971)
4ª Generación (1971-1988)
5ª Generación (1988-hasta el presente)
Generaciones de lenguajes de programación
Escuela Politécnica Superior
37
SEGUNDA GENERACIÓN
Colector
• Tecnología
– Transistor
• Dispositivo similar al triodo pero
–
–
–
–
–
Base
Sólido
Más fácil de fabricar
Menor consumo y calor disipado
Más pequeño
Más duradero
• Usa:
Emisor
– Semiconductor cristalino (ej. silicio) con impurezas:
» Tipo n capaces de generar electrones (carga negativa)
» Tipo p capaces de generar huecos (carga positiva)
• El transistor puede tener:
– Emisor y colector tipo n (como el cátodo y el ánodo)
– Base tipo p (como la rejilla)
Escuela Politécnica Superior
38
SEGUNDA GENERACIÓN
• Tecnología (cont.)
– Núcleo de ferrita
• Memoria de ferrita: malla de hilos conductores entrecruzados
• En los vértices un aro de ferrita (núcleo) por cuyo interior pasan los
dos hilos
• El núcleo se selecciona activando los hilos de su fila y columna:
– Corriente en un sentido, la ferrita se magnetiza en un sentido (idem.
contrario)
• Cada ferrita almacena un bit
Escuela Politécnica Superior
39
SEGUNDA GENERACIÓN
• Ordenadores
– IBM 7090 y 7094
• Versiones con transistores de anteriores IBM 704 y 709 (triodos)
• Control de E/S mediante canales
Escuela Politécnica Superior
40
SEGUNDA GENERACIÓN
IBM 709 vs. IBM 7090.
Escuela Politécnica Superior
41
SEGUNDA GENERACIÓN
• Ordenadores
– Otros
• UNIVAC 1004, IBM 1620, CDC 1604
Escuela Politécnica Superior
42
SEGUNDA GENERACIÓN
CDC 1604.
IBM 1620.
Escuela Politécnica Superior
43
SEGUNDA GENERACIÓN
• Software
– Primeros lenguajes de alto nivel
•
•
•
•
Más cercanos a la forma humana de expresión (en oposición a máquina)
FORTRAN: científico - técnico
ALGOL58 y 60: precedentes de LISP
COBOL: gestión administrativa
– Comienzo de sistemas operativos
Escuela Politécnica Superior
44
GENERACIONES DE ORDENADORES
• 1ª Generación (1946-1958)
• 2ª Generación (1958-1964)
• 3ª GENERACIÓN (1964-1971)
• 4ª Generación (1971-1988)
• 5ª Generación (1988-hasta el presente)
• Generaciones de lenguajes de programación
Escuela Politécnica Superior
45
TERCERA GENERACIÓN
• Tecnología
– Circuitos integrados
• En una placa de silicio se construye un circuito con una función
electrónica compleja:
– Circuitos mejores (coste, complejidad y fiabilidad)
– Aumento de velocidad (reducción de espacio)
– Reducción de consumo
– Uso de circuitos integrados también en las memorias
Escuela Politécnica Superior
46
TERCERA GENERACIÓN
• Tecnología
– Primer circuito integrado (1959)
Escuela Politécnica Superior
47
TERCERA GENERACIÓN
• Ordenadores
– Grandes computadores y pequeños terminales
• Un ordenador central da servicio a terminales locales o remotos
• Técnicas de compartición de recursos y procesamiento concurrente
• Técnica de memoria virtual, el usuario cree que hay más memoria
– IBM 360: (desde 1965) familias de ordenadores
• Con diferente capacidad y prestaciones
• Ejemplo: IBM 360
– PDP: (desde 1963) miniordenadores
• Bajo precio, reducido tamaño y buenas prestaciones, por
aprovechamiento de circuitos integrados
Escuela Politécnica Superior
48
TERCERA GENERACIÓN
• Software
– Sistemas operativos
• Desarrollo de sistemas operativos propios para cada máquina
(incompatibles con otras)
• Nuevas técnicas:
– Multiprogramación: Para compartir recursos
– Lenguajes de programación
• Nuevos lenguajes de alto nivel:
– BASIC
– PL/I
– APL
Escuela Politécnica Superior
49
GENERACIONES DE ORDENADORES
• 1ª Generación (1946-1958)
• 2ª Generación (1958-1964)
• 3ª Generación (1964-1971)
• 4ª GENERACIÓN (1971-1988)
• 5ª Generación (1988-hasta el presente)
• Generaciones de lenguajes de programación
Escuela Politécnica Superior
50
CUARTA GENERACIÓN
• Tecnología
–
–
–
–
–
–
–
–
–
Se desarrolló el microprocesador
Se colocan más circuitos dentro de un "chip"
"LSI - Large Scale Integration circuit"
"VLSI - Very Large Scale Integration
circuit"
Cada "chip" puede hacer diferentes tareas
Un "chip" sencillo actualmente contiene la unidad de control y la
unidad aritmética/lógica. La memoria primaria, es operada por
otros "chips"
Se reemplaza la memoria de anillos magnéticos por la memoria de
"chips" de silicio
Se desarrollan las microcomputadoras: computadoras personales o
PC
Se desarrollan las supercomputadoras
Escuela Politécnica Superior
51
CUARTA GENERACIÓN
• Ordenadores
– Ordenadores personales (PC)
• Informática “doméstica”.
– Estaciones de trabajo
• Aumento de prestaciones y disminución de precio.
– Teleinfórmática
• Redes de ordenadores.
– Supercomputadores
Escuela Politécnica Superior
52
CUARTA GENERACIÓN
• Ordenadores
– Lisa: Primer ordenador personal, con ratón e interfaz gráfica,
fabricado por Apple
Escuela Politécnica Superior
53
• Software
CUARTA GENERACIÓN
– Sistemas operativos
• Aparecen sistemas operativos independientes de la máquina y
compatibles
–
–
–
–
UNIX
MS/DOS
OS/2
WINDOWS
– Nuevas necesidades de sistemas operativos:
• Sistemas operativos de red, distribuidos
– Nuevos lenguajes más “potentes”:
•C
– Técnicas de programación más “abstractas”:
• Lógica (PROLOG)
• Orientada a objetos (SmallTalk, C++)
Escuela Politécnica Superior
54
GENERACIONES DE ORDENADORES
•
•
•
•
1ª
2ª
3ª
4ª
Generación
Generación
Generación
Generación
(1946-1958)
(1958-1964)
(1964-1971)
(1971-1988)
• 5ª GENERACIÓN (1988-...)
• Generaciones de lenguajes de programación
Escuela Politécnica Superior
55
QUINTA GENERACIÓN
– Inteligencia artificial: Campo de estudio que trata de aplicar los
procesos del pensamiento humano usados en la solución de
problemas a la computadora.
– Robótica: El arte y ciencia de la creación y empleo de robots. Un
robot es un sistema de computación híbrido independiente que
realiza actividades físicas y de cálculo. Están siendo diseñados con
inteligencia artificial, para que puedan responder de manera más
efectiva a situaciones no estructuradas.
– Sistemas expertos: Aplicación de inteligencia artificial que usa una
base de conocimiento de la experiencia humana para ayudar a la
resolución de problemas.
– Redes de comunicaciones: Canales de comunicaciones que
interconectan terminales y computadoras
Escuela Politécnica Superior
56
GENERACIONES DE ORDENADORES
•
•
•
•
•
1ª
2ª
3ª
4ª
5ª
Generación
Generación
Generación
Generación
Generación
(1946-1958)
(1958-1964)
(1964-1971)
(1971-1988)
(1988-...)
• GENERACIONES DE LENGUAJES DE
PROGRAMACIÓN
Escuela Politécnica Superior
57
GENERACIONES
DE LENGUAJES DE PROGRAMACIÓN
• 1ª: Lenguajes de máquina
• 2ª: Primeras ayudas a programación: Rutinas,
lenguajes ensambladores, generadores de
programas
• 3ª: Lenguajes imperativos: FORTRAN, COBOL,
LISP
• 4ª: Lenguajes funcionales: programación lógica,
programación orientada a objetos
Escuela Politécnica Superior
58
EJEMPLO DE MAPA CONCEPTUAL
Escuela Politécnica Superior
59
EJEMPLO DE MAPA CONCEPTUAL
Escuela Politécnica Superior
60