Welche Raumfahrtanwendungen, Projekte und Agenturen verwenden die Programmiersprache Ada?

Die Antwort auf diese Frage erwähnt die Verwendung von Ada-programmierten Anwendungen auf der ISS.

Ada wurde für das US-Verteidigungsministerium entwickelt, um eine Vielzahl von Computersprachen (etwa 465) für unternehmenskritische Anwendungen zu ersetzen. Es hat eine starke Fähigkeit zur Fehlerkorrektur und Fehleridentifizierung und ist daher auch ideal für Weltraumanwendungen geeignet.

Welche anderen Weltraumanwendungen, Projekte und Agenturen verwenden die Programmiersprache Ada?

Antworten (1)

Welche anderen Weltraumanwendungen, Projekte und Agenturen verwenden die Programmiersprache Ada?

In den USA altes Zeug wie die Delta-Raketen, die Atlas-Raketen und das TDRSS-Bodenterminal (das aber auf C, C++, C# und Java umgestellt wird). Es mag neue Entwicklungen geben, aber es handelt sich hauptsächlich um Dinge, von denen Sie (und ich) nichts wissen können, weil sie geheim sind. Neuentwicklungen erfolgen hauptsächlich in Mainline-Sprachen wie C, C++, C# und Java sowie in spezialisierten Tools wie Matlab Simulink.

Ein Grund für die Abkehr von Ada war, dass das Ada-Mandat zu früh veröffentlicht wurde. Einige Projekte, die aufgrund fehlender Tools scheiterten, wechselten zu C. Die Manager dieser Projekte erinnern sich an diese Ada-Erfahrung. Die Erinnerungen sind nicht schön.

Ein weiterer Grund war die Demografie. Ada-Programmierer zu finden, ob gut oder schlecht, war schon immer etwas schwierig. Es ist viel einfacher, C- oder C++-Programmierer zu finden, und dies gibt Managern die Möglichkeit, nach Qualität zu wählen.

Ein weiterer Grund ist, dass viele der Entwickler von Tools, die ursprünglich auf Ada abzielten (z. B. Rational), feststellten, dass ihre Tools recht gut mit anderen Sprachen funktionierten. Aufgrund der demografischen Entwicklung wurden zunächst Verbesserungen und neue Funktionen an den Mainline-Sprachversionen vorgenommen, bevor sie auf Ada ausgeweitet wurden. Dies gab noch mehr Anstoß, von Ada zu wechseln.

Ada scheint in Europa weiter verbreitet zu sein als in den USA. Ein Grund dafür ist, dass der Chefarchitekt von Ada Dr. Jean Ichbiah von CII-Honeywell-Bull in Frankreich war. Das Ada-Mandat wurde sowohl in Europa als auch in den USA angewandt, aber das Timing war dort etwas besser. Die Tools waren ausgereift und viele der Tools wurden in Europa von dem von Dr. Ichbiah gegründeten Unternehmen entwickelt. Ein aktuelles Beispiel ist die Flugsoftware für den Satelliten GOCE.


Ein weniger gutes Beispiel ist die Flugsoftware für den Jungfernflug der Ariane-5-Rakete. Dies ist vielleicht der berüchtigtste aller Softwarefehler. Ada hat eine Reihe von Sicherheitsfunktionen in die Sprache integriert. (Vergleichen Sie mit C, wo der Standard zwölf Seiten hat, die die in die Sprache eingebauten undefinierten Verhaltensweisen zusammenfassen. Vergleichen Sie mit C++, wo die undefinierten Verhaltensweisen so zahlreich sind, dass sie sie nicht einmal auflisten.) Diese Ada-Sicherheitsfunktionen können von Bedeutung sein Leistungskosten, und aus diesem Grund bietet Ada auch die Möglichkeit, diese Sicherheitsfunktionen selektiv zu deaktivieren.

Im Fall von Ariane-5-Flug 501 verwendeten die Software-Ingenieure Ariane-4-Flugsoftware wieder, bei der Sicherheitsfunktionen in Bezug auf Überlauf in einigen der GNC-Software deaktiviert waren. Die Ariane 5 hatte erheblich mehr Schub als die Ariane 4. Diese erhöhte Beschleunigung führte dazu, dass die Daten des Beschleunigungsmessers bei der Umwandlung in eine ganze Zahl überliefen. Dies wiederum führte zu Hardware-Ausnahmen, die wiederum die GNC-Software zum Stillstand brachten, was wiederum die Zerstörung des Fahrzeugs zur Folge hatte.

Fantastische Antwort. Ada ist eine robuste Sprache, die immer noch in vielen Anwendungen verwendet wird, aber schwer zu unterstützen ist. Und ja, in den meisten Fällen wird es durch C-basierte Sprachen ersetzt.
Ich selbst habe in Ada von Ende der 1980er bis Anfang der 1990er Jahre gelernt und gearbeitet. Dies wurde zwischen der Arbeit in Lisp Mitte bis Ende der 1980er Jahre und der Arbeit in C ab Mitte der 1990er Jahre eingeklemmt. Meine Erinnerungen an Ada sind keine schönen. Ada ist die ultimative Bondage- und Disziplinierungssprache .
Auch ich hatte einige Erfahrungen damit, als ich kurz an einem Raumstationssimulator arbeitete. Ich war überhaupt nicht beeindruckt. Ich komme jedoch aus einer Zeit von FORTRAN / Assemblersprache.
@OrganicMarble - Ich habe diese Sprachen verwendet, bevor ich Lisp gelernt habe. Lisp war WOW. C war ok, wow vielleicht, aber nicht so cool wie Lisp. Ada war – Worte entgehen mir. Ich bleibe bei deinem "nicht beeindruckend".
Ja. Nach einer relativ vernünftigen, aber schnell veralteten FORTRAN-Erfahrung im Shuttle-Simulator war ich in keiner Weise auf den Mischmasch aus "modernen" Sprachen und "automatischen Softwareentwicklungstools" vorbereitet, der der Stationssimulator war.