16
La computación hasta la actualidad 1.1 ANTECESORES Y RAZÓN DE SER ¿Sirve de algo la filosofía? L a computadora representa, de alguna forma, el genio encerrado en la botella, pues es capaz de cumplir los deseos de rapidez y eficiencia en el cálculo y la organización de grandes volúmenes de datos. Es común oír que la sociedad moderna depende de las computadoras, y se da por hecho que nuestro futuro está ligado al de estas máquinas. Por ello, resulta interesante averiguar cuál es el origen de las computadoras, y más aún enterarse cómo surgieron las ideas que las sustentan, porque ningún invento de alguna im- portancia surge aislado de una conceptualización previa, que a veces lo ante- cede por muchos años. Aunque las computadoras aparecen a finales de la década de 1950, en realidad tienen su origen en ideas tan básicas y primordiales para el ser humano, que no deja de ser extraño que muchos estudiantes y usuarios no las conozcan. Además, al ignorar estas razones se corre el peligro de conside- rar a las computadoras como meros artefactos para calcular, con lo que se pierde el acceso a un rico conjunto de conceptos filosóficos que en buena me- dida le dan sentido a todo el quehacer computacional. Aunque parezca extraño, la filosofía es el punto de partida de este primer libro sobre computación, y en un somero análisis se explicará el porqué. Si se piensa en los medios de que disponemos los humanos para conocer el mundo se debe considerar en primerísimo lugar a la percepción que otorgan los sentidos; y al analizar esto con detenimiento se encuentra que, en princi- pio, no percibimos el mundo en forma directa, sino sólo a través del complejo mecanismo de los sentidos, que confiere a nuestra interpretación caracterís-

La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

La computaciónhasta la actualidad

1.1 ANTECESORES Y RAZÓN DE SER

¿Sirve de algo lafilosofía?

La computadora representa, de alguna forma, el genio encerrado en labotella, pues es capaz de cumplir los deseos de rapidez y eficiencia en elcálculo y la organización de grandes volúmenes de datos. Es común oír

que la sociedad moderna depende de las computadoras, y se da por hecho quenuestro futuro está ligado al de estas máquinas. Por ello, resulta interesanteaveriguar cuál es el origen de las computadoras, y más aún enterarse cómosurgieron las ideas que las sustentan, porque ningún invento de alguna im-portancia surge aislado de una conceptualización previa, que a veces lo ante-cede por muchos años.

Aunque las computadoras aparecen a finales de la década de 1950, enrealidad tienen su origen en ideas tan básicas y primordiales para el serhumano, que no deja de ser extraño que muchos estudiantes y usuarios nolas conozcan. Además, al ignorar estas razones se corre el peligro de conside-rar a las computadoras como meros artefactos para calcular, con lo que sepierde el acceso a un rico conjunto de conceptos filosóficos que en buena me-dida le dan sentido a todo el quehacer computacional.

Aunque parezca extraño, la filosofía es el punto de partida de este primerlibro sobre computación, y en un somero análisis se explicará el porqué.

Si se piensa en los medios de que disponemos los humanos para conocer elmundo se debe considerar en primerísimo lugar a la percepción que otorganlos sentidos; y al analizar esto con detenimiento se encuentra que, en princi-pio, no percibimos el mundo en forma directa, sino sólo a través del complejomecanismo de los sentidos, que confiere a nuestra interpretación caracterís-

Page 2: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

8 Capítulo 1 Lacomputación hasta la actualidad

El proceso de ladescripción-representación

ticas propias. * Mientras más se piensa sobre este tema, menos garantía yseguridad se tiene sobre la existencia objetiva del mundo, pues resulta difícilestablecer en forma definitiva una frontera entre el acto de la percepción y elobjeto percibido. La física moderna lleva esta situación al límite cuando plan-tea cómo, en el dominio de las partículas subatómicas, el hecho mismo deobservar algo lo llega a alterar. Se habla de física cuántica y del principio deincertidumbre de Heisenberg, temas que desafortunadamente quedan fueradel alcance operativo de esta obra, pero que no pueden ser ignorados pornadie que intente conocer la realidad del mundo que lo rodea.

Cuando el ser humano adquiere el manejo del lenguaje, a los pocos añosde edad, la situación da un giro radical: la percepción del mundo es aún me-nos directa que antes y en buena medida se convierte en un conjunto dedescripciones acerca de éste en términos del lenguaje. Estas descripcionesson imágenes mentales estructuradas que todo el tiempo nos dicen qué ycómo es el mundo en un permanente "diálogo interno". Haga un pequeñoexperimento para ilustrar esto: intente observar el segundero de un relojdurante un minuto anulando totalmente dicho diálogo interno y se dará cuentade que es casi imposible. **

Se puede entonces postular que uno de los mecanismos (tal vez el másimportante) para conocer el mundo es el de las descripciones que de éstehacemos constantemente, y que tales descripciones están construidas me-diante el lenguaje.

