Unidad 1 / Escenario 2 Lectura fundamental Arquitectura del computador Contenido 1 2 3 4 5 6 7 Generación 0: El concepto de computador Generación 1: Primeros computadores electrónicos Generación 2: Computadores con dispositivos semiconductores Generación 3: Computadores con circuitos integrados Generación 4: El computador personal (PC) Generación 5: Actualidad y nuevas tendencias Proyecto números primos Palabras clave: historia de la computación, computador, informática. Antes de profundizar en la arquitectura de un sistema de cómputo es de suma importancia comprender el origen y evolución del mismo; esto permitirá no solo aumentar el conocimiento contextual sobre el tema, sino entender y justificar las tendencias actuales en este campo. Para abordar este viaje al pasado de los computadores, se establecen tres enfoques principales: las tecnologías disponibles en cada época, los personajes y pensadores influyentes y los productos que fueron presentados en cada hito o momento histórico. Así se logrará una visión integral que permitirá relacionar hechos diversos y algunos muy populares para hacer la historia aún más interesante. De esta manera, es muy importante recordar que la historia del computador se solapa con otras líneas de tiempo de gran importancia como: la evolución de los semiconductores, los procesadores o la informática. Sin embargo, no se profundizará en estas líneas por no ser el objeto de esta unidad. 1. Generación 0: el concepto de computador Desde comienzos del siglo XVIII existía la inquietud de varios pensadores sobre la manera de automatizar tareas, sobre todo aquellas engorrosas y repetitivas que por lo general después de ser asimiladas se volvían triviales. El telar de Jacquard es una invención famosa del año 1801 que permitía tejer complejos diseños de manera sencilla y automatizada, a partir de tarjetas perforadas. De esta manera, cualquier persona inexperta podía realizar telas con complejos diseños (Millán, y otros, 2007). ¡Recuerda!... Ada King-Noel, conocida como Ada Lovelace fue la primera persona en programar algoritmos ejecutables por un mecanismo artificial. Por este tiempo, realizar cálculos era también una actividad que demandaba mucho tiempo, por lo que antes de pensar en computadores propiamente dichos, se pensaba en calculadoras. Con este enfoque, el matemático británico Charles Babbage propuso la máquina analítica en el año 1833, que no era más que un complejo sistema mecánico de palancas y engranajes que permitían programar operaciones matemáticas. Lamentablemente, Babage nunca pudo terminar de construir su invención. POLITÉCNICO GRANCOLOMBIANO POLITÉCNICO GRANCOLOMBIANO 2 Sin embargo, su impacto fue tal que Ada King-Noel condesa de Lovelace e hija del famoso poeta Lord Byron, se interesó por ésta y escribió los primeros algoritmos para la misma siendo reconocida por ser la primera programadora de la historia. Otra aproximación al computador fue la máquina tabuladora de Hollerith desarrollada en 1890 para realizar el censo de aquel año en los Estados Unidos logrando reducir drásticamente el tiempo de captura y procesamiento de los datos del mismo. Gracias a ella, Herman Hollerith es considerado el primer informático de la historia al lograr el tratamiento automatizado de la información; de ahí el origen de la “informática”: información automática (Dale & Lewis, 2007). 2. Generación 1: primeros computadores electrónicos Gracias a los avances eléctricos del siglo XIX, entre los más destacados la invención de la bombilla por Thomas Edison (precursora de las válvulas de vacío posteriormente) se logró hacer más eficientes y poderosas a las calculadoras mecánicas existentes en esa época. En este contexto, surgió el ENIAC (Electronical Numeric Integrator and Computer), durante los años cuarenta (1943-1946), tristemente motivado por necesidades militares durante la segunda guerra mundial, éste fue creado para el cálculo de trayectorias de proyectiles balísticos (Stallings, 2005). El ENIAC era totalmente digital por lo que ejecutaba procesos y operaciones en lenguaje de máquina. Operaba gracias a más de 10 mil válvulas de vacío y ocupaba el área de una sala entera. Su programación se realizaba a través de miles de interruptores gracias a un talentoso grupo de mujeres. En síntesis... Debido a las necesidades de automatización y programación de tareas, surgen las primeras máquinas mecánicas precursoras del concepto del computador como tal. Debido a la coyuntura política y económica que se vivía en ese entonces gracias a la segunda guerra mundial, rápidamente aparecieron versiones mejoradas del ENIAC con distintos propósitos tales como el EDSAC (1949), BINAC (1949), EDVAC (1951) y el UNIVAC (1951) (Stallings, 2005). POLITÉCNICO GRANCOLOMBIANO POLITÉCNICO GRANCOLOMBIANO 3 Se destaca el EDVAC (Electronic Discret Variable Automatic Computer) por ser un computador electrónico con programas diseñados para ser almacenados, cuya arquitectura fue diseñada con base en el sistema binario (1s y 0s), a diferencia del ENIAC que poseía una arquitectura basada en el sistema decimal (con los dígitos 0,1,2,3,4,5,6,7,8,9), lo que a la postre se convirtió en un estándar que hasta hoy se sigue aplicando. Así mismo, se destaca el UNIVAC (Universal Automatic Computer) como el primer computador comercial fabricado para un propósito no militar. Como se puede intuir, para esta época los computadores eran herramientas de estado debido a su alto costo de fabricación, mantenimiento y puesta en marcha. John Von Neumann, destacado matemático húngaro - estadounidense, formuló la arquitectura Von Neumann hacia el año 1945 a partir de los avances en computación del momento como el ENIAC. Esta arquitectura ha sido trascendental en el diseño de computadores a tal punto que al día de hoy la mayoría de sistemas de cómputo la utilizan. En síntesis... Durante los años 40s y 50s se sentaron las bases de la computación moderna, ya que surgieron computadores electrónicos gracias a las válvulas de vacío, digitales y programables que ejecutaban lenguajes de máquina propios y concibiendo el concepto de memoria (almacenamiento) gracias a las tarjetas perforadas. Lo anterior fue sintetizado y formalizado por la arquitectura de Von Neumann. 3. Generación 2: computadores con dispositivos semiconductores La invención del transistor por parte de John Bardeen, Walter Houser Brattain y William Shockley marcó un importante hito para la historia del computador, pues permitió que fueran más pequeños, eficientes y a la postre económicos, gracias a que estos reemplazarían las voluminosas y poco robustas válvulas de vacío. Era un problema común en los computadores de la época que se fundieran sus válvulas de vacío, sobre todo al encenderlos y apagarlos, tanto así que en muchos casos era preferible dejarlos permanentemente encendidos con el consecuente gasto de energía que implicaba que tener que estar constantemente supervisando y cambiando sus válvulas. POLITÉCNICO GRANCOLOMBIANO POLITÉCNICO GRANCOLOMBIANO 4 El PDP-1 (1959) por sus siglas en inglés Programmed Data Processor es famoso por ser el computador donde se ejecutó el primer videojuego computarizado de la historia (Bell, Mudge, & McNamara, 1978). Su arquitectura manejaba 18 bits y tenía cuatro mil posiciones de memoria disponibles, así mismo, ejecutaba aproximadamente 100.000 operaciones por segundo. A partir de aquí surgieron los primeros lenguajes de programación de alto nivel tales como Fortran y Cobol, que inicialmente se escribían en tarjetas perforadas y posteriormente en cintas magnéticas. En síntesis... En esta generación los computadores redujeron su tamaño, aumentaron su eficiencia y disminuyeron su costo, situándolos como herramientas institucionales a las que las personas, sobre todo del ámbito académico, podían acceder. Todo lo anterior gracias a la invención del transistor y, por ende, de los avances en materiales semiconductores. 4. Generación 3: computadores con circuitos integrados El desarrollo de circuitos integrados a gran escala elevó el poder de procesamiento de los computadores a nuevos niveles. Con estos nuevos empaquetamientos surgieron los microcontroladores con diseños y arquitecturas que seguían los mismos conceptos propuestos por Von Neumann. Así mismo, se desarrollaron los Sistemas Operativos como respuesta a la necesidad de manejar eficientemente los recursos de los computadores que día a día aumentaban. En la generación 3 se lanzaron lenguajes de programación muy conocidos al día de hoy como Basic y Pascal. Comercialmente hablando, el PDP-8 (1965) fue un exitoso representante de esta generación, ya que logró vender más de 50.000 unidades a un precio de 16.000 dólares de la época. El PDP-8 estaba diseñado con bloques de memoria de 12 bits (Stallings, 2005). POLITÉCNICO GRANCOLOMBIANO POLITÉCNICO GRANCOLOMBIANO 5 5. Generación 4: el computador personal (PC) En síntesis... La alta integración de transistores (de 100 hasta 3000) en una sola placa y los procesos de fabricación masiva de semiconductores, permitió la fabricación de microcontroladores a precios manejables, haciendo a los computadores productos comercialmente accesibles y que buscaban hacer de su programación una actividad más sencilla gracias a sets de instrucción más grandes e intuitivos. Se desarrollan los primeros microprocesadores, entre ellos el famoso Intel 80x86 de donde surge la arquitectura x86 cuyo set de instrucciones sería utilizado en todos los integrantes de la familia de procesadores Pentium de Intel. Gracias al avance exponencial de la tecnología, específicamente de los semiconductores que permitían procesadores y memorias más fiables y veloces, y también gracias a la fabricación en masa de los mismos, se construyeron computadores de propósito general. Nace así el concepto de computador personal, donde por primera vez los computadores son accesibles para la gran mayoría de las personas. IBM materializa este concepto con su línea de computadores IBM PC, utilizando un procesador Intel 8088 (Stallings, 2005). En síntesis... El PC marcó un hito en la historia de la computación debido a que por primera vez los computadores eran accesibles para la mayoría de personas sin que fuera necesario poseer conocimientos en programación o informática. Esta masificación de computadores fue el comienzo de las conexiones entre los mismos que llevarían finalmente a la aparición de la internet. POLITÉCNICO GRANCOLOMBIANO POLITÉCNICO GRANCOLOMBIANO 6 6. Generación 5: actualidad y nuevas tendencias La ley de Moore es una ley empírica propuesta por Gordon E. Moore que estima que aproximadamente cada 24 meses se duplica la cantidad de transistores en un procesador. Además, pronostica el aumento en la potencia de los microprocesadores y la miniaturización de los mismos, redundado en sistemas computacionales cada vez más eficientes y más pequeños. Gracias a este comportamiento en el avance de la tecnología surgen diferentes tendencias y aplicaciones que prometen revolucionar la manera como vivimos actualmente y que de hecho ya han empezado a materializarse. Algunas de estas tendencias son: Dispositivos inteligentes: Debido a las posibilidades tecnológicas que se ofrecen en la actualidad, sobre todo en los materiales y procesos de fabricación de semiconductores, es posible encapsular las partes principales de un computador (almacenamiento, procesador y las líneas de comunicación con dispositivos de entrada y salida -periféricos-) en un solo chip, es una tendencia que se denomina System On Chip (SoC por sus siglas en ingles). Tener un sistema de cómputo completo montado sobre una pequeña placa permite un sin número de aplicaciones que se traducen en arquitecturas diseñadas para la movilidad, donde prima el bajo consumo de energía y la existencia de bloques de hardware especializados en tareas específicas. Un ejemplo son las arquitecturas basadas en ARM, que son el estándar en celulares y dispositivos móviles. Así mismo, tendencias como los dispositivos “vestibles” o más conocidos como Wearables son otro claro ejemplo de esta tendencia. Internet de las cosas: Gracias al avance de los dispositivos inteligentes, descritos anteriormente, y al acelerado desarrollo de la informática y las comunicaciones, surge el internet de las cosas, conocido por sus siglas en inglés como IoT. El internet de las cosas contempla el escenario donde todos los dispositivos que utiliza una persona en su cotidianidad no solo sean inteligentes (Smart) sino que estén conectados entre sí y la internet permanentemente, permitiendo que todos ellos trabajen en sincronía, ahorren energía y faciliten la vida de sus usuarios. POLITÉCNICO GRANCOLOMBIANO POLITÉCNICO GRANCOLOMBIANO 7 Big data: debido a la gran cantidad de sensores y dispositivos inteligentes conectados y en funcionamiento permanente se están generando grandes cantidades de datos que deben ser procesadas y analizadas en tiempo real por servidores diseñados específicamente para tal fin. Al procesamiento, almacenamiento y transformación de grandes cantidades de datos, se le denomina Big data. En síntesis... Múltiples tendencias avanzan a pasos agigantados gracias a la evolución de los computadores. Movilidad, SoC, dispositivos inteligentes, vestibles, internet de las cosas y big data son solo algunos de los interesantes paradigmas que transformaran drásticamente nuestra realidad en los próximos años. 7. Proyecto: números primos Son aquellos números enteros mayores que 1, que sólo son divisibles por sí mismos y por la unidad. Existen distintos algoritmos para calcularlos pero a medida que las cifras aumentan, el costo de procesamiento aumenta de manera exponencial, de ahí que sea muy complejo encontrar números primos grandes. No existe sucesión o serie alguna que describa el comportamiento de este conjunto de números, por lo que se considera que muestran una distribución caótica. La misma complejidad para encontrar números primos justifica su búsqueda, ya que son pieza fundamental para algoritmos de encriptación utilizados por bancos y compañías de seguridad. Euclides demostró que hay infinitos números primos, el mayor número primo conocido es: 274,207,281 − 1 (Caldwell, 2017). Lo anterior evidencia que no es una tarea trivial, y que de hecho es requerida por la sociedad actual, tanto así que se ofrecen premios a quienes descubren los mayores números primos. El proyecto propuesto para la materia es una primera aproximación a este problema y pretende indagar e implementar maneras para abordar el problema comenzando desde la estructura misma del hardware del sistema de cómputo que lo pretende resolver. POLITÉCNICO GRANCOLOMBIANO POLITÉCNICO GRANCOLOMBIANO 8 Referencias Bell, C. G., Mudge, J. C., & McNamara, J. E. (1978). Computer Engineering: A DEC View Of Hardware Systems Design. Bedford: Digital Equipment Corporation. Caldwell, C. K. (4 de Mayo de 2017). The Largest Known Primes--A Summary. Obtenido de http:// primes.utm.edu/largest.html#biggest. Dale, N., & Lewis, J. (2007). History of Computing (adapted by SLU faculty). Obtenido de History of Computing (adapted by SLU faculty): http://cs.slu.edu/~fritts/CSCI140_F10/schedule/csci140_ history.pdf Garcia, D., Expósito, D., García, J., Pérez, Ó., & Peréz, M. (4 de Mayo de 2017). Fundamentos del diseño de computadores. Obtenido de http://ocw.uc3m.es/ingenieria-informatica/arquitectura-decomputadores/materiales/es-m1-01-fund-ocw.pdf Millán, F., Sánchez, F., Salvador, J., Palou, J., Rodríguez, F., Esquena, S., & Villavicencio, H. (2007). Historia de la robótica: de Arquitas de Tarento al robot. Actas Urológicas Españolas, 69-76. Stallings, W. (2005). Organización y arquitectura de computadores. Madrid: Pearson Educación. POLITÉCNICO GRANCOLOMBIANO POLITÉCNICO GRANCOLOMBIANO 9 INFORMACIÓN TÉCNICA Módulo: Arquitectura del Computador Unidad 1: Introducción a la arquitectura del computador Escenario 2: Historia de la arquitectura del computador Autor: Laura Juliana Cortés Rico Asesor Pedagógico: Edwin Alcides Mojica Quintero Diseñador Gráfico: Carlos Montoya Asistente: Leidy Alejandra Morales Eslava Este material pertenece al Politécnico Grancolombiano. Por ende, es de uso exclusivo de las Instituciones adscritas a la Red Ilumno. Prohibida su reproducción total o parcial. POLITÉCNICO GRANCOLOMBIANO POLITÉCNICO GRANCOLOMBIANO 10