Question:
Les systèmes avioniques critiques pour la sécurité fonctionnent-ils sous Linux?
traducerad
2017-04-04 05:39:23 UTC
view on stackexchange narkive permalink

J'ai entendu diverses choses à ce sujet. Certaines personnes affirment qu'exécuter Linux sur des systèmes avioniques critiques pour la sécurité est une très mauvaise idée. D'un autre côté, certaines personnes (qui ne sont pas assez familières avec l'avionique) ont dit que ce n'est pas vrai.

Donc j'aimerais savoir, est-ce que les avions fonctionnent actuellement sur une distribution Linux? Est-ce une bonne idée d'intégrer Linux dans les avions? Sinon, pourquoi?

[En relation] (http://aviation.stackexchange.com/q/28009/62)
Ils fonctionnent probablement sur des systèmes d'exploitation en temps réel propriétaires. Linux est un choix assez improbable, car il est complexe, pas en temps réel, et très susceptible d'avoir des défauts en raison de la complexité.
L'avionique critique pour la sécurité est généralement à usage unique. Ils n'exécutent probablement même pas un système d'exploitation au sens normal du terme.
Vous ne voudriez pas que votre système avionique s'exécute sur _n'importe quel_ système d'exploitation susceptible de dire: "Hé, vous savez quoi, je pense que je vais exécuter cet autre processus pendant un moment."
Ancien ingénieur avionique. Le seul endroit où vous trouverez des systèmes d'exploitation standard est dans * certains * systèmes de divertissement en vol (par exemple, certains utilisent Android ou Windows CE). Même dans ce cas, la plupart des grands fournisseurs utilisent leurs propres plates-formes personnalisées. Les éléments critiques pour la sécurité ne fonctionnent que sur des systèmes d'exploitation propriétaires et à usage unique. Linux, Windows et ainsi de suite ne sont pas conçus à cet effet et tout simplement trop bogués pour une utilisation en avionique. Les gens qui disent que c'est une mauvaise idée ne font pas semblant, c'est vrai.
@Simon comment prouver que Linux est trop bogué et n'est pas la meilleure option?
vous ne prouvez pas que c'est trop bogué, vous supposez que tout est bogué, et si vous voulez vraiment utiliser quelque chose, vous prouvez que c'est *** PAS *** bogué.
@traducerad Certifier un noyau Linux pour une utilisation dans l'avionique serait une tâche incroyablement complexe qui coûterait plus que simplement utiliser un RTOS spécialement conçu, documenté et testé avec DO-178 à l'esprit.
Un peu lié: certains des rovers Nasa qu'ils envoient sur Mars utilisent un RTOS propriétaire (OS en temps réel): [VxWorks] (https://en.wikipedia.org/wiki/VxWorks). Mais je ne peux pas dire qu'il pourrait être utilisé pour l'avionique.
@kebs: Il peut, et est. VxWorks est certifié DO-178 et utilisé à la fois par Boeing et Airbus.
@MSalters: Comment dans le monde VxWorks gère-t-il le temps réel sur x86? (Apparemment, il prend en charge x86?!)
Il n'en faut pas beaucoup pour prouver que Linux est trop bogué. Ma femme a écrasé l'un des jeux sur un système de divertissement en vol, et nous avons regardé un pingouin défiler pendant que la chose redémarrait.
Cinq réponses:
Gerry
2017-04-04 18:01:28 UTC
view on stackexchange narkive permalink

Aucun des systèmes avioniques sur lesquels j'ai travaillé n'a utilisé Linux ou un système d'exploitation de type grand public. Il y a quelques problèmes principaux.

Il y a d'abord la pratique. La plupart des avioniques critiques pour la sécurité impliquent une boucle de contrôle et ont donc une exigence en temps réel. Cela signifie qu'il n'est pas seulement important d'exécuter un processus et d'obtenir une réponse, vous devez obtenir la réponse dans une contrainte de temps étroitement contrôlée. Chaque processus logiciel critique sur un avion est planifié pour garantir que vous disposez d'une boucle de contrôle stable. Pour ce faire, vous avez besoin d'un système d'exploitation en temps réel et Linux n'en est pas un.

Le deuxième est le besoin de certification. Le logiciel utilisé sur un aéronef doit être développé pour répondre au niveau d'assurance de développement (DAL) approprié pour le niveau de danger associé. Les systèmes critiques pour la sécurité doivent satisfaire au niveau DAL «A». Tout système d'exploitation que vous utilisez doit répondre au même DAL que la fonction qui s'exécute dessus. Ces exigences sont définies dans le RTCA DO-178C. Linux n'a pas été développé selon ce standard. Seules quelques plates-formes de développement OS / logiciels peuvent être certifiées. Green Hills, Wind River et LynxOS sont les quelques systèmes que je connais qui répondent aux exigences.

Il y a aussi une autre contrainte dans le fait que la certification nécessite un contrôle de version très strict. L'avionique existera dans le domaine pendant de nombreuses années et toute modification doit également être certifiée. En général, il n'y a aucune raison valable de mettre à jour le système d'exploitation sur une ancienne unité, et dans de nombreux cas, vous ne pourriez pas sans mettre à niveau le matériel (ce qui est une dépense plus importante que personne ne veut). Donc, lors de la mise à jour d'une ancienne unité, je dois créer le «nouveau» logiciel pour qu'il fonctionne sur la version du système d'exploitation qui existe actuellement dans le produit. Cela pourrait être une plate-forme de 15 ou 20 ans (ou plus). Un système d'exploitation en évolution rapide tel que Linux aurait un impact négatif sur le support produit à long terme.

Cela peut être stupide mais ... Linux a un correctif en temps réel. Qu'est ce que tu penses de ça? Cela rendrait-il votre premier point invalide?
@traducerad, Autant que je sache, le patch / projet RTLinux est destiné à une cible différente, comme le traitement audio ou du calcul haute performance: vous n'obtenez pas un système d'exploitation vraiment temps réel (comme Integrity, par exemple).
La raison pour laquelle Linux ne serait pas utilisé est à cause du fardeau de certification imposé à tout logiciel exécutant des fonctions critiques de sécurité sur un avion certifié de type.Maintenant, tous les logiciels ne doivent pas répondre à DAL A, le logiciel doit atteindre le niveau de criticité le plus élevé pour la fonction. qu'il effectue.
De plus, Linux serait une exagération brutale pour ce type de systèmes. Chaque composant n'exécute qu'une fonction assez étroitement définie, de sorte que le système d'exploitation peut être beaucoup plus simple (ce qui facilite également la certification).
D'un autre côté, Linux pourrait fonctionner sur d'autres systèmes de l'avion. Il est utilisé dans certains systèmes de divertissement de vol et pourrait éventuellement être utilisé dans le «sac de vol électronique» intégré - même si je ne sais pas si c'est réellement le cas.
Connexes: [Le planificateur Linux: une décennie de cœurs gaspillés] (http://www.ece.ubc.ca/~sasha/papers/eurosys16-final29.pdf) et [Latence du planificateur Linux] (http: // www. eetimes.com/document.asp?doc_id=1200916) (pour un cœur unique).
@JanHudec Linux pourrait être utilisé dans une classe 1 ou classe 2 [EFB] (https://en.wikipedia.org/wiki/Electronic_flight_bag) mais il est plus probable que ce soit un iPad ou un ordinateur portable fonctionnant sous Windows ou MacOS. C'est une question de coût et vous ne voyez tout simplement pas beaucoup d'ordinateurs portables Linux (n'oubliez pas la formation des équipages.) Je ne connais aucune compagnie aérienne utilisant des EFB de classe 3 car ils sont des équipements installés et soumis à des exigences de certification. Pourquoi ajouter toutes ces dépenses et ces maux de tête quand une tablette ou un ordinateur portable peut être utilisé?
@Gerry, Je vois cependant beaucoup de tablettes Linux (parce qu'Android * est Linux * - mais pas un * GNU / Linux *).
Les compagnies aériennes @Gerry, n'installeraient pas d'EFB de classe 3 dans les avions qui n'en ont pas du constructeur, contrairement aux AFAICT A380, A350 et B787.
Vous dites "Wind River et LynxOS", mais d'après ce que je comprends, Wind River est un fournisseur qui fabrique LynxOS. Ce ne sont pas deux systèmes d'exploitation distincts.
Wind River fabrique VxWorks.
@MarcoSanfilippo qu'entendez-vous par "vrai temps réel ... (comme l'Integtrity)"? Le temps réel est le temps réel, il n'y a aucun moyen de contourner cela
@traducerad Je voulais dire quelque chose comme _hard_ temps réel vs _soft_ temps réel. Si un système exécute, par exemple, une tâche de traitement audio en temps réel, il peut ** en toute sécurité ** sauter quelques échantillons. Si un système gère les actionneurs hydrauliques d'un stabilyzer, il ** ne peut ** ignorer quelques commandes d'entrée. :-)
Cody P
2017-04-09 03:36:18 UTC
view on stackexchange narkive permalink

La réponse courte est qu'aucun système avionique critique pour la sécurité que je connaisse n'utilise Linux, et les systèmes les plus critiques n'utilisent souvent pas du tout un système d'exploitation commercial. Cependant, Linux est utilisé dans d'autres applications critiques pour la sécurité comme le Space X Falcon 9 et les applications médicales. Une explication plus détaillée est difficile à faire sans entrer dans trop de profondeur, car la question est un peu comme demander "les cellules modernes sont-elles fabriquées avec des nanomatériaux?", Où une explication détaillée devrait couvrir les avantages et les inconvénients du matériau, des lieux là où son utilisation a le plus et le moins de sens, les différences entre les fabricants et un aperçu de ce qui est utilisé à la place, etc. J'essaierai de couvrir tous ces points succinctement avec des liens vers de plus amples informations.

D'après ce rapport de la FAA de 2001, certains des principaux systèmes d'exploitation pour l'avionique certifiée étaient VRTX, LynxOS, PSOS, VxWorks et l'OSE d'Enea, bien que l'avionique non critique utilise parfois d'autres systèmes comme Windows NT. (Oui, LynxOS est basé sur Unix et Linux est considéré comme "semblable à Unix", mais il existe de nombreuses différences entre les deux, tout comme la façon dont un Linux n'est pas similaire au Mac OS X basé sur BSD). Cependant, les systèmes les plus critiques n'utilisent pas du tout un système d'exploitation commercial. Ils notent que "Avec les preuves disponibles aujourd'hui, en général, on peut affirmer que les produits COTS ne répondent généralement pas aux exigences du logiciel de criticité de niveau A." En termes simples, cela signifie que la plupart des avions développés avec des logiciels tiers, de VxWorks à Linux, n'ont pas été suffisamment testés et analysés pour être intégrés à quelque chose de critique comme un système d'atterrissage, une unité TCAS ou une unité d'affichage critique. Cela a probablement changé au cours des 10 ans et plus depuis la rédaction du rapport. Voici un article plus récent sur l'utilisation du système d'exploitation en temps réel dans l'avionique.

Que signifient RTOS et COTS?

Un concept important ici est un système d'exploitation en temps réel, ou RTOS. Un RTOS en un mot fournit des garanties que le logiciel ne manquera pas de temps de calcul programmé, les messages entre les parties du logiciel sont transmis dans un court laps de temps, la mémoire ne sera pas épuisée et d'autres tâches importantes sont garanties au lieu de fonctionner. bien dans des conditions normales puis se brisant dans des conditions inhabituelles. Les systèmes d'exploitation normaux ne peuvent pas offrir de telles garanties. Ces garanties, ou des substituts acceptables, sont nécessaires pour la certification de la plupart des avions.

Un autre concept important est la différence entre les systèmes internes et commerciaux (COTS). Les systèmes commerciaux prêts à l'emploi sont accessibles au public et ne sont pas beaucoup personnalisés pour chaque fabricant. Cet article fournit un bon résumé des avantages et des inconvénients des systèmes d'exploitation commerciaux et internes. De nombreuses avionsiques de haute criticité ont encore le logiciel de base développé en interne en raison des avantages impliqués.

Linux répond-il aux exigences de certification?

Oui, Linux n'est pas "certifié FAA" mais en réalité aucun RTOS n'est "certifié FAA" ou "rencontre DO-178C". DO-178C fournit des objectifs que les ingénieurs de systèmes avioniques doivent remplir afin de certifier l'ensemble de leur logiciel avionique (les objectifs couvrent entre autres les audits, les tests, l'analyse de sécurité et la rédaction des exigences). Ainsi, le mieux que le fournisseur de système d'exploitation puisse faire est de fournir un logiciel «DO-178C ready» ou de suivre les directives DO-178C. Notez que DO-178C reconnaît différents niveaux de sécurité, de sorte que ce qui peut être certifié sous DO-178C pour un système de maintenance peut ne pas l'être selon DO-178C pour une unité d'affichage critique. Le problème avec Linux n'est pas que Linux n'est pas "certifié sous DO-178C", c'est qu'il est difficile à certifier en raison des défis mentionnés ci-dessous. Il est possible de certifier un système sous Linux, mais cela pourrait être extrêmement difficile en raison des analyses supplémentaires, des mesures de sécurité et de la documentation qui seraient nécessaires, en particulier pour l'avionique la plus critique. Certains de ces défis et méthodes alternatives de conformité sont décrits dans ce rapport de la FAA.