Una característica primordial de este mecanismo es que podemos trans-mitir las descripciones a alguien más y esperar que éste las procese y seacapaz de comprender que la descripción emitida hace referencia a una mis-ma realidad percibida por ambos. El proceso mediante el cual se logra estacomprensión extrae, mediante una representación, el contenido originalde la descripción, y "llega" de regreso al punto de partida inicial. De estamanera es como se puede establecer un primer nivel de comunicación acercadel mundo, aunque todavía quedan muchos aspectos pendientes que se es-tudiarán con más detenimiento en el capítulo 6, cuando se analice el proble-ma de la computabilidad, dedicada en principio a explorar en términosmatemáticos los límites del esquema descripción-representación, que ha ob-tenido resultados sorprendentes por lo insospechados.

" Recuérdese la admonición del poeta inglés William Blake (1757-1827): "If the doors ofperception were cleansed every little thing would appear to man as it is, infinite. [' ..J For manhas closed himself up, till he sees all things thro' narrow chinks of his cavern." (Si las puertas dela percepción fueran limpiadas, veríamos todo como realmente es, infinito [. .. l. Pero el hombrese ha cerrado de tal forma que sólo ve las cosas desde las pequeñas grietas de su caverna.) Estaidea fue recogida como tesis por el novelista inglés Aldous Huxley (1894-1963) y además sirvióde inspiración para el nombre del grupo de rock The Doors.

** Claro que ésta no es la única manera de conocer el mundo. Uno de los objetivos de lameditación, por ejemplo, consiste en adquirir la capacidad de entrar en contacto directo con elmundo, y no a través de este interminable diálogo interno. El arte obedece también, entre otras,a estas motivaciones, pero éste es un campo de conocimiento que rebasa los alcances de nuestrolibro. Como introducción mínima a algunos de estos temas se recomienda la referencia [RUSB92]citada al final de este capítulo. (En adelante, las referencias que se indiquen en el texto deberánconsultarse al final del capítulo donde aparezcan.)

Antecedentes (computadoras

Page 3: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

1.1 Antecesores y razón de ser 9

FIGURA 1 Esposible describir un fragmento del mundo y representarlo posterior-mente.

Antecedentes de lascomputadoras

Una vez que se tiene claro que sí se puede representar una descripción ycuando se han tomado medidas para eliminar los errores de comunicacióny las posibilidades de ambigüedad, queda establecido un sistema donde yano es indispensable que sea un humano el responsable de realizar la repre-sentación; y aquí radica el origen de las computadoras, de entrada delimita-do por el problema de la computabilidad. En efecto, la computadora es elmedio mecánico (o electrónico) con el que se pueden representardescripciones libres de ambigüedad para obtener un resultado útil. Es-tas descripciones por lo general se formulan en términos de problemas porresolver mediante un método que la máquina se encarga de representar ollevar a la práctica. Siguiendo esta idea, podría decirse que la computadoraaparece cuando los niveles tecnológicos (fundamentalmente electrónicos) al-canzan el grado de avance y refinamiento que ya tenían las ideas y conceptosmatemáticos, lo cual sucede a mediados del siglo xx.

Una de las cuestiones que siempre ha fascinado al hombre es la relacio-nada con la actividad de contar y con el concepto de número. De ahí que entrelas primeras herramientas que inventó está un ingenio mecánico capaz deliberarlo de la pesada tarea de calcular a mano. De hecho, la palabra cálculoproviene del latín calculus, que nombra las pequeñas piedras que se usabanhace miles de años como auxiliares en las cuentas (en una especie de ábacoformado con ranuras en el suelo y operado manualmente) y que se han en-contrado en excavaciones arqueológicas.

El ábaco representa la primera calculadora mecánica, aunque no se lepuede llamar computadora porque carece de un elemento fundamental: elprograma, que no se logrará sino hasta mucho tiempo después.

Otro ingenio mecánico, que tampoco es una computadora, fue la máquinade calcular inventada por Blaise Pascal (1623-1662). Se trata de una serie deengranes en una caja que proporcionan resultados de operaciones de suma yresta en forma directa -mostrando un número a través de una ventanita-y que por este simple hecho tiene la ventaja de que evita tener que contar,como en el caso del ábaco; además, presenta los resultados en forma másaccesible y directa.

Page 4: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

10 Capítulo 1 Lacomputación hasta la actualidad

Fenómenos digitales yfenómenos analógicos

Podría decirse que la computadora nació alrededor de 1830, con la inven-ción de la "máquina analítica" de Charles Babbage (1792-1871). Este diseño,nunca llevado por completo a la práctica, contenía todos los elementos queconfiguran a una computadora moderna y la diferencian de una calculadora.

La máquina analítica estaba dividida funcionalmente en dos grandespartes: una que ordenaba y otra que ejecutaba las órdenes. Esta última erauna versión muy ampliada de la máquina de Pascal, mientras que la otraera la parte clave. 'La innovación consistía en que el usuario podía, cambian-do las especificaciones de control, lograr que la misma máquina ejecutaraoperaciones complejas, diferentes de las que se hicieron antes.

Esta verdadera antecesora de las computadoras contaba también con unasección en donde se recibían los datos para trabajar. La máquina seguía lasinstrucciones dadas por la unidad de control, las cuales indicaban qué hacercon los datos de entrada y se obtenían luego los resultados deseados. La apli-cación fundamental para la que el gran inventor inglés desarrolló su máqui-na era elaborar tablas de funciones matemáticas usuales (logaritmos,tabulaciones trigonométricas, etc.) que requerían mucho esfuerzo manual.

Esta primera computadora "leía" los datos (argumentos) de entrada pormedio de las tarjetas perforadas, invento del francés Joseph M. Jacquard(1752-1834), y que dieron inicio al surgimiento de la industria de los telaresmecánicos durante la revolución industrial.

De un modo conceptual, el mecanismo consistía en evaluar la primerafunción f¡(x¡) y luego determinar el nuevo argumento de la serie, x2' parapedir a la máquina que calculara otra vez la misma función con el nuevodato. Si la máquina puede calcular f¡(x¡), no le será difícil calcular f¡(x2), y dela misma manera podrá generar toda la serie de valores Nx¡), f/X2), ... , f¡(x).

De este modo, si se deseaba calcular una segunda función t.sobre un ar-gumento xI' flx¡), había que cambiar las especificaciones de t.por las de f2, loque supuestamente se lograba alterando la disposición de ciertos elementosmecánicos en la sección de control de la máquina.

No obstante, la máquina analítica nunca se puso en funcionamiento pre-cisamente por la dificultad para lograr dichos cambios. Es perfectamenteválido, sin embargo, referirse a esta máquina como la primera computadoradigital, porque el concepto "digital" no presupone el concepto "electrónico".(Para mayor documentación sobre este tema histórico consúltense las refe-rencias [GOLH72], [PYLZ75], [SLAR87]y [SWAD93].)

Se explicará ahora el significado de la palabra digital. Los procesos natu-rales comparten la característica de ser de tipo continuo; es decir, la escala demanifestaciones de un fenómeno cualquiera no tiene singularidades ni puntosmuertos, sino que se extiende de manera continua desde la parte inferior a lasuperior. La temperatura del agua, por ejemplo, puede variar entre cero y ciengrados antes de cambiar de estado; lo importante es que en algún momento elagua puede estar en cualquier punto intermedio de la escala, sin más determi-nantes que la cantidad de calor que reciba. Asimismo, la velocidad del vientopuede fluctuar de manera continua entre cero y cuarenta km/h en un día nor-mal, pudiendo, en cualquier momento ocupar una posición en esa escala, sinmás limitación que las diferencias de presión atmosférica. Esta característica

-~

FIGURA 2 Reprecualesquiera de su

Page 5: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

1.1 Antecesores y razón de ser 11

FIGURA 2 Representación esquemática de un fenómeno analógico como un continuo de puntos entre doscualesquiera de sus manifestaciones.

de poder ocupar cualquier punto intermedio en la escala de manifestaciones,como se mencionó, es común a los fenómenos naturales.

Esto es, en la naturaleza los fenómenos no se limitan a unas cuantasposiciones fijas de sus respectivas escalas de manifestación, sino más bienocupan una variación continua entre dos límites, el superior y el inferior. Losfénómenos que se comportan en esta forma continua reciben el nombre deanalógicos.

No ocurre lo mismo, sin embargo, con otro tipo de fenómenos. Por ejem-plo, si se averigua la cantidad de personas que están en un sitio, se llegará ala conclusión de que hay 27 o 28, perq no puede haber 27 y media. Como otrocaso, piénsese en un automóvil: si se supone de transmisión estándar, enton-ces se dará el caso que en algún momento determinado la caja de velocidadesocupe alguna posición predeterminada (lª, 2ª, etc.), no pudiendo -mas quede manera transitoria- ocupar una posición intermedia. Un automóvil nopuede marchar en "primera y tres cuartos"; o lo hace en la primera velocidado lo hace en la segunda, de manera discreta (i.e., discontinua).

Estos fenómenos reciben el nombre de digitales (al menos en el contextode la ingeniería), tal vez porque dan la idea de que se pueden cuantificar conlos dedos de la mano.

En un fenómeno digital se habla de estados (posiciones o manifestacionesdiscretas) y de transiciones entre éstos, y puede representarse mediante unmodelo matemático conocido como "autómata finito". *

* En este contexto, la palabra "autómata" no se refiere a robots ni aparatos, sino a unaconstrucción matemática, como se explica en el capítulo 6.

Page 6: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

12 Caprtulo 1 La computación hasta la actualidad

FIGURA 3 Autómata finito para representar el modelo de operación de la caja develocidades de un automóvil.

En un modelo digital o autómata finito no todas las transiciones entreestados son válidas. En un automóvil en marcha, por ejemplo, a nadie se leocurriría pasar de la tercera velocidad en forma directa a la reversa, precisa-mente porque esa transición está "prohibida" (o sea, no está considerada enel modelo; véase figura 3).

Otra forma de definir un autómata finito ~s mediante una matriz de tran-siciones en la cual, para cada par de estados, se señala con una marca (porejemplo un 1) cuando una transición es válida, y con otra (O) cuando no lo es.En la figura 4 se observa la matriz de transiciones para la caja de velocida-des anterior:

En resumen, un fenómeno se llama analógico o continuo cuando entre dosmanifestaciones de éste siempre se puede encontrar una tercera (lo cual, sise analiza, obliga a pensar en un conjunto infinito). En contraposición, unfenómeno se conoce como digital o discontinuo cuando entre dos manifesta-ciones cualesquiera de éste no existe nada, sino sólo una transición entreambos estados.

Así, puede hablarse de computadoras analógicas y computadoras digitales:son digitales aquellas que manejan la información de manera discreta -enunidades que se llaman bits (binary digits, dígitos binarios)-,-y sonanalógicas las que trabajan por medio de funciones continuas -generalmen-te representación de señales eléctricas.

1" 2' 3" 4" R N

1"

o

o o o

2" o o

3" o o

4" o o o

R o o o o

N o o

FIGURA 4 Matriz de transiciones para representar el modelo de operación de lacaja de velocidades de un automóvil.

Page 7: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

1.1 Antecesores y razón de ser 13

Hoy día casi todas las computadoras en uso son digitales, ya que el em-pleo de las analógicas se restringe a aplicaciones muy particulares en la in-geniería o la biología.

En la figura 5 se describe el esquema elemental de la máquina inventadapor Charles Babbage con el propósito de explicar algunas de las característi-cas más importantes de toda computadora digital moderna.

La sección de control se convierte en el concepto fundamental, pues es laparte que dirige el procesamiento, de acuerdo con un "programa" previamen-te introducido en el "almacén" (como llamó Babbage a la memoria) de lamáquina. Así, una computadora está formada por una unidad de entrada,que recibe tanto la información a procesar como las instrucciones (progra-ma); la unidad de memoria, que almacena la información; la unidad deprocesamiento (aritmética y lógica), que ejecuta los cálculos sobre la infor-mación; la unidad de control, que dirige a todas las demás unidades, de-terminando cuándo se debe leer la información, en qué lugares debealmacenarse, cuándo debe funcionar la unidad aritmética, etcétera; y unaunidad de salida, que muestra la información ya procesada en forma denúmeros o gráficas.

A casi cien años de distancia de Babbage, en 1947, se diseñó la primeracomputadora electrónica digital, que tenía gran parecido funcional con lamáquina analítica -y esto habla del genio de su antecesor-, aunque anteshubo algunos otros esfuerzos.

En 1932, el investigador estadounidense Vannevar Bush construyó en elInstituto Tecnológicode Massachusetts una calculadora electromecánica co-nocida como el analizador diferencial, pero era de propósito específico y notenía capacidades de programación.

FIGURA 5 Esquema básico de la máquina analítica de Babbage.

Page 8: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

14 Capítulo 1 la computación hasta la actualidad

La computadora ENIAC.

Asimismo, en 1944 se construyó en la Universidad de Harvard, en Esta-dos Unidos, la computadora IBM Mark 1, diseñada por un equipo encabeza-do por Howard H. Aiken. No obstante, esta máquina no califica para serconsiderada como la primera computadora electrónica, porque no era de pro-pósito general y su funcionamiento estaba basado en dispositivos electrome-cánicos, llamados relevadores.

La primera computadora Un equipo dirigido por los doctores en ingeniería, John Mauchly y JohnEckert, de la Universidad de Pennsylvania, terminó en 1947 una gran má-quina electrónica llamada ENIAC (Electronic Numerical Integrator AndCalculator) que puede ser considerada como la primera computadora digitalelectrónica de la historia. *

Esta máquina era enorme: ocupaba todo un sótano en la universidad,pesaba toneladas, tenía casi 18 000 tubos de vacío, consumía 140 kW de ener-gía eléctrica y necesitaba todo un sistema de aire acondicionado industrial.Pero era capaz de efectuar alrededor de cinco mil operaciones aritméticas enun segundo, dejó atrás de manera definitiva las limitaciones humanas develocidad y precisión e inauguró una nueva etapa en las capacidades de pro-cesamiento de datos.

El proyecto, auspiciado por el Departamento de Defensa de Estados Uni-dos, culminó dos años después, cuando se integró a ese equipo el ingeniero ymatemático húngaro naturalizado estadounidense John von Neumann (1903-

'"Aunque eso está en duda, porque hubo otros pioneros: Konrad Zuse en Alemania (computa-dora Z3 l,Alan Turing y Maxwell Newman en Inglaterra (computadora Colossus J, y John Atanasoffy Clifford Berry en Estados Unidos (computadora ABC), como se relata en [MACA88].

Page 9: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

1.1 Antecesores y razón de ser 15

John von Neumann (1903-1957).

1957). Sus ideas resultaron tan fundamentales para los desarrollos posterio-res que bien puede considerarse el padre de las computadoras.

La computadora diseñada por este nuevo equipo se llamó EDVAC(Electronic Discrete Variable Automatic Computer); tenía cerca de cuatro milbulbos y usaba un tipo de memoria basado en tubos llenos de mercurio pordonde circulaban señales eléctricas sujetas a retardos (para mayor informa-ción sobre estos temas véase, por ejemplo, [GOLH72] y [LUKH79]).

"Lanueva idea fundamental resulta muy sencilla, pero de vital importan-cia: permitir que en la memoria coexistan datos con instrucciones, para queentonces la computadora pueda ser programada de manera "suave",* y nopor medio de alambres que interconectaban eléctricamente varias seccionesde control, comoen la ENIAC.

Esta idea, que incluso obliga a una completa revisión de la arquitecturade las computadoras, recibe desde entonces el nombre de modelo de vonNeumann. Alrededor de este concepto gira toda la evolución posterior de la

* Tal vez el uso de la palabra suave pueda parecer extraño, pero deja de serlo cuando secontrasta con el hecho de que en las computadoras anteriores a von Neumann (yen las actualescalculadoras), las operaciones que se pueden efectuar están "alambradas" y predefinidas, por loque el usuario no puede cambiarlas. Esta flexibilidad es lo que define a la programación y altérmino software empleado tanto en inglés como en español.

A lo largo de este libro se empleará la palabra software porque no existe un término equiva-lente en español -no es de extrañar, ya que el concepto es de origen anglosajón, y reciente.

Abundando en el tema, aprovechamos para pedir al lector mantener el respeto y cuidado porel idioma español en los vocablos de uso común, y pensar dos veces antes de emplear "traduccio-nes" como "comando" en vez de command (instrucción u orden); "librería" en lugar de library(biblioteca); "salvar" en vez de to save (guardar); overdaderos y tristes engendros como "escanear"o "deletear" en lugar de to sean (leer, digitalizar) y to delete (borrar).

Page 10: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

16 Capítulo 1 La computación hasta la actualidad

industria y la ciencia de la computación, por lo que se le dedicará un capítuloaparte.

De 1947 a la fecha las cosas han avanzado muy rápido, más que cualquierotro proceso en la historia de la ciencia y la tecnología, a tal grado que en laactualidad hay computadoras mucho más poderosas que la ENIAC y queutilizan un circuito de silicio tan pequeño que cabe en la palma de la mano.

Como contraste inicial, antes de proceder a describir lo que ha sucedidoen los cincuenta años desde la invención de la computadora, se hace aquí unacomparación entre dos máquinas: la ENIAC y uno de los primeros micro-procesadores (ya obsoleto).

Es prácticamente imposible encontrar otro ejemplo de un avance de estanaturaleza en la historia de la tecnología, y esto hace aún más interesante elestudio de lo que ha pasado desde los años iniciales hasta la fecha.

1.2 DESARROLLO DE LAS COMPUTADORAS

La evolución de las computadoras solía dividirse en generaciones, aunqueesto cada vez se emplea menos. El criterio para determinar cuándo se dio elcambio de una generación a otra no está claramente definido, pero resultaaparente que deben cumplirse al menos dos requisitos estructurales:

Criterios para ladeterminación del avance

a) Forma en que están construidas: que haya tenido cambios sustanciales.b) Forma en que el ser humano se comunica con ellas: que haya experimen-

