¿Cuántas líneas de código tiene un misil que busca un objetivo típico?

Interesante pregunta. Fui al lugar que construye los tanques M-1 Abrams en Detroit hace mucho tiempo para una entrevista, y me senté dentro de la torreta. Había algunas pantallas, teclados, etc., algo de lo que esperarías. Recuerdo haber preguntado cuántas computadoras tuvieron que ejecutar todo. Me dieron la respuesta casi de inmediato: 1 procesador, 1400 líneas de código. Mucho menos de lo que esperaba, y esto habría sido procesadores Motorola 6800 era. ¡La gente no escribía mucho OO en ese entonces!

Un sistema de armas moderno como un misil guiado ahora probablemente tenía varios procesadores de propósito general y algunos DSP también. Probablemente unos 100K SLOC supongo. Esto estaría a bordo de las armas. La computadora de control de incendios que lo inicia puede tener 10 veces más, a veces a menudo mucho más que eso.

Cada vez que trabajo en ese tipo de cosas, siempre busco la parte que realmente expulsa / dispara / inicia el lanzamiento, y siempre es sorprendentemente pequeño. Unos cientos de líneas o menos. La parte que calcula las intercepciones, gestiona las pistas, habla con el misil, evita los amistosos, actualiza las cuentas de las pantallas para el resto. La mayoría de las cosas son muy antiguas, dado que la mayoría de los sistemas de armas tienen una vida útil de más de 20 años: algunos ensambladores personalizados, Ada, C, C ++ y algunos lenguajes antiguos de solo mil como CMS-2 y JOVIAL.

Circuitos integrados personalizados, sí, FPGA y dispositivos relacionados, pero no puedo especular sobre la base del código como:

  1. No está cerca de mi área de especialización
  2. Incluso si fuera, no lo discutiría

wb