Avantages et inconvénients de Linux

Il y a des avantages à utiliser Linux, qui sont en partie partagés avec d'autres systèmes commerciaux. Davantage d'employés auront déjà une expertise avec Linux, et le système d'exploitation a été conçu avec plus d'expertise et de temps que la plupart des organisations n'en ont. Les systèmes commerciaux ont également un prix de vignette bien inférieur à celui des logiciels internes. Les systèmes commerciaux sont également plus adaptables et permettent des modifications du matériel et de la place pour une croissance future sans revenir à la planche à dessin. Les outils pour travailler avec le logiciel sont plus développés, et ils peuvent également avoir un historique de service plus long qui donne confiance dans le logiciel.

Voici quelques-uns des problèmes auxquels Linux est confronté dans un système avionique lorsqu'il est en concurrence avec un RTOS , de ce rapport FAA:

  • partitionnement: si deux programmes sont censés fonctionner indépendamment, il doit y avoir des preuves qu'un programme ne peut pas interférer avec un autre via la structure de la mémoire partagée, les caches, le support de la carte et le micrologiciel, les erreurs, les interruptions, etc.

  • Temps d'exécution dans le pire des cas: dans l'informatique de bureau, c'est normal si j'enlève mon PC avec trop de requêtes ou des conditions inhabituelles à la fois et que le système ralentit ou saute certaines étapes du programme. En avionique, cela n'est pas acceptable pour des raisons évidentes. Le fournisseur devra vérifier cela soit par des modèles de CPU, de mémoire, etc., soit par des tests de laboratoire rigoureux et une analyse temporelle. Les deux sont d'autant plus difficiles que votre matériel et vos logiciels sont complexes.

  • Couverture MCDC: les tests sur l'avionique la plus critique (niveau A) nécessitent d'exécuter suffisamment de lignes de code et de conditions de décision pour atteindre le MCDC norme de couverture de code, qui se situe entre «exécuter chaque ligne de code» et des tests exhaustifs de chaque combinaison de conditions. Certains systèmes d'exploitation comme Linux peuvent être extrêmement difficiles à tester de manière suffisamment approfondie pour respecter cette norme.
  • documentation: une analyse rigoureuse et des tests de résistance nécessitent beaucoup de documentation sur le fonctionnement interne du système d'exploitation
  • considérations de sécurité: Linux de par sa conception a plus de problèmes de sécurité qu'une application interne allégée. Ces problèmes de sécurité deviennent de plus en plus importants, en particulier dans le code militaire
  • mort et inaccessible: désactiver soigneusement les nombreuses fonctions inutilisées de Linux et garantir qu'ils ne peuvent pas interférer dans votre logiciel est généralement nécessaire pour la certification