tado progresos importantes.

En lo que respecta al primer requisito, los cambios han sido drásticos enel corto lapso que tienen de existencia las computadoras (desde los tubos devacío hasta los circuitos microelectrónicos), mientras que el avance del se-gundo requisito ha sido más cauteloso. Debido a la falta de una definiciónformal de la frontera entre generaciones se crea confusión cuando se intentadeterminar cuál es la generación actual.

Page 11: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

1.2 Desarrollo de las computadoras 17

Desde un punto de vista estricto, comoel que se utiliza aquí, aún estamosen la tercera generación de computadoras -o en lo que podría llamarse lasegunda parte de ésta-, porque sólo ha habido adelantos significativos en elpunto a), pues en lo relativo al punto b), entre las actuales computadoras ylas de hace quince años no hay diferencia sustancial alguna; la comunicaciónentre el usuario y la máquina sólo se ha vuelto más cómoda y conveniente (ya colores).

Así pues, no está claro si ya estamos en la cuarta generación o si aún no secumplen los requisitos para el cambio. Sin embargo, la suposición general,avalada fuertemente por los fabricantes de equipo, es que nos encontramosya en ésta desde el advenimiento de los microprocesadores, y como ésta re-sulta ser la opinión más popular, aunque no la más correcta desde nuestropunto de vista, es la que se supondrá en adelante.

