Bei sicherheitsrelevanten System ist es wohl zu 99,9 % C.
Da für C automatisierte Test Tools wie zb für MISRA verfügbar sind und
auch angewendet werden (müssen).
Das restliche 0,1 % ist dann Assembler. Der wird aber nur da eingesetzt
wo es nicht anders machbar ist. Zb der Teil des OS Scheduler der dann
die eigentliche Taskumschaltung macht. Also die Register, Stackaddresen,
Programmcounter,.... umschaltet.
Das Problem beim Assembler ist dann die Prüfung des Codes auf
Funktion,Logikfehler, Überläufe,... das geht nur Per Hand und nicht
automatisiert. ==> Große Aufwand und damit Teuer
Ob dieser C-Code jetzt Manuell oder per Codegenerierung erzeugt wird ist
wieder ein anderes Ding.
Codegeneratoren sind zb Matlab/Simulink, oder auch AUTOSAR Toolsets.
Wobei hier Matlab/Simulink auf der Ebene der Regelkreise vertreten ist.
Die AUTOSAR tools sind dann mehr auf IO und OS Bereichen unterwegs.
Allerdings wird auch noch sehr viel in den sicherheitskritischen
Bereichen per Hand codiert.
Das liegt ganz einfach daran das jedes Tool zertifiziert und freigegeben
sein muss. Und dieser Aufwand ist gewaltig, damit wieder Teuer.
Also wenn du dich mit Codegenerierung beschäftigst kann das nicht
Schaden
, allerdings solltest du C nicht außen vor lassen.