Download introducción

Document related concepts
no text concepts found
Transcript
INTRODUCCIÓN
Informática y sociedad
La informática es una ciencia relativamente joven. Sin embargo, en sus 40 años de
existencia ha experimentado en las últimas décadas, junto con la electrónica, progresos más
espectaculares que ningún otro campo de la tecnología. La informática se define como:
"Un conjunto de conocimientos científicos que se ocupan del tratamiento automático de la
información, especialmente por medio de ordenadores".
Se puede considerar que la informática "surge" de la conjunción, excepcional en la
historia de la humanidad, de una idea y una técnica. La técnica fue la electrónica. La idea, la
noción de "máquina secuencial de programa registrado" formulada por el matemático
estadounidense John Von Neumann. Toda la informática actual se apoya en estos dos pilares"
(Mundo Científico, nº 87, pág. 6).
La corta edad de la informática nos permite observar como ha evolucionado. Los primeros
"ordenadores" que se diseñaron eran máquinas de propósito general para realizar cálculos y
operaciones con números. El desarrollo tecnológico de los años setenta permitió el diseño y
construcción de ordenadores especializados en una tarea concreta: grandes cálculos,
tratamiento de la señal, control de telecomunicaciones, uso personal (ordenadores personales),
etc.
En la década de los 80 los ordenadores no sólo manejan números, sino también símbolos
que representan conocimiento (inteligencia artificial), son capaces de reconocer su entorno
(sistemas de visión), son utilizados como potentes herramientas de diseño en la industria
(CAD). Además, la comunicación hombre-máquina puede realizarse no sólo con
informaciones codificadas, sino también por medio de imágenes, textos y voz.
3
Apuntes de Informática
Todo este desarrollo de la informática ha sido posible gracias a los estudios de los
científicos que han permitido el desarrollo del software y del hardware de las máquinas. La
evolución del software se manifiesta a través del lenguaje máquina, lenguajes de alto nivel
(FORTRAN, Pascal, C, etc.), lenguajes de programación paralelos de alto nivel (Occam),
lenguajes para inteligencia artificial (Lisp). La evolución del hardware ha supuesto la creación
de arquitecturas con potencias de cálculo cada vez mayores, pero todas ellas se basan en el
modelo secuencial de Von Neumann, aunque tienden a apartarse progresivamente del mismo.
A lo largo de toda la historia el desarrollo de la informática ha estado íntimamente
relacionado y ha sido posible gracias al desarrollo de la electrónica. Sin embargo, casi
siempre los conceptos y las ideas surgidas en el ámbito de la informática se han adelantado a
las posibilidades ofrecidas por la tecnología de la época. Así en 1951, M.W. Wilkes introdujo
el concepto de microprogramación, que no pudo ser utilizado hasta que en 1965 se
desarrollaron las memorias rápidas de semiconductores que permitían almacenar los
microprogramas.
La informática está produciendo un cambio profundo en la sociedad porque afecta a
muchos aspectos de la misma: a los modos de producción, a las formas de conocimiento, a las
relaciones sociales, a la difusión de la información, al estilo y calidad de vida, al empleo del
ocio... Además está produciendo un desplazamiento de la población activa hacia el sector
servicios. Así, estudios realizados prevén que dentro de 15 años el 70% de la población activa
trabajará en esta sector y la mayoría con ayuda de sistemas informáticos.
Contrariamente a la idea generalizada de que las nuevas tecnologías (entre ellas la
informática) crean desempleo, estudios realizados en USA demuestran que las empresas de
alta tecnología han generado en los últimos 9 años más empleo que las industrias de
tecnología convencional.
Desarrollo histórico de la informática
El estudio de la evolución de la informática se puede abordar dividiendo dicha evolución
en varias épocas, dependiendo de la tecnología empleada en la construcción de las máquinas.
Aparecen así dos grandes períodos:
-
Era mecánica: abarca desde la Antigüedad hasta el inicio de la década de los 40 en el
presente siglo.
-
Era electrónica: desde los años 40 hasta nuestros días.
La era mecánica supone que las máquinas de calcular eran construidas con componentes
mecánicos, si bien al final de dicha era se combinaban componentes mecánicos con
componentes eléctricos generando las máquinas de calcular electrónicas.
La era electrónica se caracteriza por el empleo de componentes electrónicos (que permiten
rapidez, fiabilidad y precisión) como elementos fundamentales de las máquinas de calcular. El
estudio de esta era se divide en 5 grandes etapas que constituyen las 5 generaciones de
ordenadores.
4
Introducción
Así pues, la historia de la informática se estructura de la siguiente forma:
• Era mecánica (hasta 1940):
-
máquinas de calcular digitales
máquinas de calcular analógicas
El "Mark I" estaba construido con relés (tecnología electromecánica), empleaba ruedas
decimales como memoria de trabajo, con una capacidad de 72 números de 23 dígitos. Los
datos se introducían por conmutador manual o por fichas perforadas. Las funciones
necesarias para el cálculo se definían en cintas.
Tenía 250.000 piezas y 800 km de cable, empleaba ½ segundo para sumar o restar dos
números de 23 cifras, la multiplicación consumía 6 segundos y la división 10. Media 15 m
de largo y 2,5 m de alto y pesaba 3 Tm. Su realización costó 5 millones de dólares.
El "Mark I" puede ser considerado como el último predecesor de los ordenadores
electrónicos. Todos los ordenadores mecánicos y electromecánicos tenían dos grandes
inconvenientes:
-
la velocidad de cálculo estaba limitada por la inercia de las partes móviles.
-
la transmisión de información por medios mecánicos era complicada y generaba
grandes errores.
Por ello, a partir de ahora se empiezan a investigar los componentes electrónicos como
parte fundamental de un ordenador, pues en dichos componentes, las partes móviles
(medios de transmisión de información) son los electrones y la información se puede
transmitir a gran velocidad.
• Era electrónica (desde 1940):
Siguiendo con la evolución de las máquinas digitales cabe destacar que a partir del año
1940 el desarrollo de la electrónica permitió construir máquinas cada vez más rápidas, de
menor coste y menor tamaño. Todo el desarrollo de los ordenadores electrónicos, desde la
década de los 40 (en el siglo XX) hasta nuestros días, se divide en 5 etapas que
constituyen las cinco generaciones que analizamos en los puntos siguientes.
La Primera Generación (1938-1954)
El primer ordenador electrónico de propósito general fue el ENIAC (Electronic Numerical
Integrator And Calculator), construido en la Universidad de Pensilvania bajo la dirección de
un proyecto financiado por el Ejército Estadounidense para obtener una máquina de cálculo
automático de tablas balísticas.
El trabajo en el ENIAC duró de 1943 a 1946. Era una máquina enorme que contenía unas
18.000 válvulas, 70.000 resistencias y 10.000 condensadores. Pesaba unas 30 toneladas, con5
Apuntes de Informática
sumía más de 150 Kw y ocupaba una superficie de unos 1.300 m². A pesar de las predicciones, se culminó con éxito y durante sus diez años de vida útil trabajó más de 80.000 horas.
La programación de estos primeros ordenadores era una tarea enorme, que requería estar
totalmente familiarizado con los detalles de operación de la máquina, una gran cantidad de
ingenio y mucha paciencia. Esta situación pronto resultó intolerable: era poco razonable
emplear días en elaborar un programa que se resolvía en minutos.
J. Von Neumann, consultor del proyecto ENIAC, fue el primero en proponer el concepto
de programa almacenado: las instrucciones podían almacenarse en el ordenador, juntamente
con los datos. Esta idea tenía dos implicaciones importantes:
-
Las instrucciones podrían cambiarse sin necesidad de establecer cableados manuales.
-
El ordenador podría procesar las instrucciones como si fuesen datos, haciendo posible
la alteración de su secuencia e incluso la modificación automática.
La arquitectura típica de los ordenadores de esta "primera generación" era tal que el
control estaba centralizado en una sola unidad, llamada Unidad Central de Proceso (CPU) que
tenía dos partes: una Unidad Aritmética Lógica (ALU) y una Unidad de Control (CU). Es
importante señalar que todas las operaciones en el sistema, por ejemplo, la transferencia de
información entre la memoria principal y un dispositivo de Entrada/Salida, requerían la
intervención directa de la CPU.
La Segunda Generación (1955-1964)
Se suelen llamar ordenadores de "segunda generación", a los producidos en la década
1955-1964, aunque no hay acuerdo respecto a la exactitud de las fechas. Hay una serie de
características diferenciales entre la primera y la segunda generación:
1. El transistor, inventado en 1948 en los laboratorios de la Bell Telephone, reemplazó
gradualmente a las válvulas en el diseño de los circuitos de conmutación.
2. Las memorias magnéticas de ferritas y de tambores, se impusieron sobre las otras
tecnologías empleadas anteriormente.
3. Se generalizó el empleo de unidades aritméticas separadas para el tratamiento de
números enteros y de números de punto flotante.
4. Aparecieron los primeros lenguajes de "alto nivel" como FORTRAN, COBOL,
LISP, ALGOL.
5. Se diseñaron pequeños procesadores de propósito especial para supervisar las
operaciones de Entrada/Salida, que liberaban parcialmente a la CPU.
6. Los fabricantes empezaron a suministrar "software" básico, como compiladores y
bibliotecas de programas.
6
Introducción
Se suele considerar como máquina representativa de esta generación al 7094 de IBM,
sucesora de la 709 de la primera generación. Por primera vez aparece el concepto de "sistema
informático" para indicar que un ordenador consta de varias unidades que pueden funcionar
simultáneamente.
Otra innovación importante de esta época fue el procesamiento por lotes (batch
processing). En los primeros ordenadores cada programa o trabajo se ejecutaba
independientemente de los otros, y el ordenador tenía que pararse y prepararse manualmente
para la ejecución del programa siguiente. Con las mejoras en E/S de esta segunda generación
se hizo posible preparar un lote de trabajos, almacenarlos en cinta magnética, hacer que el
ordenador fuese procesándolos de forma continua y almacenar los resultados en otra cinta. El
procesamiento por lotes requería el empleo de un programa supervisor, o monitor, que
residiría permanentemente en memoria y se encargaría de controlar la ejecución y el paso de
un programa al siguiente.
La Tercera Generación (1965-1975)
Se suele considerar 1965 como la fecha de comienzo de la tercera generación. Aunque la
distinción con la segunda generación no está muy clara aparecen los siguientes puntos
diferenciadores:
1. Los circuitos integrados de pequeña y media escala (SSI, MSI) empezaron a
reemplazar a los circuitos de transformadores discretos empleados en la segunda
generación, dando lugar a una reducción sustancial en tamaño y coste.
2. Las memorias de semiconductores empezaron a reemplazar a las de ferrita.
3. Se generalizó el empleo de la microprogramación.
4. Se introdujeron algunas técnicas para procesado en paralelo o concurrente, tales
como segmentación, multiprogramación y multiproceso, con el fin de incrementar
la velocidad efectiva del ordenador.
5. Se desarrollaron métodos para la compartición automática de los recursos de un
ordenador.
La existencia de muchos procesos concurrentes en un ordenador requiere la presencia de
una "entidad" que ejerza un control global, supervise la distribución de los recursos del
sistema, planifique operaciones, evite interferencias entre los diferentes procesos, etc. Esta
entidad se llamó "sistema operativo", descendiente de los programas monitores de la anterior
generación. El uso generalizado de los sistemas operativos es una característica importante de
los ordenadores de esta tercera generación. Así mismo, aparecen los primeros sistemas
interactivos cuyo uso se generalizó en la cuarta generación.
El número de ordenadores diferentes de tercera generación es muy elevado.
Probablemente la "serie" 360 de IBM sea el ordenador más representativo de esta época.
7
Apuntes de Informática
El concepto de serie o "familia" englobaba un conjunto de modelos de ordenadores que
cubrían un aspecto amplio de posibilidades: desde lentos y con poca memoria a muy rápidos y
con mucha memoria pero que eran compatibles entre sí, es decir, un programa desarrollado
para un "miembro" de la familia podría ejecutarse sin apenas modificación en cualquier otro
miembro. La serie 360 de IBM apareció en 1965 y muchas de sus características marcaron
una norma en la industria de ordenadores (como ha ocurrido más recientemente, con los PCs).
En esta generación aparece la microprogramación como una técnica para implementar la
función de control de un procesador de una forma flexible y sistemática. Esta técnica había
sido descrita por Wilkes en 1951 pero su empleo no se generalizó hasta mediados de los 60,
en que IBM la introdujo en alguna de sus máquinas 360.
Otras técnicas de esta generación tienden a hacer un empleo óptimo de uno de los recursos
más caros de la época: la memoria central. Las técnicas de multiprogramación implicaban
varios programas en la memoria principal ejecutándose de forma concurrente. Dado que la
memoria principal era muy cara, resultaba imposible almacenar todos los programas en
ejecución y sus datos en memoria a la vez. Así, se hizo necesario distribuir la memoria de
forma dinámica entre los diferentes procesos, y mover o "intercambiar" información entre
memoria principal y secundaria y viceversa. Una tarea importante del sistema operativo era (y
es) efectuar esta operación automáticamente.
Paralelamente, un concepto aparecido en la Universidad de Manchester a finales de los
años 40 pudo llegar a realizarse en esta generación, sobre todo a partir de 1972. Dicho
concepto es la "memoria virtual", según el cual cada programador se despreocupa de la
memoria "real" del ordenador y escribe sus programas como si tuviese una memoria de
tamaño prácticamente ilimitado. El sistema operativo se encarga de "traducir" las direcciones
virtuales del programador en direcciones "reales" de memoria. Con ello se persigue un doble
objetivo: por un lado, una máxima ocupación de la memoria real disponible, por otro, darle al
usuario la libertad de emplear estructuras de datos casi ilimitadas.
La Cuarta Generación
Si la distinción entre la segunda y tercera generación es algo difusa, mucho más lo es la
distinción entre tercera y cuarta, hasta el punto de que esta última ha sido llamada la
"innombrada". No obstante, se suele señalar 1975 como fecha de transición, y entre las
características diferenciadoras cabe distinguir:
1. El empleo de circuitos integrados de alta escala (LSI) y muy alta escala de
integración (VLSI), en particular, de los microprocesadores.
2. La desaparición de las memorias de ferritas y su sustitución por las memorias de
semiconductores en circuitos integrados.
3. La aparición de los ordenadores "personales".
4. La tendencia cada vez mayor hacia la normalización en los sistemas operativos.
8
Introducción
El primer microprocesador disponible comercialmente fue el INTEL 4004 (1971). Era un
microprocesador de 4 bits. Dos años después apareció el primer microprocesador de 8 bit, el
Intel 8008, al que siguieron el 8080, Z-80, Motorola 6800, Rockwell 6502, etc. Estos micros
de 8 bits fueron la base de los primeros ordenadores "personales".
De estos primeros ordenadores de 8 bits el de más éxito fue sin duda el Apple II, diseñado
por S. Jobs y S. Wozniac en Mayo de 1977. Esperaban unas ventas de 10.000 unidades y
llevan vendidos hasta la fecha más de 1 millón, aunque es cierto que no con el diseño original.
Se basa en el micro Rockwell 6502.
En 1979 aparece el primer microprocesador de 16 bits el Motorola 68000 en el que se
basan una serie de ordenadores personales y de miniordenadores: Macintosh, Sun, Atari,
Compaq, etc. Intel lanza su primer micro de 16 bits en 1980, el 8086, y basado en él (en
Agosto de 1981) IBM lanza su primer ordenador personal, IBM-PC (International Business
Machines-Personal Computer), que constituyó un inmediato éxito de ventas (1.200.000
unidades el primer año), hasta el punto de haberse convertido en un "standard", existiendo
más de 10.000 programas disponibles comercialmente.
Por otra parte, al ser el PC de IBM un producto abierto, pronto surgieron productos
"compatibles", basados en el mismo micro, con el mismo sistema operativo, MS-DOS, pero a
unos precios considerablemente más bajos y, en algunos casos, con unas especificaciones de
funcionamiento superiores.
En Agosto de 1984, IBM lanza el PC-AT, basado en el procesador Intel 80286. Se trata de
un micro de 16 bits más sofisticado y rápido que el 8088 (salió después del 8086, para bajar
costes). Supuso un gran salto sobre el PC inicial, ya que tiene una velocidad cinco veces
mayor. El PC-AT, al igual que ocurrió con el PC, fue rápidamente "copiado" y surgieron
multitud de "clónicos" más o menos compatibles, pero con precios considerablemente
menores. Soporta el mismo sistema operativo que el PC (MS-DOS) y además, el XENIX, un
sistema operativo basado en UNIX.
El mundo de los microprocesadores está experimentando grandes progresos. A principios
de 1987 IBM lanza al mundo el PS/2, el modelo 70-A21, incorpora el microprocesador Intel
80386 de 32 bits con una frecuencia de 25 MHz. En el Congreso Internacional de Circuito
Integrado ISSCC (San Francisco, Febrero de 1988) Texas Instruments presentó un prototipo
realizado con arseniuro de galio con una potencia de 100 MIPS. Fujitsu presentó un micro
basado en uniones superconductoras con una frecuencia de 770 MHz.
A principios de 1992 Intel promociona una campaña, con la pretensión de erradicar el
microprocesador 80286 cerrando así un mercado a un producto suyo, con la pretensión de que
el nuevo "mínimo" sea el microprocesador 80386SX. El microprocesador 80486 está en el
mercado, incorporando memoria caché y coprocesador en el mismo chip. También está ya en
el mercado su sucesor el PENTIUM, que incorpora ciertas características RISC.
Actualmente existen ordenadores personales con una velocidad de ejecución superior a
100 MIPS, una memoria central de 256 Mbytes, DVD con una capacidad que va desde los 4,7
a los 17 Gb, pantalla gráfica de gran precisión, etc. No es un microordenador aislado. Gracias
a una red local puede dialogar con otros ordenadores.
9
Apuntes de Informática
La gran demanda de potencias de cálculo cada vez mayores por parte de numerosas
disciplinas (dinámica de fluidos, meteorología, física nuclear, etc.), ha generado arquitecturas
paralelas muy potentes. En 1978 se comercializó el Cray-1 que fue el primer ordenador
multiprocesador; incluye varios procesadores que funcionan en paralelo y que aplican la
estructura pipeline a cada procesador.
Otro avance en el desarrollo de arquitecturas paralelas lo constituyen "las máquinas
neuronales". Estas máquinas pretenden imitar alguna de las facultades del cerebro humano a
partir de la creación de redes de neuronas artificiales (neuronas formales) altamente
interconectadas que permitan, a partir de un conjunto de informaciones memorizadas,
identificar informaciones desconocidas por asociación de ideas. El estudio de estas máquinas
se encuentra en la etapa de modelos teóricos y los resultados existentes son a nivel de
simulación.
La Quinta Generación
El proyecto de los ordenadores de la 5ª generación surgió en 1979 en el Ministerio de
Industria y Comercio Internacional de Japón (MITI). Su objetivo es desarrollar una nueva
generación de ordenadores para la década de los 90. El proyecto fue presentado en Octubre de
1981 y comprendía 3 etapas:
1ª Etapa (1982-1985):
Investigar y desarrollar nuevas tecnologías necesarias
para los ordenadores de la 5ª generación.
2ª Etapa (1985-1989):
A partir de los resultados de la etapa anterior se
desarrollarán arquitecturas paralelas con sistemas
multiprocesadores.
3ª Etapa (1989-1992):
Desarrollo de un prototipo de máquina de la 5ª
generación.
Las máquinas de esta nueva generación no se basarán en el modelo de Von Neumann,
pues serán "máquinas lógicas" cuyos objetivos serán, no sólo trabajar con datos, sino procesar
símbolos, realizar deducciones, entender los lenguajes "naturales". El objetivo fundamental de
la 5ª generación será lograr máquinas que "procesen el conocimiento".
Para lograr estos objetivos se están desarrollando dos grandes temas de investigación:
1.- Hardware:
- máquina de inferencias
- máquina de la base de conocimientos
2.- Software:
- desarrollo de un lenguaje núcleo de la 5ª generación
- desarrollo de un software de inferencia
- desarrollo de software de gestión de la base de conocimientos
- desarrollo de un software de "interface" inteligente
- desarrollo de un software de programación inteligente
10
Introducción
Aun cuando la meta final es el desarrollo de un prototipo de máquina de 5ª generación, el
éxito del proyecto japonés no sólo se medirá en términos de haber realizado o no dicho
prototipo, sino que también se tendrán en cuenta las nuevas tecnologías desarrolladas.
La respuesta europea a este proyecto de 5ª generación es el proyecto "ESPRIT" (European
Strategic Program for Research and Developement in Information Tecnology) puesto en
marcha a principios de 1984.
La participación de la industria europea en la producción electrónica mundial cayó del
26% en 1980 al 21% en 1984,y en 1986 el comercio europeo en electrónica con el resto del
mundo tenía un déficit de 14.000 millones de dólares.
Detrás de la creación de ESPRIT en 1984 subyace la idea de que sí las compañías
europeas querían volver a ganar su lugar entre los lideres mundiales de la electrónica, no
podían permitirse la dispersión de su I+D (investigación y desarrollo) en proyectos a corto
plazo y subóptimos, que llevan a productos diseñados para mercados nacionales limitados y
no al éxito en mercados internacionales.
Uno de los principales objetivos de ESPRIT es la ayuda a la industria europea de la
información, de modo que ésta pueda desarrollar la tecnología avanzada necesaria para la
competencia comercial de los años noventa. Otro objetivo es la promoción de la cooperación
industrial europea en tecnología de la información. En tercer lugar, ESPRIT contribuye tanto
al desarrollo como a la realización de estándares internacionales aceptados.
La electrónica y la informática se han visto impulsadas por una ola irresistible de avances
tecnológicos desde el momento en que se desarrolló el transistor como conmutador
electrónico semiconductor de alta fiabilidad.
Los primeros transistores eran grandes y primitivos, pero a medida que le tecnología fue
madurando su capacidad aumentó rápidamente. Cada 15 años el transistor se ha hecho unas
diez veces más pequeño. Como consecuencia, cada generación de chips ha sido más rápida,
más barata y más fiable que las anteriores, mejorando su funcionamiento y permitiendo la
aparición de nuevas aplicaciones.
Pero hay otro aspecto menos evidente derivado de la disminución del tamaño de los
transistores, que es el relacionado con el diseño de los sistemas electrónicos. Si el tamaño de
un transistor se divide por diez, es posible empaquetar 1000 veces más transistores en una
superficie dada. Las primeras dos potencias de 10 vienen dadas por la reducción a escala, la
tercera se logra a través de procesos más complejos de empaquetamiento de los transistores
sobre la superficie de silicio, usando la tercera dimensión para crear capas adicionales de
interconexión. Por cada incremento del número de transistores en un factor de mil, su
velocidad, en cambio, sólo se ha incrementado 10 veces. Para mejorar la velocidad de un
sistema, el diseñador ha sacado provecho del número de transistores usando varios a la vez, en
lo que se denomina procesado en paralelo.
El transcomputador constituye una respuesta a este problema, basándose en la idea de que
los sistemas del futuro se construirán interconectando ordenadores, así como los sistemas
electrónicos del pasado fueron construidos interconectando circuitos más simples (puertas
lógicas). El transcomputador es un ordenador completo en un chip. Incorpora un procesador
para efectuar los cálculos, una memoria integral para almacenar la información, y enlaces de
11
Apuntes de Informática
comunicación de entrada y salida. Así, por ejemplo, el transcomputador T800, que mide
menos de 1 cm², tiene un procesador de 32 bits capaz de efectuar 10 millones de instrucciones
por segundo, integrado con un coprocesador de 64 bits capaz de realizar 1,5 millones de
operaciones de coma flotante por segundo.
Con el desarrollo de ESPRIT se ha llegado a resultados concretos y creado un nuevo clima
de confianza. Dejando claro el valor de un enfoque coordinado de las altas tecnologías dentro
de la Comunidad Europea, y estableciendo un marco para asociaciones con éxito más allá de
las fronteras nacionales en áreas estratégicas de I+D.
12