1.2.1 Primera generación

Los comienzos de la industria de la computación se caracterizan por un grandesconocimiento de las capacidades y alcances de las computadoras. Así, porejemplo, según un estudio en esa época, se suponía que iban a ser necesariasalrededor de veinte computadoras para saturar la capacidad del mercado deEstados Unidos en el campo del procesamiento de datos.

Esta primera etapa abarcó la década de 1950 y se conoce como la primerageneración de computadoras. Las máquinas de esta generación cumplen losrequisitos antes mencionados de la siguiente manera:

ci) Por medio de circuitos de tubos de vacío o bulbos.b) Mediante la programación en lenguaje de máquina (lenguaje binario).

Estos aparatos eran grandes y costosos -del orden de decenas o cientosde miles de dólares.

En 1951 aparece la primera computadora comercial, es decir, fabricadaconel objetivode venderse en el mercado: la UNIVAC1(UNIVersAl Computer).Esta máquina, que disponía de mil palabras de memoria central y podía leercintas magnéticas, se utilizó para procesar los datos del censo de 1950 enEstados Unidos. Estos eran los años de la posguerra y la nueva invenciónaún no presagiaba su gigantesco potencial en la competencia económica in-ternacional, que no llegaría sino hasta una década más tarde.

Durante la primera generación, y hasta mediados de la tercera, las uni-dades de entrada estaban por completo dominadas por las tarjetas perfora-das, retomadas a principios de siglo por Herman Hollerith (1860-1929), quienademás fundó una compañía que con el paso de los años se conocería comoIBM (International Business Machines).

