Blog

1. may., 2017

HISTORIA DE LA COMUTACIÓN (5): Historia de la computadora, desde el ábaco  hasta el procesamiento en paralelo.

El Moderno EDC con "programa  almacenado"

Intrigado por el éxito del ENIAC, el matemático  John von Neumann emprendió (1945) un estudio teórico de cómputo que demostró  que una computadora podría tener una estructura física muy simple, fija y  podría todavía ejecutar cualquier tipo de cómputo eficazmente por medio del  mando programado apropiado sin la necesidad de cambio alguno en el hardware.  Von Neumann contribuyó a una nueva comprensión de cómo deben organizarse y  construirse las computadoras rápidas prácticas; y estas ideas, a menudo llamadas la técnica del programa almacenado, fueron fundamentales para las generaciones futuras de computadoras digitales de gran velocidad.   

La técnica de guardar el programa involucra muchos rasgos del diseño y funcionamiento de la computadora además del nombrado; en combinación, estos rasgos pueden hacer factible el funcionamiento a muy alta velocidad. Si cada instrucción en un programa de trabajo sólo se usara una vez  en orden consecutivo, ¡ningún programador humano podría generar bastantes instrucciones para mantener a la computadora ocupada! Deben hacerse arreglos, llamados subrutinas, para ser usadas repetidamente por las  partes del programa de trabajo. También sería claramente útil si las instrucciones pudieran  alterarse por necesidad durante un cómputo para hacerlas comportarse  diferentemente. Von Neumann satisfizo estas dos necesidades proporcionando un  tipo especial de instrucción de máquina llamado traslado del mando  condicional -qué permitió interrumpir la sucesión del programa y reiniciarlo  en cualquier punto- guardando toda la instrucción del programa junto con los  datos en la misma unidad de memoria, para que, cuando se desee, se puedan  modificar las instrucciones aritméticamente de la misma manera que los  datos.

Como resultado de estas técnicas y de algunas  otras, computar y programar resultaron más rápidos, más flexibles, y más  eficaces, con las instrucciones en subprogramas o subrutinas realizando mucho  más trabajo computacional. Los subprogramas más frecuentemente usados no  tuvieron que ser reprogramados para cada nuevo problema pero podían guardarse  intactos en "bibliotecas" y leerse en la memoria cuando se necesitase. Así, gran parte de un programa dado podía congregarse de la  biblioteca de subprogramas. La memoria de la computadora de propósito general  se volvió el lugar en el que se guardaban partes de un cómputo  largo, se trabajaban paso a paso, y se congregaban para formar los resultados  finales. El mando de la computadora sirvió como un director errante del  proceso global. En cuanto las ventajas de estas técnicas fueron claras, las  técnicas se volvieron la práctica normal.  

La primera generación de computadoras electrónicas  programadas modernas que tomaron ventaja de estas mejoras apareció en 1947.  Este grupo de computadoras incluía el uso de memoria de acceso al azar (RAM)  que es una memoria diseñada para dar acceso casi constante a cualquier pedazo particular de información. Estas máquinas tenían tarjeta perforadas o entradas de cinta perforada y dispositivos de rendimiento y RAM de una  capacidad de 1.000 palabras con un tiempo de acceso de 0.5 microsegundos (0.5  x 10 elevado a la menos 6 segundos). Algunos de ellos podían realizar multiplicaciones en 2 a 4 microsegundos.

Físicamente, eran mucho más  compactos que el ENIAC: algunos eran del tamaño de un piano de cola y  requerían 2.500 pequeños tubos de electrones, mucho menos que lo requerido  por las máquinas anteriores. 

Las computadoras de programas almacenados de  primera generación requirieron mantenimiento considerable, y lograron quizás  un 70 por ciento a un 80 por ciento de tiempo de funcionamiento fiable, usándose durante 8 a 12 años. Típicamente, se programaron directamente en idioma de máquina, aunque a mediados de 1950 ya se habían hecho  progresos en varios aspectos de la programación avanzada. 

Este grupo de máquinas, EDVAC incluido, y UNIVAC, fueron las primeras computadoras  disponibles comercialmente.