Universidad Nacional de San Juan Facultad de Ingeniería Unidad I Antecedentes Históricos Cátedra: Computación I (ELO) Informática I (BIO) Departamento de Electrónica y Automatica COMPUTACIÓN I (ELO) - INFORMÁTICA I (BIO) Antecedentes Históricos INDICE 1 ANTECEDENTES HISTÓRICOS..................................................................................................................................... 2 1.1 1.2 1.3 INTRODUCCIÓN ............................................................................................................................................................... 2 ANTECEDENTES HISTÓRICOS .......................................................................................................................................... 2 GENERACIONES DE COMPUTADORAS .............................................................................................................................. 5 i COMPUTACIÓN I (ELO) - INFORMÁTICA I (BIO) Antecedentes Históricos UNIDAD 1 1 Antecedentes Históricos 1.1 Introducción La Informática es la ciencia que se dedica al estudio de todo lo referido al tratamiento automático de la Información, abarcando un campo muy amplio que comprende el estudio de los Computadores u Ordenadores, Periféricos, Lenguajes de Programación, Programas de Aplicación, etc. 1.2 Antecedentes Históricos La primera máquina de calcular ha sido probablemente el ábaco. Este fue desarrollado en la Mesopotamia (Sumeria) aproximadamente 2500 años antes de Cristo, pero fue popularizado en China hacia el año 200 A.C. El ábaco es aún ampliamente utilizado en Asia y África. El ábaco es un instrumento destinado a facilitar el cálculo, consta de una tabla con varillas verticales donde se deslizan pequeñas cuentas. En cada columna podemos distinguir cinco cuentas elementales y dos cuentas que representan cinco unidades colocadas en la parte superior. Con un poco de paciencia y algo de práctica se pueden realizar, con éste simple elemento, adiciones y sustracciones de números de varias cifras a velocidades bastantes elevadas. El ábaco se impuso en Europa desplazando a los "cálculi", piedrecitas que usaban los romanos para contar. En la Edad Media, los árabes transmiten desde España los conocimientos matemáticos adquiridos en la India, basados en el sistema decimal de numeración, el cual se caracteriza por ser posicional y utilizar el cero. En 1617 John Napier sistematiza el uso del punto decimal, y a fines de siglo inventa el logaritmo, por medio del cual el problema de multiplicar y dividir se reduce a sumas y restas. Basado en éste descubrimiento Edmundo Gunter inventó un dispositivo antecesor de la regla de cálculo, la cual fue luego desarrollada por William Oughtred quien difundió también el signo "x" para la multiplicación. Napier popularizó el uso de las "varillas o huesos de Napier", como instrumento de cálculo. En 1642 el filósofo y científico francés Pascal, cuando contaba con solo 19 años de edad inventó una máquina calculadora, la cual estaba construida a partir de un determinado número de ruedas dentadas de diez dientes cada una. El principio de funcionamiento era similar al de los relojes a cuerda y al de los cuenta kilómetros y servía para sumar y restar. Algunos años más tarde el inglés Samuel Moreland, perfeccionó la máquina de Pascal permitiéndole multiplicar, al poco tiempo el alemán Gottfried W. Liebnitz, concluyó el "contador escalonado", capaz de sumar, restar, multiplicar, dividir y extraer raíces cuadradas. También demostró las ventajas del Sistema de Numeración Binario sobre el Decimal. En el siglo XVII Jacquard, un francés dedicado a la industria textil inventa un telar programado con tarjetas perforadas, cuyas repercusiones en el área de la computación llegan hasta nuestros días. El telar funcionaba de manera que las agujas pasaban por los agujeros de tarjetas e incorporaban el hilo al tejido lográndose diseños muy originales. Estas tarjetas actuaban como un verdadero programa para la máquina tejedora. En 1833, Charles Babbage, reflexionó en lo inútil de aumentar la velocidad de las máquinas mecánicas, si las operaciones debían seguir siendo preparadas manualmente. Era preciso automatizar el paso de una operación a la siguiente. Pero, al contrario de los autómatas de 2 COMPUTACIÓN I (ELO) - INFORMÁTICA I (BIO) Antecedentes Históricos reloj de las iglesias, que repiten ineludiblemente los mismos gestos a las mismas horas, en la computadora las secuencias a ejecutar no eran siempre las mismas. Entonces tomo la idea y el concepto utilizado por Jacquard para la automatización de los telares, o sea el concepto de programa exterior. Teniendo en cuenta lo anterior, Babbage concibe la "máquina de diferencias", la cual calculaba e imprimía el cubo de cualquier número partiendo de valores calculados anteriormente, éste proyecto es dejado de lado y en 1835 inicia el desarrollo de la máquina analítica, utilizando la tecnología de Jacquard y Pascal, la cual era demasiado compleja para la época. Esta máquina podía utilizar sus resultados como entrada para nuevos cálculos, permitía realizar cualquier operación matemática, y se puede considerar como la primer máquina programable con un programa externo, preparado en tarjetas perforadas por cuyos orificios pasaban los alambres que activaban los engranajes correspondientes. Según el diseño podía almacenar mil números de cincuenta cifras, utilizar funciones auxiliares de biblioteca, comparar números y actuar en función de resultados; en conclusión una estructura de funcionamiento similar a las actuales computadoras electrónicas. La tecnología de la época no permitió la realización de ése proyecto el cual fue utilizado en 1937 como apoyo de nuevos adelantos. Un avance importante en la historia de las computadoras lo realizó George Boole, con la publicación de su libro sobre "Análisis Matemático y Lógica" en el cual demostró que las ideas que se manejaban en lógica podían ser reducidas a un sistema algebraico, lo que se conoce hoy día con el nombre de "Algebra de BOOLE". En la actualidad este Algebra es el elemento base para el diseño de Circuitos Digitales. La primera máquina electromecánica es realizada por el doctor Herman Hollerith, la cual trabajaba con tarjetas perforadas y se utilizó en el censo de EE.UU en 1885. Esta máquina contabilizaba las perforaciones, sumando las de las mismas características. Después de diversas mejoras, entre ellas el uso de la electricidad, se logra al fin una máquina clasificadora de tarjetas perforadas. Esta máquina permitía leer grandes volúmenes de datos desordenados produciendo información útil con alta velocidad. A principio de este siglo aparecieron equipos industriales a tarjetas perforadas para trabajos contables estadísticos. Fueron obra del ingeniero estadounidense Powers y fueron fabricadas por Remington Rand en los EE.UU y por Samas en Europa. En ésta misma época Thomas Watson creó la International Bussiness Machine, la hoy conocida firma I.B.M. Por otra parte, en 1924, el ingeniero noruego Bull registra patentes de material electromecánico. Un profesor de la Universidad de Harvard, Howard Aiken estudia en 1937 los escritos de Babbage y determina que se pueden implementar. Conjuntamente con ingenieros de la I.B.M y una subvención de u$s 500.000 desarrollaron durante 5 años la calculadora Mark I totalmente automática, construida con tecnología electromecánica a relés. Esta máquina tenía un tamaño de casi 15 m de largo, 2,4 m de alto, se utilizaron para su construcción 500 km de cable y se realizaron 3.000.000 de conexiones eléctricas. Se accionaba y controlaba por medio cintas o tarjetas perforadas y los resultados eran emitidos en tarjetas o bien en máquinas de escribir eléctricas, permitía resolver cálculos matemáticos para Ingeniería y Física. Mientras se desarrollaba la Mark I, John Atanosoff conjuntamente con su ayudante Cliford Berry, en la Universidad de Iowa, con una subvención de solo u$s 650, contruyeron la ABC , primera Computadora Electrónica Digital dedicada solamente a la resolución de ecuaciones lineales (29 ecuaciones con 29 incógnitas), este diseño hizo obsoleta la Mark I antes de comenzar a trabajar. Con posterioridad Aiken desarrolló una segunda computadora la MARK II más rápida pero también electromecánica, la cual se utilizó para cálculos de requerimiento militar. 3 COMPUTACIÓN I (ELO) - INFORMÁTICA I (BIO) Antecedentes Históricos En la Universidad de Pennsylvania durante 1944, los Profesores Eckert y Mauchly desarrollan la máquina electrónica ENIAC (Calculador e Integrador Numérico Electrónico). Esta es todavía una máquina a programa cableado ya que estaba controlada por cables integrados a su propio cuerpo. La ENIAC era cien veces más rápida que sus antecesoras, necesitaba un espacio de 150 m2, para su construcción se utilizaron 18.000 tubos de vacío y 6.000 interruptores. Consumía 140 Kwh y necesitaba poderosos equipos de aire acondicionado. Esta máquina fue utilizada por físicos nucleares. En el año 1946 el doctor John von Neumann, que estaba en aquel entonces en el instituto de investigaciones avanzadas de Princeton, elaboró el concepto de programa grabado (la secuencia de instrucciones del programa es proporcionado a la memoria del calculador). Por lo tanto la máquina requería de una memoria para almacenar las instrucciones en lugar de ejecutar las operaciones al compás de su lectura en una cinta perforada, como en las máquinas de programa exterior. A este tipo de computadora se le dio el nombre de máquina de programa registrado. En la actualidad todos los ordenadores funcionan de acuerdo a éste principio. La máquina de programa exterior necesitaba de la intervención humana cada vez que se planteaba una toma de decisión, en otras palabras el tratamiento siguiente dependía de los resultados que se habían obtenido hasta ese momento. En base a las nuevas posibilidades de la técnica de programa registrado o almacenado, Von Neumann concibió la idea de hacer automáticas las operaciones de decisión lógica, dotando la máquina de una instrucción llamada "salto condicional" o también "ruptura condicional de secuencia". Según el valor de un resultado ya obtenido, positivo o negativo por ejemplo, la máquina ejecutaría una u otra parte del programa. A éste concepto se le llamó "ruptura de secuencias". En 1950 los profesores Eckert y Mauchly junto con la Remington Rand Corporation, fabrican la UNIVAC I, primer ordenador comercial el cual fue utilizado por la Oficina de Censos de los EE.UU . También en éste año fue desarrollado el BINAC, primer computador que trabajaba en sistema binario. Entretanto, la tecnología de los componentes empieza una verdadera revolución. Así, en 1948, los laboratorios de la Bell Telephone inventan el transistor, obra de Bardeen, Brattain y Schockley. En 1959, la empresa Texas Instrumets registra una patente sobre el circuito integrado, mientras que la empresa Fairchild, también estadounidense, pone a punto el procedimiento planar, utilizado para la construcción de circuitos integrados. En 1959 aparece el primer ordenador completamente transistorizado, el NCR-GE 304: su unidad central estaba formada por 8000 diodos y 4000 transistores, podía realizar una suma en 60 microsegundos. Todos los esfuerzos iban dirigidos al desarrollo de máquinas cada vez mas potentes y sofisticadas. En 1960, Kenneth H. Olsen, que creo la empresa Digital Equipment, fabrica el PDP1, seguido en 1963 por el PDP5 a transistores y memoria de núcleos de ferrita que valía u$s 30.000. Dos años más tarde aparece el PDP8: la suma pasa de 18 a 3,2 microsegundos y el precio baja a u$s 18.000; la era de las minicomputadoras había comenzado. Este progreso constante de los materiales (hardware) viene acompañado de una evolución no menos importante de los programas (software), aparecen los lenguajes perfeccionados, trabajo en tiempo real, en tiempo compartido, por lotes, la creación de sistemas operativos, etc. Las memorias centrales, a núcleos de ferrita, son reemplazadas por circuitos integrados. También se desarrollaron los periféricos: en 1972 aparece el disco flexible, periférico para las mini y microcomputadoras. Un año antes, en 1971 la empresa Intel comercializa el primer microprocesador integral, el MP4004. Este elemento de 4 bits, junto con otro que apareció simultáneamente estuvo destinado a calculadoras programables; un año mas tarde Intel 4 COMPUTACIÓN I (ELO) - INFORMÁTICA I (BIO) Antecedentes Históricos desarrolla el primer microprocesador de 8 bits, el 8008. En 1973 este es utilizado por la empresa francesa REE para realizar el primer microcomputador comercializado: "Micral". También en 1973 Intel pone en servicio el 8080 diez veces mas rápido que el 8008 por que está concebido con tecnología MOS de canal N; su programación es compatible con la del 8008. También en éste año National Semiconductor desarrolla el IMP-16, y en 1974, Motorola anuncia el 6800. Hacia 1975, Intersil desarrolla un microprocesador de 12 bits el IM 6100, que utiliza las instrucciones del PDP8. A partir de 1975 También tiene importancia la aparición de las empresas llamadas "segundas fuentes" es decir, a la existencia de varios fabricantes de un producto idéntico, lo que constituye un aumento de seguridad para el usuario. 1.3 Generaciones de Computadoras Desde que en la primera parte de la década de los '50 se empezaron a utilizar los computadores con fines comerciales éstos han evolucionado según el avance tecnológico de cada época y se pueden distinguir varias generaciones. La primera generación, que comprende desde 1951 a 1958, se caracteriza por el uso de válvulas electrónicas en la construcción de las computadoras, lo que implicaba máquinas de gran tamaño y mantenimiento complicado. Generaban abundante calor y necesitaban poderosos equipos de refrigeración. Los tiempos de procesamientos eran del orden del milisegundo, se podían realizar hasta 40.000 sumas por segundo. Otra característica de los computadores de ésta generación era la escasa confiabilidad; por ejemplo, el tiempo medio entre fallas (MTBF) era inferior a una hora, esto implicaba que para garantizar el buen funcionamiento de un equipo se necesitaba la dedicación total de un grupo de personas encargadas del mantenimiento. La forma de ejecutar los trabajos en los ordenadores de ésta generación era estrictamente secuencial: el programa que previamente se había perforado en tarjetas se cargaba en la memoria del computador, y a continuación se ejecutaba procesando las instrucciones de entradas de datos desde cualquiera de los dispositivos que se disponían. En cada instante el ordenador no se dedicaba mas que a una tarea, por lo que si se estaba realizando un proceso de lectura de tarjetas perforadas, el resto de los componentes del sistema permanecían ociosos hasta que éste finalizaba. La segunda generación, que comprende desde 1959 a 1964, se caracteriza por que se reemplazaron las válvulas electrónicas por transistores, éstos iban montados en una cápsula y se ensamblaban junto con otros componentes como diodos y resistencias sobre placas de varias centenas de centímetros cuadrados. Esta innovación produjo una reducción considerable en el tamaño de los computadores y un notable incremento de su confiabilidad, de forma que los volúmenes se dividieran aproximadamente por cinco y la confiabilidad se multiplicó por diez. También se disminuyó la disipación del calor, y la velocidad de cálculo aumentó al orden del microsegundo, se podían realizar hasta 200.000 sumas por segundo. La memoria estaba compuesta de núcleos de ferrita. Los elementos más baratos y lentos de un sistema de cómputos eran las unidades de entrada y salida (con respecto al costo del computador), por lo tanto no tenía mucho sentido mantener detenidos a los elementos más caros de los sistemas mientras se ejecutan instrucciones de entradas de datos y de salida de resultados. Los equipos de la segunda generación encaran la solución de éste inconveniente y ofrecían la posibilidad de realizar en forma simultánea las operaciones de cálculo puro con las de entrada y salida. Sin embargo ésta simultaneidad solo era posible dentro de la ejecución de un mismo programa, por lo que, en general, tal alternativa 5 COMPUTACIÓN I (ELO) - INFORMÁTICA I (BIO) Antecedentes Históricos era poco utilizada, por lo tanto se tenía como resultado una baja amortizacíon de la unidad central respecto de las periféricas. Más adelante se comenzó a utilizar cintas magnéticas, cargando en un computador auxiliar el "lote" de trabajo que, posteriormente, sería ejecutado en conjunto por el ordenador principal, a ésta forma de trabajo se le llamó procesamiento en lotes o procesamiento "batch". De ésta forma se obtenía la posibilidad de ejecutar procesos de cálculos y de entrada o salida de datos simultáneamente; cuando había que exteriorizar resultados, éstos se vertían sobre otra cinta magnética que era procesada finalmente por un ordenador auxiliar, el que se ocupaba de realizar ésta tarea secundaria. El principal defecto de éste proceso era que había que esperar a que el computador principal terminara con todos los trabajos del lote para conocer recién los resultados. La tercera generación, que comprende de 1965 a 1978, se caracteriza por la utilización de los circuitos integrados. Aunque el paso dado de la primera a la segunda generación había sido de considerable magnitud, el dado entre la segunda y tercera fue aun mayor. Los circuitos integrados, cuyo tamaño era comparable al del transistor, contenian varias decenas e incluso centenas de componentes elementales interconectados entre sí, en una misma pastilla (chip). Esto trajo consigo una nueva miniaturización de los equipos y volvió a incrementarse el período medio entre fallas, pasando de un tiempo medio próximo a la hora, en la primera generación, a varios miles de horas en ésta tercera. La velocidad se incrementó a tal punto que para la ejecución de las operaciones elementales eran suficientes algunos nanosegundos, con lo que se pasó de máquinas de 1000 instrucciones por segundos a 1.000.000 de instrucciones por segundo (1 MIPS). En la tercera generación era posible la ejecución de varios programas simultáneamente, sin que para ello se necesitara recurrir a un ordenador auxiliar. por supuesto, en cada instante dado, solo un programa era el que estaba siendo procesado en la unidad central, si bien los programas restantes trabajaban simultáneamente con las unidades de entrada y salida. Cuando el programa que ejecutaba la unidad central necesitaba de algún dato, otro programa pasaba a ocupar su lugar, mientras que el anterior ingresaba en el conjunto de programas que realizaban operaciones de entrada o salida. Este método de funcionamiento denominado multiprogramación permitió mejorar sustancialmente el rendimiento del computador al elevarse el tiempo de utilización de la unidad central. La tercera generación también permitió acercar la informática a los usuarios finales, tanto a los profesionales informáticos como a los de otras especialidades, a través del teleprocesamiento. El teleprocesamiento permite al usuario realizar la entrada de datos desde terminales remotos, y recibir los resultados en el mismo lugar. La cuarta generación: A partir de la década de los setenta se produjo una nueva transformación en el mundo de la Informática, debido al nacimiento y posterior utilización masiva del microprocesador. También se perfeccionaron las unidades auxiliares de almacenamiento y comunicación. Esta es la generación vigente en la actualidad, en la que la microelectrónica ha volcado toda su innovación en el hardware de los computadores aportando circuitos integrados de media, alta y muy alta escala de integración, caracterizados por una elevadísima confiabilidad y alta velocidad de operación. La velocidad de cálculo son asombrosas, con aproximadamente 15.000.000 de sumas por segundo. Lo que menos ha variado, al menos sustancialmente como lo hizo en los anteriores saltos generacionales, son los procedimientos de explotación de la máquina. 6 COMPUTACIÓN I (ELO) - INFORMÁTICA I (BIO) Antecedentes Históricos El protagonista indiscutible de ésta cuarta generación es el computador Personal, cuyas prestaciones son equiparables a la de los minicomputadores e incluso a la de grandes equipos de hace algunos años. El ordenador personal es el responsable de que la informática haya logrado la enorme popularidad que goza en nuestros días. La presencia del ordenador en la mesa de trabajo de muchos profesionales e incluso en millones de hogares, es un hecho que ha pasado de lo inimaginable a la plena realidad cotidiana. Se estima para los próximos años un avance que va más allá de la utilización de un procesador a varios interactuando entre si, con programas mas desarrollados usando métodos heurísticos para la búsqueda de soluciones, comunicación entre hombre y máquina mediante lenguaje natural, capacidad de realizar millones de operaciones lógicas por segundo y capacidad de administración de bases de conocimiento, permitiendo que las computadoras puedan a la vez aprender. 7