A la UNIVAC 1 siguió una máquina desarrollada por IBM, que apenasincursionaba en ese campo; es la IBM 701 (de la que se entregaron 18 unida-des entre 1953 y 1956), que inaugura la larga serie por venir.

Page 12: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

18 Capítulo 1 La computación hasta la actualidad

Posteriormente, la compañía Remington Rand produjo el modelo 1103,que competía con la 701 en el campo científico, y la IBM fabricó la 702, queno duró mucho en el mercado debido a problemas con la memoria.

La más exitosa de las computadoras de la primera generación fue el mo-delo 650 de IBM, de la que se produjeron varios cientos. Esta máquina usabaun esquema de memoria secundaria llamado tambor magnético, antecesorde los discos que en la actualidad se emplean.

La competencia contestó con los modelos UNIVAC 80 y 90, que puedensituarse ya en los inicios de la segunda generación.

También de esta época son los modelos IBM 704 y 709, Burroughs 220 yUNIVAC 1105.

1.2.2 Segunda generación

Se acercaba la década de 1960 y las computadoras seguían en constante evo-lución: reducían su tamaño y aumentaban sus capacidades de procesamien-to. Al mismo tiempo se definía con mayor claridad toda una nueva ciencia: lade comunicarse con las computadoras, que recibiría el nombre de programa-ción de sistemas.

