Los usamos
a diario pero no somos conscientes de
ellos. Ayudan a que la ciencia evolucione y mejor, a que los nuevos
descubrimientos sean posibles. Sin ellos, el mundo actual sería muy
diferente. Los
Mainframe son una categoría de ordenadores desconocida para muchos, pero esencial en la informática moderna.
Hoy ahondaremos en el mundo de los mainframe, aprovechando el
50 aniversario de su creación por IBM.
Equipos que, como todo el mundo de la tecnología, han evolucionado de
forma notabilísima, pasando de aquellas vetustas válvulas de vacío a los
nuevos transistores, de tener armarios con cuadros de control a poder
ser gestionados desde cualquier parte del mundo.
Remontándonos a la prehistoria de la informática
Los ordenadores de principios del siglo XX eran calculadoras, utilizadas para acelerar las operaciones de los profesionalesAntes de entrar en materia con los
mainframe es necesario poner algo de contexto a este tema.
Los ordenadores de principios del siglo XX eran meras calculadores
que los investigadores de la época utilizaban para acelerar sus
operaciones. Máquinas con una electrónica básica, muy alejada de la que
conocemos hoy en día, pero que funcionaron y ayudaron a los estudios de
entonces. Podemos decir que sirvieron para que las cuentas matemáticas
pasasen del papel al ordenador, acelerándolas y, en muchos casos,
asegurando los resultados ante posibles errores humanos.
IBM 601, calculadora basada en tarjetas microperforadas (1931, vía Wikipedia)
Evidentemente las aspiraciones humanas fueron cada vez mayores. Si
tenemos un ordenador capaz de ejecutar 1.000 operaciones por segundo, el
siguiente paso a realizar es inmediato:
buscar uno le supere en rendimiento.
En los años 30 IBM ya fabricaba ordenadores destinados a grandes entidades,
generalmente administración pública (gobiernos, ejércitos o
universidades), que reservaban varias salas en sus edificios para estos
computadores. Los métodos de entrada y salida eran
tarjetas microperforadas,
muy alejadas de los actuales teclado, ratón o pantalla. La información
se cifraba y se grababa en las tarjetas a través de pequeños agujeros
físicos, que eran los que el computador detectaba y era capaz de leer a
través de un código. Una vez realizadas las determinadas operaciones, el
propio ordenador volvía a perforar otra tarjeta donde mostraba los
resultados.
IBM 801 Bank Proof, máquina para llevar un registro de cheques bancarios (IBM, 1934)
Estos equipos eran relativamente pequeños, de unos pocos metros cuadrados de superficie. Sobre estas líneas tenéis el
IBM 801 Bank Proof,
un sistema con cuya creación IBM buscaba automatizar ciertos trabajos
relacionados con la banca: comprobar cheques bancarios, aprobarlos y
llevar un registro económico del conjunto. Una curiosa máquina que
precisamente llegó pocos años después del crack del 29, concretamente en
el año 1934, y que fue uno de los culpables de que IBM tuviera un ritmo
de
fabricación de entre 5 a 10 millones de tarjetas microperforadas al día.
Pero no dejaban de ser
juguetitos para lo que iba a venir un tiempo más tarde.
El primer uso que IBM le da al término 'mainframe' es en 1944, cuando la compañía norteamericana y la conocida Harvard University desarrollaron el
ASCC,
Automatic Sequence Controlled Calculator, también denominado
The Harvard Mark I, y que empezó a gestarse en 1939.
Harvard Mark I
Uno de los primeros 'grandes' equipos de IBM, estuvo 15 años operando en
Harvard admitiendo números de hasta 23 cifras decimales.
El
Mark I era un equipo de grandes dimensiones que ocupaba una enorme sala dentro de
Harvard,
y puede definirse como una enorme calculadora síncrona que podía
trabajar en paralelo, utilizando algoritmos de cálculo que podían
ejecutar las cuatro operaciones aritméticas básicas.
El Harvard Mark I, o ASCC, lanzado en 1944, es considerado el primer mainframe del mercado
Según IBM,
Mark I operaba con números de hasta 23 cifras
decimales gracias al uso de los 60 registros físicos para constantes y
72 contadores de resultados temporales, que físicamente fueron
construidos por 765.000 componentes y
unos 800 kilómetros de cable. Y sí, por supuesto el
Mark I
recibía como entrada tarjetas microperforadas, aunque también se podía
añadir información a través de papel o interruptores mecánicos; por su
parte, la salida se realizaba también con tarjetas microperforadas o
automatizada, directamente a papel, a través de máquinas de escribir
mecánicas.
El Mark I inició su trabajo el 7 de agosto de 1944, tras seis meses
de montaje en las instalaciones de Harvard y varios retrasos motivados
por la Segunda Guerra Mundial, y estuvo
en funcionamiento durante quince años.
Los años 50
El
Mark I es considerado el primer
mainframe de la
historia, y tras él vinieron muchos otros más. Mientras Frank Sinatra y
Elvis Presley empezaban a sonar en las radios norteamericanas, los
ingenieros de IBM continuaron con la idea del Mark I y se plantearon el
desafío de iniciar su evolución y mejorarlo.
Fue entonces cuando nació el
SSEC, Selective Sequence Electronic Calculator, un sistema con partes mecánicas (válvulas de vacío) y electrónicas (relés) cuyo diseño se inició justo tras el
Mark I, poniéndose en funcionamiento en enero de 1948. Su misión no distaba mucho de la que se realizaba con el
Mark I, siendo también una gran calculadora cuyo
primer uso fue el cálculo de las posiciones de la luna respecto de los planetas
del Sistema Solar. Esta tarea la ejecutó durante los primeros seis
meses, y tras ello empezó a ser alquilada a diferentes compañías para
múltiples proyectos.
IBM SSEC
Nótese las dimensiones de los equipos en los laterales, y los paneles de
control en el centro de la sala. Podéis encontrar la historia de ésta y
otras imágenes
en la web de la Columbia University.
Que el
Mark I naciera en época de guerra pudo ser una coincidencia, si bien es cierto que
el mundo bélico siempre ha estado muy ligado a la evolución de la tecnología.
Muchos proyectos son grandes secretos y, lamentablemente, no nos
enteraremos nunca de ellos, pero hay otros que sí se han confirmado.
Por ejemplo en plena Guerra de Corea (1950-1953), IBM presentó el
IBM 701
en el año 1952, un equipo cuyo desarrollo se consensuó con el Gobierno
estadounidense con la finalidad de ser usado para el diseño de naves
aeroespaciales, de munición y también para el desarrollo nuclear.
IBM 701
Uno de los IBM 701 del Lawrence Livermore National Laboratory, en 1954.
Una vez más se repite la distribución de armarios y mesa de control
central (imagen
vía Flickr).
Además,
IBM 701 supone un antes y un después en la historia
al ser considerado como el primer sistema de procesamiento de
información digital. Mientras en anteriores computadores era el
propio usuario el que junto a la información añadía las operaciones a
realizar, en el 701 los programas eran almacenados en una memoria
interna, como se hace en la informática moderna. También se le considera
una de las piezas clave para el abandono de las tarjetas
microperforadas, además de
la semilla que da inicio a una nueva era de la informática moderna.
IBM 701 inicia una nueva era, siendo el primer sistema de procesamiento de información digital. Se presentó en 1952.
Según la información de la compañía, el 701 es 25 veces más rápido que el
SSEC
a la vez que ocupa una cuarta parte de su espacio. Sólo se vendieron 19
unidades, disponibles entre los años 1952 y 1955, pertenecientes a los
siguientes clientes:
Machine number |
Shipped to |
Date |
Note |
1 |
IBM World Headquarters, New York, N.Y. |
Dec. 20, 1952 |
|
2 |
University of California., Los Alamos, N.M. |
Mar. 23, 1953 |
Used for hydrodynamics calculations. |
3 |
Lockheed Aircraft Company, Glendale, Cal. |
Apr. 24, 1953 |
Mathematics Analysis Department used the 701 for problems in
aircraft design, such as aerodynamic performance and stability, thermal
dynamics and structural and flight dynamics. Production data handled on
701s by Lockheed's Factory Data Processing Group included project base
schedule preparation, parts scheduling, shop order writing, direct labor
hour forecasting and parts activity ledgers. |
4 |
National Security Agency, Washington, D.C. |
Apr. 28, 1953 |
|
5 |
Douglas Aircraft Company, Santa Monica, Cal. |
May 20, 1953 |
Arrived on May 23, 1953, aboard a DC-6A aircraft. The 701
was used to get the DC-7 into production months ahead of schedule. It
solved engineering and scientific problems on all Douglas commercial
aircraft, including the DC-6B, DC-7, DC-7C and the development of DC-8. |
6 |
General Electric Company., Lockland, Ohio |
May 27, 1953 |
|
7 |
Convair, Fort Worth, Tex. |
Jul. 22, 1953 |
|
8 |
U.S. Navy, Inyokern, Cal. |
Aug. 27, 1953 |
Used to calculate rocket and missile performance and to
simulate flight conditions of these devices at the U.S. Naval Ordnance
Test Station China Lake. |
9 |
United Aircraft, East Hartford, Conn. |
Sep. 18, 1953 |
|
10 |
North American Aviation, Santa Monica, Cal. |
Oct. 9, 1953 |
Handled engineering problems, from basic configuration
selection through aerodynamic and structural design to the analysis of
flight test data. |
11 |
Rand Corporation., Santa Monica, Cal. |
Oct. 30, 1953 |
Used to solve wide variety of problems in economics,
mathematics, aircraft, missiles, electronics, nuclear energy and social
sciences. Later moved to West Los Angeles. |
12 |
Boeing Corporation, Seattle, Wash. |
Nov. 20, 1953 |
Used to assist engineers and designers in solving problems
in aerodynamics, stress and structural development, and flight testing
of supersonic and jet aircraft and guided missiles. |
13 |
University of California, Los Alamos, N.M. |
Dec. 19, 1953 |
|
14 |
Douglas Aircraft Company, El Segundo, Cal. |
Jan. 8, 1954 |
Solved engineering problems on U.S. Navy A3D Skywarrior, A4D Skyhawk and F4D Skyray programs, and USAF C-133 and RB-66 programs. |
15 |
Naval Aviation Supply, Philadelphia, Pa. |
Feb. 19, 1954 |
|
16 |
University of California, Livermore, Cal. |
Apr. 9, 1954 |
|
17 |
General Motors Corporation, Detroit, Mich. |
Apr. 23, 1954 |
|
18 |
Lockheed Aircraft Company, Glendale, Cal. |
Jun. 30, 1954 |
Mathematics Analysis Department used the 701 for problems in
aircraft design, such as aerodynamic performance and stability, thermal
dynamics and structural and flight dynamics. Production data handled on
701s by Lockheed's Factory Data Processing Group included project base
schedule preparation, parts scheduling, shop order writing, direct labor
hour forecasting and parts activity ledgers. |
19 |
U.S. Weather Bureau, Washington, D.C. |
Feb. 28, 1955 |
Produced from spare parts. |
Llegan los transistores y los mainframe continúan creciendo
Desde los años 50, los
mainframes han continuado
evolucionando con ayuda de los ingenieros de diseño que han estado
permanentemente buscando la forma con la que mejorarlos y adaptarlos a
los nuevos retos e invenciones de la ciencia.
Parte de esas evoluciones buscaban mejorar la parte física y ciertos
componentes con el objetivo de conseguir una mayor eficacia y minimizar
su tasa de error físico. Esta línea de pensamiento hizo que en 1956 se
desarrollase
el primer disco duro magnético, un
monstruo de varios kilogramos de peso que se alquilaba por unos 3.200
dólares mensuales, y que fue instalado por primera vez en el IBM RAMAC
305.
Sí, ese cilindro que veis ahí es el primer disco duro del mercado (imagen vía ExtremeTech)
Primero los discos duros mecánicos, y luego los transistores: los mainframes cambiaron radicalmente en los años 60.
Pocos años más tarde se ejecutó una de las innovaciones más importantes en uso en la tecnología actual. Sabréis que el término
'bug'
proviene de su definición en inglés, cuya traducción es 'bicho',
'insecto' o similares individuos de la naturaleza. Esto es debido a que
en la maquinaria de aquellos viejos computadores se metían insectos que
alteraban el correcto funcionamiento del sistema.
Evitar esos "bugs', o al menos que dejasen de existir tal y como se
conocían en la época, fue uno de los grandes retos en la década de los
60 al dejar atrás la tecnología de
válvulas de vacío, elemento indispensable para los computadores de la época.
Es cuando llegan los transistores y empieza la 'era digital'.
El
mainframe encargado de inaugurar este periodo fue el
IBM 7000, una evolución sobre el 700 que cambió las válvulas de vacío por transistores, y que llegó al mercado en 1964.
La semilla estaba ya enterrada en el suelo y era cuestión de regalarla y darle algo de tiempo. Los
IBM 7000 Series tuvieron un cierto éxito en el mercado, pero sobre todo fueron la base sobre la que más tarde, en 1964, se construyeron los
IBM System/360, que cambiarían notablemente la forma con la que llegar a los clientes.
IBM System/360
Llegan los 60 y llega el color, la personalización y las diferentes
gamas de producto. ¿El resultado? Los S/360 se hicieron un hueco en
muchas más empresas (imagen
vía 360info).
En vez de existir pocos equipos fabricados casi de forma artesanal, los S/360 se diseñaron de forma que existiesen
múltiples configuraciones
para ajustarse a los presupuestos que pudiesen tener diferentes
clientes, así como también a los requisitos de todos ellos e incluso al
color, siendo posible personalizarlos para adaptarse a la imagen de las
diferentes compañías.
The IBM System/360 wasn’t just a brilliant all-in-one
computer mainframe; it was stylish too. It was available in five
standard colors, although the ASB Bank data center in New Zealand took
advantage of ordering it in a custom yellow.
Los
mainframes empezaron a llegar a empresas de todo tipo, y
no sólo a entidades de corte público con grandes presupuestos como
hasta entonces. ¿Necesitas un armario? ¿Quizá dos? Los que necesites, o
los que puedas pagar.
Pero el éxito de los System/360 no se basó únicamente en la posibilidad de escalarlos a lo que el cliente necesitase.
IBM también los orientó para servir como máquinas multipropósito. Mientras anteriores generaciones estaban pensadas como supercalculadoras, a partir del S/360 los
mainframes empezaron a ser máquinas que servían para mucho más que calcular números.
La transición junto a los PC y la llegada de Internet
Los ingenieros de IBM mantuvieron la idea de los System/360 con
nuevas generaciones en los años sucesivos. En 1970 llegaron los
System/370 para los que pensaron que sería buena idea que la gente que
ya tuviese un S/360 pudiese seguir ejecutando su software en un nuevo
S/370.
Eran retrocompatibles, basados en los mismos
principios pero evolucionados y adaptados a los tiempos más modernos.
Como detalle curioso, el sistema operativo tanto de los S/360 como de
los S/370 ya se basaba en una arquitectura con registros de 32 bits, que
en el ámbito doméstico incluso continúan usándose en la actualidad.
IBM System/370
El panel de control, al fondo, y la entrada de datos, a la derecha. Detrás del fotógrafo habría más máquinas (imagen
vía Forbes).
También se dio una importante coincidencia que más tarde aprovecharon desde IBM.
Los System/370 coincidieron con el nacimiento de los PC,
equipos mucho más sencillos pero también más económicos. Como
referencia, los S/370-158 y S/370-168, ambos en 1972, tenían un coste de
200.000 y 400.000 dólares (de la época) respectivamente, mientras que
el Apple I de 1975 se introdujo por los famosos 666,66 dólares.
Los S/370 se mantuvieron en el mercado durante dos décadas
Los System/370 fueron una de las familias más longevas de la historia
de la informática, manteniéndose en el mercado durante dos décadas.
IBM, consciente de que tenían un buen producto, se centró en mejorar
sucesivamente tanto el hardware (nuevos procesadores, adaptación a
nuevas interfaces) como en el software (sistemas operativos
específicamente diseñados por IBM, introducción de los primeros Linux
hechos 'a medida').
También empezaron a surgir los clones
de equipos IBM, definidos como ordenadores diseñados y construidos por
otros fabricantes (Hitachi, Fujitsu, Siemens o Mitsubishi eran quizá los
más conocidos) pero compatibles con el mismo software que proporcionaba
IBM.
Estos 'clónicos' se mantuvieron en el mercado durante los años 80, y
empezaron a expandirse por el entorno doméstico (¿quién no recuerda
los 80286 fabricados por AMD?), permaneciendo durante la siguiente generación.
Con los vaqueros y el refresco de cola vendiéndose por todos lados,
en la década de los 90 IBM estrenó los System/390.
Misma estructura de nombre que por supuesto trajo algunas novedades
(pasaron a utilizar transistores bipolares en vez de CMOS, por ejemplo),
pero que mantuvieron la esencia tanto de los S/370 como de los S/360
previos: seguían siendo retrocompatibles con el software (sí, en el 1999
se podía ejecutar en un S/390 un programa desarrollado para un S/360 de
1964 sin necesidad de adaptar el código) y utilizaban la misma
arquitectura CISC de 32 bits. Igualmente también existieron múltiples
familias, configuraciones y gamas, una constante que se mantiene hasta
nuestros días.
Una diferencia significativa es que, mientras los S/360 y S/370 eran
máquinas con un panel de control propio, los S/390 empezaron a adoptar
un formato diferente. Armarios de, generalmente, grandes dimensiones, en
los que toda la comunicación se realizaba desde un cliente externo. Los
PC, con su rápido crecimiento y la amenaza que suponían para los
mainframes, motivaron este cambio que hizo que estos equipos necesitasen
disponer de un buen canal de intercambio de información.
El cambio de siglo y el cambio de nombre
Aunque el equipo de diseño de IBM tuvo en mente siempre la evolución
de muchos de los componentes, la base sobre la que se sustentaron las
sucesivas generaciones fue la arquitectura CISC de 32 bits que, como ya
hemos visto, se mantuvo entre los S/360, S/370 y S/390 durante un
período de 40 años.
La llegada del nuevo siglo trajo importantes cambios para IBM. Los S/390 se vieron sucedidos por los
System z, un nuevo nombre que también incluyó una nueva arquitectura, la
z/Architecture.
IBM zEnterprise
Instalación de un zEnterprise y su expansión, BladeCenter Extension, en el año 2010. Lo que se dice hace cuatro veranos.
La z/Architecture, también desarrollada completamente por IBM, fue
introducida en 2000. Dieron el salto a los 64 bits y, una vez más,
mantuvieron la retrocompatibilidad con anteriores generaciones, incluyendo con los S/360 y suponiendo 40 años de software compatible.
¿Software de los 60 en un zEnterprise del siglo XX? Retrocompatibles durante más de 40 años
También
introdujeron un nuevo límite en la memoria RAM (hasta 2 exabytes)
fundamental en equipos profesionales de este calibre, y por supuesto el
software, que ahora podía acceder a registros de mayor capacidad,
repercutiendo en una mayor eficiencia en el procesamiento de la
información.
Algo que empezó a vislumbrarse en los S/390 terminó explotando en los System z: la
paralelización
se tornó en un pilar fundamental de esta nueva generación. Para ser
competitivos y teniendo en cuenta las experiencias de los años
anteriores, estos nuevos equipos se diseñaron de forma que admiten
configuraciones que en algunos casos
superan los 100 procesadores por armario, cada uno de ellos con cuatro, seis o más núcleos, y por encima del
terabyte de memoria RAM.
Actualmente, además de los System z, IBM también distribuye
mainframes
con chips AMD Opteron (System x), Intel Xeon (System x, BladeCenter) o
POWER (Power Sustems, Power Blade), su propia arquitectura heredada de
los PowerPC de antaño. Existen decenas de diferentes modelos que a su
vez son ampliamente personalizables y adaptables a los requisitos de
cada cliente, tanto tecnológicos como económicos.
Los mainframe: siguen ahí aunque no los veas
Los mainframe existen y siguen a la orden del día, y
de hecho los usamos continuamente. No los vemos, pero ahí están. Si te
paras a pensar, estas líneas que estás leyendo seguramente estén
guardadas en un servidor de alguna parte, y ese servidor consistirá en
varios mainframes que son los que proporcionan la conexión 24/7 de ésta y
muchas otras páginas web.
Los grandes servicios tienen sus propios centros de datos (Google,
Apple), mientras que otras lo subcontratan. Por ejemplo Amazon es una de
las mejor posicionadas en esto con sus
Amazon Web Services, proporcionando servidores y sistemas de caché imprescindibles para la Web hoy en día.
Los
mainframes han pasado de ser sistemas pertenecientes a
entidades públicas (universidades, gobiernos, ejércitos) a ser la base
hardware de Internet y las comunicaciones. El mundo de los smartphones
ha hecho que estemos aún más conectados, no sólo en nuestras casas si no
también en (casi) cualquier parte del mundo. A los smartphones hay que
sumar las redes de sensores (cada vez más habituales en las ciudades),
los vehículos (los coches cada vez incorporan más tecnología) o los
electrodomésticos que empiezan a ser conectados (véase
éste de Berg).
Aún queda mucho camino por recorrer, pero la tendencia es que
prácticamente todo termine conectado a un servidor, en el que habrá un
mainframe.
IBM zEnterprise zEC12
Otro zEnterprise, el zEC12 de 2012, junto a su BladeCenter Extension.
Especial atención al diseño del equipo, auténtica belleza geek.
Igualmente, también hay que mencionar
la importancia de los mainframes para el mundo de la ciencia.
Equipos de este corte se utilizan para realizar simulaciones
matemáticas complejísimas, predicciones meteorológicas o análisis de
información que sin estos ordenadores superrápidos sería imposible
afrontar.
Llevamos utilizándolos durante años, sin casi darnos cuenta.
Los
mainframes
llevan varios años siendo el 'centro' transparente de nuestras
conexiones. No los vemos, pero están ahí. Sus funcionalidades no
cambiarán en los próximos años, si bien sí
empiezan a vislumbrarse algunas modificaciones importantes que pueden afectar a pilares de estos equipos.
Uno de ellos es el
consumo energético, un parámetro
muy valorado en los últimos años debido a los incrementos en el coste de
la energía en todo el mundo. Los clientes buscan equipos de consumo más
ajustado que les permita reducir su factura de la luz, y por tanto
los
fabricantes se enfrentan ante el reto de bajar los requisitos
energéticos de sus equipos a la vez que se mantiene un buen rendimiento.
Es importante mencionar que el consumo eléctrico no depende sólo del
equipo como tal, si no que por ejemplo también es esencial la
refrigeración de la sala (los supercomputadores suelen instalarse en
salas completamente refrigeradas para mejorar la disipación del calor),
que suele suponer buena parte de la factura total.
El mundo de los
servidores en general, y de los mainframes en particular, está en pleno
proceso de cambio, con ARM como la próxima gran implementación.
Otro
de los cambios más importantes que se están planteando en el mercado de
los mainframe es evolucionar desde las clásicas arquitecturas POWER,
x86 o la z que mencionábamos antes, hacia
ARM,
que tiene a su favor varios factores. Consume una fracción de la
energía de sus competidoras, emite un calor que muchas veces puede
disiparse pasivamente (sin ventiladores activos) y además son baratos.
Evidentemente tienen la
contrapartida de que su rendimiento también es mucho menor que el de las alternativas antes mencionadas, algo que está combatiéndose instalando múltiples
chips ARM y ejecutándolos en simultáneamente, en paralelo.
Los HP Moonshot, racks que pueden configurarse con procesadores ARM