Quels langages de programmation logiciel ont été utilisés par le programme spatial de l'Union soviétique?

306

Je me suis intéressé au programme spatial soviétique et à découvrir que le logiciel de la navette Bourane vers 1988 avait été écrit en prolog.

Est-ce que quelqu'un sait quelles langues auraient pu être utilisées dans les missions précédentes, en particulier les missions mobiles Mars PrOP-M du début des années 1970, qui étaient quelque peu autonomes et pouvaient surmonter des obstacles?

Modifier

Mon source pour Buran Prolog est ce document déclassifié du site de la CIA de mai 1990. Je ne trouvais pas de version OCR. Voici donc la citation pertinente de p. 0449:

Selon la littérature open source, les Soviétiques ont utilisé le langage de programmation français Prolog, connu sous le nom de Prolog, pour développer un logiciel système embarqué pour le véhicule Bourane ...

shamp00
la source
4
êtes-vous intéressé par tous les projets énumérés dans l'article de Wikipedia auquel vous faites référence - de 1957 à 1987? ou à 2011? De plus, en supposant que les ordinateurs soviétiques soient utilisés dans leur programme spatial, les langues utilisées sur ces ordinateurs seraient-elles admissibles?
Gnat
2
Je soupçonne que les premiers programmes spatiaux russes utilisaient probablement des appareils de calcul analogiques, un peu comme l’avaient fait le US Army Air Corps et le premier programme spatial américain. J'ai entendu des rumeurs selon lesquelles les Russes soviétiques s'appuieraient davantage sur les ordinateurs analogiques que les États-Unis, mais je ne peux pas confirmer la source. Les ordinateurs analogiques étaient généralement plus rapides et plus précis que les ordinateurs numériques de leur époque, mais n'étaient pas aussi flexibles (conçus pour un seul but).
Dave Kennedy
1
@DaveKennedy Vous avez raison, l'Union soviétique a eu davantage recours à l'informatique analogique que les États-Unis jusque dans les années 1970. J'ai été affecté à un projet utilisant un ordinateur analogique en 1982 (aux États-Unis) et je me souviens que mon professeur d'ingénierie mécanique m'a dit que les ordinateurs analogiques avaient été largement utilisés et avec succès en URSS. J'essaierai d'obtenir plus d'informations pour pouvoir peut-être réellement répondez à cette question aussi.
Ellie Kesselman le
2
Reddit discussion sur cette question.
Yannis
1
Je dirais que toute affirmation commençant par "Selon la littérature open source" pourrait être fausse - le programme spatial a été classifié et une désinformation délibérée pourrait donc être mise dans la littérature open source.
Sharptooth

Réponses:

223

Il y a un livre en russe, Noskin allemand, Premiers ordinateurs (littéralement embarqués sur des machines informatiques numériques ) pour applications spatiales (Герман Носкин, Первые БЦВМ космического применения), ISBN 978-591919-093-7.

L'auteur a lui-même participé à de nombreux premiers projets (principalement liés au matériel) et, selon lui, le matériel analogique a longtemps été en sa faveur. En raison de cette politique, de nombreux ordinateurs numériques étaient vraiment des preuves de concept, bien qu’ils soient utilisés dans d’autres domaines de l’économie soviétique. Selon lui, le premier ordinateur utilisé à bord était l'Argon-11S (Аргон-11С) des missions sans pilote sur la Lune, plus proches d'Apollo-8. Noskin indique également brièvement que l'ordinateur de bord Salut-4 était compatible avec les ordinateurs ES à usage général utilisés en économie soviétique; il était donc possible de développer un logiciel en PL-1 et en Fortran.

Il existe plusieurs mentions de langues de programme sur le Bourane sur les sites russes. Selon Vladimir Parondjanov, un ingénieur du programme ( poste russe ) a développé trois langues utilisant le russe comme base: PROL2 (ПРОЛ2) pour les programmes embarqués, Dipol (Диполь) pour les essais de mise à la terre, et Laks (акс) pour la modélisation. Tous étaient destinés à être utilisés non seulement par des programmeurs professionnels, mais également par des ingénieurs d'autres domaines.