En esta etapa puede hablarse ya de la segunda generación de computado-ras, que se caracteriza por los siguientes aspectos primordiales:

a) Están construidas con circuitos de transistores.b) Se programan en nuevos lenguajes, llamados "de alto nivel".

En general, las computadoras de la segunda generación son de tamañomás reducido y de costo menor que las anteriores. En esta etapa hubo unagran competencia y muchas compañías nuevas, y se contaba con máquinasbastante avanzadas para su época, como la serie 5000 de Burroughs y lamáquina ATLAS, de la Universidad de Manchester. Cabe decir que esta últi-ma incorporaba -con varios años de anticipación- técnicas de manejo dememoria virtual, que se estudiarán más adelante.

Entre los primeros modelos se puede mencionar la Philco 212 (esta com-pañía se retiró del mercado de computadoras en 1964) y la UNIVAC M460.Una empresa recién formada, Control Data Corporation, produjo la CDC 1604,seguida por la serie 3000. Estas máquinas comenzaron a imponerse en elmercado de las grandes computadoras.

IBM mejoró la 709 y produjo la 7090 (luego ampliada a la 7094), que ganóel mercado durante la primera parte de la segunda generación. UNIVACcontinuó con el modelo 1107, mientras que NCR (National Cash Register)empezó a producir máquinas más pequeñas para proceso de datos de tipocomercial, como la NCR 315.

RCA (Radio Corporation ofAmerica) introdujo el modelo 501, que mane-jaba el lenguaje COBOL, para proceso administrativo y comercial. Más tardeintrodujo el modelo RCA 601.

Page 13: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

1.2 Desarrollo de las computadoras 19

La segunda generación no duró mucho, sólounos cinco años, y debe consi-derarse comouna transición entre las recién inventadas máquinas electróni-cas, que nadie sabía con precisión para qué podrían ser útiles, y el actualconcepto de computadora, sin el cual el funcionamiento de las modernas so-ciedades industriales sería dificil de concebir.

1.2.3 Tercerageneración

Con la aparición de nuevas y mejores formas de comunicarse con las compu-tadoras, junto con los progresos en electrónica, surge la que se conoce comotercera generación de computadoras a mediados de la década de 1960. Co-mo parte de una enorme estrategia comercial y de mercadotecnia esta etapase inaugura con la presentación, en abril de 1964, de la serie 360 de IBM.

Las características estructurales de la tercera generación consisten en:

. a) Su fabricación electrónica está basada en circuitos integrados:* agrupa-miento de circuitos de transistores grabados en pequeñísimas placas desilicio

b) Su manejo es por medio de los lenguajes de control de los sistemasoperativos (que se estudiarán más adelante).

Las computadoras de la serie IBM 360 (modelos 20, 22, 30, 40, 50, 65, 67,75,85,90,195) manejaban técnicas especiales de utilización del procesador,unidades de cinta magnética de nueve canales, paquetes de discos magnéti-cos y otras características ahora usuales. No todos los modelos empleaban

. esas técnicas, sino que estaban divididos por aplicaciones.El sistema operativo de la serie 360, llamado simplemente OS (Operating

System), en varias configuraciones incluía un conjunto de técnicas de manejode memoria y del procesador que pronto se convirtieron en estándares.

