El SMCS, el Sistema de Mando de Submarinos , fue creado inicialmente para los submarinos de la clase Vanguard de la Marina Real del Reino Unido como sistema de información táctica y sistema de control de armas torpederas . Actualmente, también se han instalado versiones en todas las clases de submarinos activos de la Marina Real.
En 1983, cuando se decidió construir una nueva clase de submarinos que llevaran el sistema de misiles Trident , el Ministerio de Defensa del Reino Unido (MoD) convocó un concurso abierto para el sistema de mando. Hasta ese momento, todos los barcos y submarinos de la Marina Real Británica (RN) contaban con sistemas de mando construidos por Ferranti utilizando electrónica personalizada y procesadores patentados especializados. En un cambio con respecto a la práctica anterior, que había favorecido las políticas de "contratista preferente", el concurso lo ganó una nueva empresa llamada Gresham-CAP, que lideraba un consorcio formado por Gresham-Lion (ahora parte de Ultra Electronics plc) y CAP Scientific .
El consorcio propuso un novedoso sistema de procesamiento distribuido basado en procesadores comerciales listos para usar (COTS), con una arquitectura de software modular escrita en gran parte en el lenguaje de programación Ada . Cada conjunto de equipos SMCS de la fase inicial tiene múltiples nodos informáticos. [1] En el centro del sistema hay un nodo de entrada/salida (que proporciona interfaces a armas y sensores) y un nodo de servicios centrales (que contiene procesadores numéricos rápidos). Cada nodo central está duplicado para crear un sistema tolerante a fallas que es doblemente redundante modularmente . La interfaz hombre-computadora es proporcionada por consolas multifunción y algunos terminales adicionales. [2] Los nodos centrales doblemente redundantes están conectados entre sí y con las consolas a través de una LAN de fibra óptica doblemente redundante.
En la fase inicial, el equipo instalado en los submarinos de la clase Vanguard se encargaba de la mayor parte del procesamiento mediante ordenadores monoplaca Intel 80386 , cada uno con su propio entorno de ejecución Ada. CAP Scientific creó una compleja capa de middleware para conectar los numerosos procesadores entre sí. En su momento, SMCS fue el proyecto Ada más grande que se había visto hasta el momento. Como usuario pionero de Ada, el proyecto SMCS se encontró con muchos problemas iniciales con el uso a gran escala de compiladores Ada, herramientas de desarrollo Ada y las características especiales del dialecto inicial del lenguaje de programación Ada , conocido posteriormente como Ada 83.
En 1991, CAP Scientific formaba parte de Sema Group y el proyecto SMCS era propiedad de BAeSEMA , una empresa conjunta entre Sema Group y British Aerospace . Una vez que se demostró que SMCS funcionaba en los barcos Vanguard , a principios de los años 90 se propuso ampliar su uso a los submarinos de clase Swiftsure y Trafalgar , como parte de un programa de mejora para estos buques. Existía un deseo comercial de una mayor adopción de la tecnología COTS. El consenso fue trasladar SMCS a alguna forma de UNIX . Sema Group, con una experiencia considerable tanto en sistemas de tiempo real como en UNIX comercial, tenía dudas sobre la viabilidad tecnológica de esta adaptación. La esencia del problema era la necesidad de mapear el entorno de tareas de Ada al modelo de tiempo de ejecución de los procesos de UNIX de una manera que preservara las características de tiempo real de SMCS lo suficiente como para mantener la confiabilidad . Un equipo de BAeSEMA, dirigido por Ray Foulkes, realizó una investigación exhaustiva sobre posibles alternativas a la arquitectura distribuida de Ada utilizada en la fase inicial. Después de una investigación exhaustiva del comportamiento en tiempo de ejecución de diferentes variantes de UNIX y del código generado por diferentes compiladores Ada, el proyecto seleccionó el sistema operativo Solaris que se ejecuta en computadoras SPARC , que ahora se pueden adquirir como computadoras de placa única COTS .
Para limitar el riesgo, en esta fase solo se convirtieron las consolas a Solaris en SPARC. Los nodos centrales se mantuvieron en la misma forma que el equipo de la fase inicial. El beneficio fue que no hubo necesidad de implementar el esquema de redundancia modular dual en Solaris en esta etapa. Sin embargo, el proyecto tuvo que gestionar algunos problemas adicionales que surgieron del funcionamiento mixto de Intel y SPARC, como el endianismo (ya que la arquitectura de Intel es little-endian y SPARC es big-endian ).
En 1998 se realizó un análisis independiente detallado y generalmente preciso [ cita requerida ] de estas etapas en el desarrollo del SMCS. [3]
Después de su exitosa implementación en los submarinos Swiftsure y Trafalgar en la configuración mixta Intel/SPARC, la arquitectura fue revisada aún más para los nuevos barcos de ataque del Reino Unido, los submarinos de clase Astute .
El sistema de gestión de combate Astute (ACMS) combina el SMCS con varios otros subsistemas. [4] Para el ACMS, los nodos centrales también se han convertido en computadoras SPARC. La arquitectura redundante dual, tanto de los nodos centrales como de las conexiones LAN, sigue siendo una característica clave. Hay aproximadamente el doble de consolas que las proporcionadas en versiones anteriores del SMCS. [5] Esta fase del SMCS es una solución totalmente UNIX que ejecuta Solaris en múltiples nodos SPARC, con redundancia dual incorporada.
En 2000, el Grupo Sema había vendido su participación en BAeSEMA y el proyecto SMCS ahora era propiedad total de BAE Systems . En su última revisión importante de la defensa, como se informó en 2003, [6] el Parlamento del Reino Unido acordó numerosas mejoras para los submarinos de la Marina Real, pero ningún cambio en los barcos Vanguard o el sistema de misiles Trident. Se esperaba que el equipo SMCS, suministrado y mantenido bajo un contrato de soporte con Ultra Electronics , [7] durara más que la vida útil de la flota Vanguard. Los programas en marcha para otras mejoras de los submarinos eran principalmente para nuevos equipos de sonar y habían sido revisados y aprobados por el parlamento del Reino Unido. [8]
Durante un breve período, el proyecto SMCS estuvo bajo la propiedad de Alenia Marconi Systems , una empresa conjunta de BAE Systems. En 2002, se propuso convertir SMCS para que funcionara en hardware x86 de PC estándar , aunque en una forma industrializada y robusta, para sistemas de mando naval. El proyecto SMCS comenzó a desarrollar SMCS-NG ("Next Generation") como SMCS que se ejecuta en hardware de PC. El plan era convertir la infraestructura y las aplicaciones de SMCS para que se ejecutaran en el sistema operativo Microsoft Windows .
Sin embargo, algunos ingenieros de software tenían sus dudas. En abril de 2002, Bill Gates , en su calidad de arquitecto jefe de software de Microsoft, había prestado testimonio bajo juramento ante los tribunales de Estados Unidos. [9] El testimonio de Gates incluía declaraciones de que Microsoft Windows era indisoluble y no podía crearse en forma reducida. Los párrafos 207 a 223 del testimonio de Gates indicaban que Windows tenía una estructura monolítica enredada, en lugar de una estructura organizada de forma modular. Suponiendo que el testimonio de Gates fuera cierto, estos ingenieros "pro-UNIX" sentían que UNIX de código abierto, en lugar de Microsoft Windows, debería utilizarse como base de los futuros sistemas de mando naval y difundieron sus preocupaciones dentro de la empresa. [10] [11]
A pesar de las preocupaciones de algunos ingenieros, el SMCS-NG fue creado como una adaptación de la infraestructura y las aplicaciones del SMCS a Microsoft Windows, una iniciativa que algunos comentaristas han denominado "Windows para buques de guerra". El Ministerio de Defensa del Reino Unido dio garantías más tarde, a través de preguntas en el parlamento británico, [12] [13] de que se trata de un uso de bajo riesgo de Microsoft Windows. Sin embargo, otros proveedores han tomado un camino diferente. Las consolas [14] para el nuevo Sonar 2076 suministrado por Thales Underwater Systems para los submarinos de la clase Astute, y que pueden ser reacondicionadas para otras clases, están construidas como PC que ejecutan Linux en lugar de Windows. [ cita requerida ]
Habiendo desarrollado el SMCS-NG como un proyecto interno, BAE Systems propuso de forma independiente al Ministerio de Defensa que el equipo SMCS original fuera reemplazado por su propia versión más nueva. Después de las pruebas en el mar en el HMS Torbay , el Ministerio de Defensa adjudicó contratos a BAE Systems [15] para la reequipación del SMCS-NG en la mayoría de los submarinos de la Royal Navy, incluida la flota Vanguard. Aunque el Ministro de Defensa Adam Ingram dijo al Parlamento del Reino Unido en octubre de 2004 que no se había tomado ninguna decisión sobre la conversión de la flota Vanguard para utilizar el SMCS-NG, [16] el Ministerio de Defensa adjudicó los contratos el mes siguiente. Para diciembre de 2008, todos los submarinos activos de la Royal Navy habían sido reequipados con el SMCS-NG.
A diferencia de las versiones anteriores de SMCS, el software se suministra como una versión de ajuste único que está diseñada para configurarse según el sensor y el armamento de cada submarino. [17]