Lorsque le programme Bourane a été fermé, ils ont été fusionnés dans une nouvelle langue, Drakon (Дракон, mot russe pour "Dragon"), qui serait un langage "graphique" avec des descriptions en deux dimensions des programmes et utilisant des langues arbitraires bien connues. pour la génération de code. Ce langage était également destiné à être utilisé par des non-programmeurs. La langue n'a probablement pas de communauté internationale et n'est même pas très connue en Russie, bien que son auteur, Vladimir Parondjanov, l'ait vivement encouragé ( l'article de l'article de Wikipedia russe est très long et a même été supprimé une fois pour n'avoir pas suivi les règles de Wikipedia). Drakon a d'abord été utilisé pour la programmation des missions Sea Launch et est depuis utilisé dans d'autres programmes spatiaux russes.

Maksee
la source
3
Très bonne réponse! J'ai fouillé un peu plus et trouvé l'interview dans laquelle l'intervieweur a déclaré: «On m'a dit que l'Argon-11S avait été installé sur un véhicule spatial envoyé sur Mars».
shamp00
Bonne réponse, mais Sea Launch n'est pas un programme russe. C’est la coopération des États-Unis, de la Russie (étage supérieur), de la Norvège et de l’Ukraine (transporteur de rocker).
defhlt
En tant que référence, les ES étaient des clones soviétiques directs des ordinateurs centraux S / 360 d’IBM . Énormes beasies $$.
DVK
Ces informations DRAKON ressemblent beaucoup aux diagrammes d'activité UML. Ou ai-je oublié quelque chose d'important?
Dmitry Grigoryev
30

Dans les années 80, les ordinateurs embarqués Argon de troisième génération utilisaient Pascal, Fortran et Si. (Si?). Je n'ai trouvé aucune autre langue que l'assembleur auparavant.

De l'histoire de l'ordinateur aéroporté Argon

La famille Argon a été créée en trois étapes. Au cours de la première phase (1964 - au milieu des années 70), 11 types d’ordinateurs destinés à des systèmes de contrôle automatisés spatiaux, aériens et au sol ont été produits.

et

Au milieu des années 80, la troisième étape du développement des ordinateurs Argon a commencé. En 1986, le programme d'État adopté avait pour objectif de créer des familles unifiées d'ordinateurs mobiles, appelées SB EVM, basées sur les architectures ES EVM, POISK et SM EVM.

L'un d'eux, l'ordinateur embarqué SB-3580, avait:

Fonction de programmation: Système OS RAFOS-11. Les langages de programmation incluent: Assembler, Si, Pascal, Fortran.

source: Présentation de l'argon

David Pointer
la source
13
Je pense que Si est en réalité juste C. J'ai utilisé un compilateur C appelé СиМ86 (pour le clone CP / M appelé М86)
fionbio
20
Oui, C est écrit Си (Si) en russe.
4
phonétiquement, en disant "Si" sonne comme l'anglais "C" en latin et, je présume, les langues slaves.
Victor S
8
C, Señor. El mejor lenguaje.
ObscureRobot
RAFOS-11 est un autre nom pour RT-11.
sendmoreinfo
17

Je suis tombé sur cet article dans ACM citation quad il y a quelques années, " Une histoire de la LPA en URSS ". Il a été écrit par Andrei Kondrashev (Centre d’informatique de l’Académie des sciences de Russie) et Oleg Luksha (Centre éducatif Obninsk).

Une citation intéressante de l'article:

Il peut être intéressant de noter qu'APL était directement liée à la conception de la navette spatiale soviétique "Bourane". La protection thermique est l’un des éléments majeurs de la construction d’appareils de ce type. Il est fabriqué à partir de matériaux de composition. Des modèles mathématiques du processus de séchage et de grillage des plaques recouvrant la coque ont été réalisés à l'aide de l'APL. En conséquence, le pourcentage de défauts lors de la fabrication des plaques de recouvrement a été réduit, ce qui a permis d’économiser beaucoup d’argent et d’efforts.

K Lettow
la source