Esta serie alcanzó un éxito enorme, a tal grado que la mayoría de la gente(los ciudadanos comunes y corrientes) pronto llegó a identificar el conceptode computadora con el nombre IBM. Sin embargo, sus máquinas no fueronlas únicas, ni necesariamente las mejores. También en 1964 CDC introdujola serie 6000, con la máquina modelo 6600, que durante varios años fue con-siderada como la más rápida.

Esta fue una época de pleno desarrollo acelerado y de competencia por losmercados internacionales, debido a que la industria de la computación habíacrecido hasta alcanzar proporciones insospechadas. Es curioso reflexionaren que estos años coinciden con el "retroceso" racional y la "vuelta a los oríge-

* Estos microcircuitos reciben el nombre de circuitos integrados, y son conocidos también porsu nombre popular en inglés, chip (pedacito). Su origen se remonta a 1958-1959, cuando la ideade obtener e interconectar capacitores y transistores a partir de un pequeño bloque de siliciosurge en las mentes, en forma independiente, del doctor Robert Noyce, de la recién creada com-pañía Fairchild Semiconductors (quien luego fundaría la empresa Intel), y del ingeniero JackKilby, de la compañía Texas Instruments.

Page 14: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

20 Capítulo 1 La computación hasta la actualidad

La computadora comoactor social

nes" planteados por una juventud rebelde y desconfiada de la supuesta inva-sión tecnológica. Esos jóvenes (en los países industrializados) primero gene-raron el movimiento de los hippies y las protestas en contra de la guerra,pero luego, con el paso de dos décadas, se convirtieron en el puntal de laemergente sociedad de consumo.

Para esta época la computadora ya estaba plenamente identificada en lamente del "hombre de la calle" de los países avanzados comoun omnipresen-te aunque misterioso agente tecnológico, imprescindible para el funciona-miento de las grandes corporaciones. En las películas y los programas detelevisión de esos años, muchas veces la gran computadora aparecía comorespaldo de las grandes aventuras de todo tipo.

Al inicio de la década de 1970 IBM produce la serie 370 (modelos 115, 125,135, 145, 158, 168) comomejora, aunque no radical, de la serie 360. UNIVACcompite con los modelos 1108y 1110,máquinas de gran escala; mientras queCDC inaugura su serie 7000 con el modelo 7600, reformado después paraintroducir la serie Cyber. Estas computadoras son tan potentes y veloces quese convierten ya en un asunto de Estado y de seguridad nacional para el paísque las produce: en los más altos niveles gubernamentales se cuida su expor-tación y comercialización internacional. .

A finales de esa década IBM introduce las nuevas versiones de la serie370 con los modelos 3031, 3033 y 4341, en tanto que Burroughs participa conlas computadoras de la serie 6000 (modelos 6500, 6700) de avanzado dise-ño, luego reemplazadas por la serie 7000. La compañía Honeywell participacon las computadoras de la línea DPS, en varios modelos.

En Japón la compañía Fujitsu produjo computadoras poderosas, desdemáquinas relativamente pequeñas hasta verdaderos gigantes (de la serieFACOM), comparables sólo con los más grandes sistemas de CDC o IBM.

Las grandes computadoras reciben el nombre en inglés de mainframes,que significa precisamente gran sistema.

Entre las máquinas de la tercera generación hay algunas dedicadas aprocesos especiales, que manejan cientos de millones de números en repre-sentación decimal y requieren diseños específicos para ser resueltos. (Parainformación sobre el origen de las llamadas "supercomputadoras", consúlteseel artículo [LEVR82]. El artículo [CORE91] ofrece datos sobre las super-computadoras de una década después, así como el número correspondiente aenero de 1996 de la revista Byte: "The world's fastest computers".)

1.2.4 Minicomputadoras

A mediados de la década de 1970, en plena tercera generación, surge un granmercado para computadoras de tamaño mediano o minicomputadoras,*que no son tan costosas como las grandes máquinas y disponen de una grancapacidad de proceso. En un principio, el mercado de estas nuevas máquinasestuvo dominado por la serie PDP-8 de DEC (Digital Equipment Corporation).

" Los nostálgicos recordamos a ésta también como la época de las minifaldas.

Page 15: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

1.2 Desarrollo de las computadoras 21

Otras minicomputadoras populares fueron la serie PDP-ll de DEC, re-emplazada luego por las máquinas VAX (Virtual Address eXtended) de lamisma compañía; los modelos Nova y Eclipse de Data General; las series3000 y 9000 de Hewlett-Packard, en varias configuraciones y el modelo 34 deIBM, que luego fue reemplazado por los modelos 36 y 38.

Dentro de esta categoría estaban también las máquinas Wang y Honeywell-Bull en diversas configuraciones, así como computadoras Prime, ICL(International Computers Limited, inglesa), Siemens (alemana), etcétera.

En la ex Unión Soviética fueron de amplio uso las computadoras de laserie SU (Sistema Unificado, Ryad), que también pasaron por varias genera-ciones. La primera de estas máquinas era, en cuanto a la arquitectura, unacopia de la serie 360 de IBM, con los modelos ES 1020 a 1060. A fines de la-década de 1970 surgió la serie Ryad-2, cuya arquitectura seguía a la dela serie 370.

Asimismo, los países socialistas desarrollaron una serie de computadorasdedicadas al control industrial además de las máquinas de la serie Minsk yBESM (véase el artículo [DAVG78]para una descripción).