Autres industries critiques pour la sécurité

Qu'en est-il des industries similaires critiques pour la sécurité? Le Space X Falcon utilise Linux dans certains de ses ordinateurs de vol ( sources). Sur la base de cet entretien, Space X semble donner la priorité à la croissance future, à la disponibilité, aux temps de cycle courts et à l'expertise par rapport à la simplicité et à la robustesse du développement interne dans ce domaine. Notez que les ordinateurs de contrôle de vol du Space X Falcon ne sont pas directement analogues à un LRU dans l'avionique moderne typique, donc un travail supplémentaire ou une architecture inhabituelle serait probablement nécessaire pour que Linux fonctionne pour les applications avioniques typiques.

Linux est également utilisé dans de nombreuses applications médicales critiques pour la sécurité, mais non sans problèmes similaires à ceux rencontrés dans l'aviation. Je vous recommande de lire "Choisir Linux pour les dispositifs médicaux" de Wind River, ou cet article sur les inconvénients de Linux dans les applications médicales critiques pour la sécurité.

Je suppose que vous parlez de l'avionique principale comme le guidage de vol, le pilote automatique, le fly-by-wire ou les écrans. D'autres systèmes d'avion pourraient être considérés comme critiques pour la sécurité, mais ne sont pas des exemples typiques de dispositifs critiques pour la sécurité, comme les sacs de vol électroniques certifiés, les solutions de connectivité et les logiciels de maintenance. Celles-ci sont parfois mieux adaptées à une application Linux en raison de leur complexité élevée et de considérations de sécurité moins rigoureuses.