En la actualidad el mercado de las minicomputadoras es muy dinámico,sobre todo por su uso como servidores* de las cada vez más comunes redesmetropolitanas y amplias. Algunas de las empresas mencionadas continúancon nuevos modelos: Hewlett-Packard, DEC (Alpha), IBM (series AS/400 y6000), y han surgido con gran éxito nuevas compañías especializadas, comoSun Microsystems o Silicon Graphics, pero otras más han desaparecido re-cientemente.

1.2.5 Cuarta generación.El adelanto de la microelectrónica avanza a una velocidad impresionante, y yapor el año de 1972 surge en el mercado una nueva familia de circuitos integra-dos de alta densidad que reciben el nombre de microprocesadores. Lasmicrocomputadoras diseñadas con base en estos circuitos son en extremopequeñas y baratas, por lo que su uso se extiende al mercado de consumo. Hoydía hay microprocesadores en muchos aparatos de uso común, como relojes,televisores, hornos, juguetes, etcétera, y naturalmente en toda una nueva ge-neración de máquinas, aunque sólo en lo que respecta al equipo físico (requisi-to a antes mencionado), puesto que en el otro aspecto (requisito b paradeterminar el cambio de una generación a otra) no existen progresos de estamagnitud, aunque los cambios que han sucedido tampoco son despreciables.

Sin embargo, como se señaló antes, lo usual es suponer que nos encontra-mos en la cuarta generación, aunque incluso se habla ya de la quinta, comose verá a continuación.

* Se da ese nombre a la computadora que sirve como depositaria de los archivos manejadospor los múltiples usuarios de una red. En el servidor -puede haber más de uno- tambiénresiden los programas de control de la red. El capítulo 4 describe los principales conceptos de lasredes.

Page 16: La computación hasta la actualidadsgpwe.izt.uam.mx/files/users/uami/jcjr/Introduccion_a_la_Programaci… · La computadora representa, de alguna forma, el genio encerrado en la botella,

22 Capítulo 1 La computación hasta la actualidad

1.2.6 ¿Quinta generación?

En vista de la acelerada marcha de la microelectrónica, la sociedad indus-trial se ha dado a la tarea de poner también a esa altura el desarrollo delsoftware y los sistemas para manejar las computadoras. Surgió un intere-sante fenómeno de competencia internacional por el dominio del gigantescomercado de la computación, en el que se perfilan dos países líderes que, sinembargo, no pueden alcanzar aún el nivel deseado: la capacidad de comuni-carse con la computadora mediante el lenguaje natural y no a través de códi-gos o lenguajes de control especializados.

Japón lanzó en 1983 el llamado "programa de la quinta generación decomputadoras", con los objetivos explícitos de producir máquinas con inno-vaciones reales en los dos criterios mencionados, aunque a su término en1993 los resultados fueron bastante más pobres de lo que se había prometi-do. La ACM:Association for Computing Machinery, que bien podría conside-rarse como la agrupación académica más prestigiosa de computación en elmundo, * dedicó todo un número de su revista mensual (Communications ofthe ACM, marzo, 1993) a reportar los resultados de la quinta generación.Luego de leer los artículos detallados que incluye se llega a la conclusión deque más bien esta fue una especie de "generación perdida". En Estados Uni-dos está en actividad un programa de desarrollo que persigue objetivos se-mejantes, que pueden resumirse de la siguiente manera:

a) Procesamiento en paralelo mediante arquitecturas, diseños especiales ycircuitos de gran velocidad.

b) Manejo de lenguaje natural y sistemas de inteligencia artificial.

Sin embargo, más que tomar el camino del procesamiento en paralelo, latendencia actual de la computación es hacia la configuración de redes decómputo, tanto locales como globales. Estas últimas interconectan ya a mi-llones de computadoras en más de un centenar de países y su uso continúaen constante aumento.

El futuro previsible de la computación es muy interesante, y se puedeesperar que esta ciencia siga siendo objeto de atención prioritaria de gobier-nos y de la sociedad en conjunto.

* La ACM ofrece un precio especial de suscripción para estudiantes, y sugerimos a todo lectorcon interés en una carrera de computación que sin lugar a dudas se haga miembro. Con estotendrá derecho a recibir la revista mensual y lo pone en contacto con el más alto nivel de compu-tación académica existente. (P. O. Box 12114, Church Street Station, New York, 10257, NewYork, EEUU.)

La ACM ofrece cada año el premio Ajan Turing, considerado como el máximo reconocimientoa la calidad académica o profesional de la computación en el mundo. Los premiados pronuncianuna conferencia en la ceremonia de aceptación, y una versión adaptada se publica después en larevista oficial. La editorial Addison- Wesley publicó en 1987 el libro ACM Turing Award Lectures:The First 1luenty Years, con las disertaciones de los premiados entre 1966 y 1985, y de hecho setrata de un directorio de los principales investigadores en computación: entre otros, aparecenlos nombres de Knuth, Dijkstra, Backus, Hoare.Wirth, Wilkes, Minsky, McCarthy, Simon, Rabin,Iverson y Codd. _ ~!