Notez que je ne suis pas un expert dans ce domaine et mes conseils ne remplace pas les conseils d'un spécialiste de la certification.

Réponse très bonne et approfondie. Je soulignerais également que la majorité de l'avionique n'utilise pas du tout de RTOS, préférant s'exécuter directement sur le processeur.
Je dois contester votre déclaration selon laquelle "LynxOS est basé sur Unix, tout comme Linux". Linux est «basé sur Unix» à peu près de la même manière que Windows 8 est «basé sur CP / M», en ce sens qu'ils partagent une petite histoire commune, mais sont des implémentations complètement séparées. (Que les systèmes Unix proprement dits aient pris en charge certains des logiciels utilisateur généralement vus sur les systèmes Linux, en particulier GNU, est une autre affaire.) Il serait préférable de dire que Linux implémente le standard POSIX, auquel la plupart des Unixes (je ne sais pas à propos de LynxOS) * également * conforme; cependant, cela ne rend pas Linux "basé sur Unix".
@MichaelKjörling J'ai précisé que Linux est "comme Unix" et qu'il existe de nombreuses différences entre les deux. Mon point principal ici est de préciser que LynxOS n'est pas simplement une autre version de Linux. Je ne pense pas que nous devrions entrer dans les nuances telles que la façon dont les distributions Linux sont uniquement compatibles POSIX et non certifiées pour POSIX.
h22
2018-03-12 00:48:14 UTC
view on stackexchange narkive permalink

Il semble que les pilotes utilisent maintenant au moins parfois des tablettes pour les listes de contrôle.

Si ces tablettes sont des appareils Android ( la majorité d'entre elles), elles exécutent le noyau Linux. Android utilise moins de pile Linux standard mais il utilise toujours le noyau Linux. Les listes de contrôle sont essentielles à la sécurité, je pense. Les tablettes Apple et Windows utilisent des noyaux différents, pas Linux.

Il existe de nombreuses applications de liste de contrôle pour les appareils Android. Je suppose que quelqu'un les utilise.

Le noyau est le noyau du système d'exploitation d'un ordinateur qui garde un contrôle complet sur toutes les autres parties. Comme le câblage d'un avion de ligne.

Ainsi que les programmes de cartographie.
Les listes de contrôle sont importantes, mais elles ne sont pas essentielles à la sécurité de la même manière qu'un système FBW, par exemple, elles ne seraient donc pas soumises au même niveau d'assurance de développement pour les équipements critiques pour la sécurité que les autres avions.
Koyovis
2017-08-30 13:37:38 UTC
view on stackexchange narkive permalink

Linux est-il utilisé pour des applications critiques pour la sécurité? Non Oui. Peut-être. Continuez avec moi ...

enter image description here

L'USS Umwalt utilise Linux pour ses nombreuses exigences en matière de données, et LynxOS pour les applications embarquées en temps réel. , décrit dans cet article.

Ordinateur portable standard Linux est un espace utilisateur Système d'exploitation: il attend qu'un utilisateur clique sur une souris, frappe une touche ou génère une sortie, puis prend des mesures. Il se peut que de nombreux programmes soient ouverts ou non. L'entrée utilisateur est un événement statistique en ce qui concerne l'O / S: elle peut ou non se produire dans la minute suivante.

Comparez cela avec une boucle de contrôle numérique. Il fonctionne sur un processeur et utilise de la mémoire, juste du matériel informatique standard. Mais ils diffèrent des logiciels de bureau en ce qu'ils:

  • sont intégrés;
  • ont un ensemble de tâches prédéfinies;
  • Avoir des contraintes de temps strictes;
  • Exécuter dans une boucle sans fin. À la fin du programme, il revient au début et recommence la routine, ce serait une trame d'itération.

Le logiciel a besoin de lire les entrées et de générer des sorties, à chaque itération, et une trame d'itération s'exécute pendant une durée fixe. Un système en temps réel dur est un système où les réponses chronométrées doivent être déterministes: tout ce qu'il fait doit être terminé en une seule itération logicielle. Si la boucle de contrôle fonctionne à 100 Hz, un cycle d'itération prend 10 ms et le matériel doit être suffisamment rapide pour garantir que l'ensemble du processus peut se terminer dans le temps, à chaque fois.

Ces boucles de contrôle sont généralement pas énorme, et n'ont généralement pas un nombre de fenêtres ouvertes entre 1 et 100. Des programmes petits et rapides et un nombre limité de fenêtres, c'est ainsi que les O / Ses pour les programmes critiques pour la sécurité et les boucles en temps réel sont faits. Ce qui est génial, autrefois, il n'y avait pas de O / S pour cela et le code devait être écrit en assembleur ou pire. Les appels d'E / S étaient spécifiques au matériel et donc non transférables d'un chipset à un autre.

C'est ici qu'interviennent les O / Ses temps réel tels que VxWorks, LynxOS et quelques autres. Ce sont des O / Ses basés sur Unix et compatibles POSIX. La couche matérielle est rendue invisible pour le programmeur, qui dispose d'un ensemble d'outils de développement pour utiliser des langages informatiques de haut niveau avec des appels d'E / S standard et des routines de synchronisation. Ils sont évolutifs: vous pouvez démarrer avec un O / S qui démarre juste puis exécute immédiatement votre binaire compilé de manière croisée à un taux défini à l'interface du minuteur. Ou vous pouvez reconfigurer le noyau et inclure quelques interruptions utilisateur qui regardent les claviers ou les données RS-232 entrant, le tout jusqu'au programmeur, qui dispose également d'un kit d'outils complet pour la synchronisation et les E / S.

VxWorks peut être coûteux (mais il est bien pris en charge), et il existe maintenant des alternatives open source basées sur le noyau Linux telles que Xenomai, RTLinux, et Xilinx. Certains d'entre eux tentent d'avoir tous les services disponibles pour les applications de bureau et n'ont qu'un minuteur d'interruption qui fait de son mieux pour que la tâche continue de fonctionner uniformément, même si un traitement de texte lance une vérification orthographique. D'autres sont évolutifs, tout comme VxWorks, mais sont open source et le support peut être un défi. Pour autant que je sache, ils ne sont pas encore allés sur Mars, VxWorks l'a fait.

Peut-il être utilisé pour une avionique critique pour la sécurité: oui, si évolutif en temps réel dur, et testé selon les normes applicables pour toute l'avionique . Pour l'instant, il n'y a encore rien à bord de l'avion, mais ce n'est peut-être qu'une question de temps.

* "Le matériel doit être suffisamment rapide pour garantir que le processus peut se terminer en un cycle." * Je pense que vous mélangez des cycles d'horloge et des tranches de temps. Des instructions uniques, telles que des extractions et des sauts, peuvent prendre plusieurs cycles d'horloge pour se terminer, juste un changement de contexte dans et hors d'une interruption représente plus d'un cycle d'horloge. Un "processus" ne peut pas se terminer physiquement en un seul cycle d'horloge.
Oui, si nous visons l'exactitude technique, @RonBeyer est correct. Pendant que vous modifiez, vous pouvez également changer «système d'exploitation de l'espace utilisateur» en «système d'exploitation * orienté utilisateur *». Dans le développement de logiciels de bas niveau, comme celui auquel vous seriez impliqué si vous travaillez sur un système d'exploitation, «espace utilisateur» signifie généralement un code non privilégié s'exécutant sous la supervision du système d'exploitation; l'inverse est souvent appelé «espace noyau» qui, comme vous l'avez peut-être deviné, est la façon dont le noyau du système d'exploitation s'exécute, sans supervision. Notez que cela est différent des privilèges de compte administrateur / utilisateur régulier.
@RonBeyer En effet, pas l'horloge du processeur bien sûr.
@MichaelKjörling Il n'y a pas de code sans privilège dans un système d'exploitation en temps réel dur.
C'est *** PAS *** le "USS Umwalt", c'est le *** "USS ZUMWALT" ***; notez l'orthographe de mon nom de famille. Et oui, je suis lié à l'amiral Elmo Zumwalt, maintenant décédé, dont ce navire et cette classe de navires portent le nom.
À votre avis, LynxOS est-il meilleur ou pire par rapport à des RTOS plus répandus comme VXWorks et QNX? J'ai quelques personnes autour de moi qui travaillent avec LynxOS pour gagner leur vie et je déteste absolument ça. En plus de cela, apparemment, le support client pour LynxOS est un cauchemar absolu.
tj1000
2017-08-31 20:28:13 UTC
view on stackexchange narkive permalink

Il n'est vraiment pas nécessaire d'avoir un système d'exploitation commercial sur l'avionique.

Les logiciels d'avionique ont tendance à être conçus pour du matériel spécifique - il n'y a pas de plate-forme matérielle générique créée sur un marché de masse par de nombreux vendeurs.

L'avionique n'interagit pas avec beaucoup d'autres systèmes ou matériels.

L'avionique fonctionne généralement comme une seule application, donc pas besoin de partage de temps ou dans le cas de RTOS un programme de cycle d'horloge garanti.

Ce sont les principaux objectifs d'un système d'exploitation par opposition à un simple chargeur de démarrage qui charge et démarre une application - le système d'exploitation facilite plusieurs plates-formes matérielles, plusieurs pilotes et utilitaires pour le stockage sur disque / flash, le partage de temps avec d'autres applications et des périphériques tels que la mise en réseau. Ce que l'avionique doit faire: interagir avec l'écran, les capteurs externes et les boutons de commande - pas besoin d'impliquer un système d'exploitation

Un OS embarqué est bien d'avoir pour un appareil dédié, surtout si l'application embarquée va publier des services Web pour un accès et un contrôle externes. Cependant, son chargement est plus lent (peut être un facteur pour l'avionique) et consomme plus de ressources qu'une application dédiée qui est déclenchée par un chargeur de démarrage.

En raison du cycle de certification étendu, l'avionique n'a pas tendance à fonctionner avec les derniers et les meilleurs, et n'a pas non plus un cycle de rafraîchissement court sur le matériel.

Il n'y a pas de bus de données fonctionnant sur un avion, Arimc ou Milbus, avec plusieurs instruments fonctionnant à des taux de mise à jour différents, qui doivent recevoir et sortir leurs données à des taux déterminés? Votre imstrument fonctionne entièrement seul et l'application n'est jamais portée sur un nouveau matériel?


Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
Loading...