Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

Quel OS pour du temps réel



  1. #1
    vilveq

    Quel OS pour du temps réel


    ------

    Bonjour,

    J'ai une application à refaire. Celle-ci fonctionnait sous OpenVMS.
    Il utilise cet OS parce que l'application doit réagir très vite à des événements. Il s'agit de contrôle sur une ligne de galvanisation.

    Ils ont essayé de faire des tests sous windows avec C#. Mais même si généralement le système répond bien, dans les 15ms, de temps en temps l'application semble 'lagger'. Window n'est peut être pas fait pour le monde de la production industriel.

    Je me demandais s'il ne serait judicieux, de remplacer OpenVMS par du linux avec un développement java.

    Qu'en pensez-vous ?

    Merci

    -----

  2. Publicité
  3. 📣 Nouveau projet éditorial de Futura
    🔥🧠 Le Mag Futura est lancé, découvrez notre 1er magazine papier

    Une belle revue de plus de 200 pages et 4 dossiers scientifiques pour tout comprendre à la science qui fera le futur. Nous avons besoin de vous 🙏 pour nous aider à le lancer...

    👉 Je découvre le projet

    Quatre questions à explorer en 2022 :
    → Quels mystères nous cache encore la Lune 🌙 ?
    → Pourra-t-on bientôt tout guérir grâce aux gènes 👩‍⚕️?
    → Comment nourrir le monde sans le détruire 🌍 ?
    → L’intelligence artificielle peut-elle devenir vraiment intelligente 🤖 ?
  4. #2
    lou_ibmix_xi

    Re : Quel OS pour du temps réel

    Salut,

    Déjà, un point de terminologie, "temps réel" ne veut pas dire rapide comme tu sembles le croire, mais bien déterministe, c'est à dire que tu veux être sûr à 100% que ton système réponde à un évènement dans un temps borné, mais qui peut-être long. C'est bien une propriété du système d'exploitation, en particulier de l'ordonnanceur de tâche, et n'a rien à voir avec le langage utilisé.

    Linux tel que tu peux le télécharger n'est pas temps réel, je croins qu'il existe un patch pour le noyau mais, je ne suis pas sûr qu'il transforme linux en temps réel, je crois qu'il se limite à limiter les cas de latences, ca améliore les choses mais si tu veux du 100%, ce n'est pas encore celà.
    Il existe des extensions temps-réelles libres à linux (RTLinux et l'autre je ne m'en rappelle pas, mais goolge + "real time" + linux devrait y répondre), mais elles sont assez difficile à prendre en main, et ne tourne que sur une architecture x86. Sinon tu as des systèmes propriétaires (VXWorks, LynxOS...) qui coûtent très chère, mais c'est fait pour envoyer des fusées...

    Tout dépends donc de l'investissement pécunier et / ou intelectuel que ta société est prête à investir...

    Un petit commentaire personnel: je fais des systèmes embarqués dans le domaine de l'acoustique depuis quelques années maintenant, mais il est vrai que je n'ai jamais eu besoin de temps-réel dur, mais juste de bonnes performances, et des systèmes robustes aux coupures d'alimentations et autres blagues d'électroniciens.

    J'ai toujours fais mes systèmes à partir de linux + busybox, et toujours été très satisfait par le résultat. En effet, les latences dans un système vont être introduite, entre autre, par l'ensemble des programmes qui tournent sur ton système. Ainsi, en faisant ton système à la main, tu le maîtrises complètement et tu peux limiter ainsi les programmes lancés au strict minimum nécessaire.

    Il existe également deux solutions Microsoft qui sont Windows CE et Windows XP embedded, qui te permettent à priori la même chose... J'ai essayé ce dernier (son prix était accessible, 1500euros environ + 100 euros par license) et je ne suis vraiment pas convaincu: taille du système de 200 Mo, je n'ai pas trouvé le moyen de faire in système en "ramdisk" (ce qui est un gros problème puisque j'utilise une carte compactflash), je n'ai jamais compris comment garder les fonctionnalitées réseaux sans virer Internet Explorer et Outlook Express... Bref pas convaincu du tout.

    Enfin, des langages de "haut niveau" genre JAVA ou C#, dans une application où les perfs sont importantes, je suis encore moins convaincu... C# je ne connais que de nom, mais JAVA, fût un temps où j'ai beaucoup pratiqué, les performances sont... déplorables, et l'utilisation de la RAM est vraiment importante, enfin j'ai été surpris de ne pas pouvoir faire des choses simples comme connaître l'espace disque disponible... Je m'orienterai donc vers le C (beaucoup d'outils gratuits et de très bonne qualité pour rendre ton code robuste), ou l'ADA (qui permet de faire des programmes robustes de part sa nature même)... Allez, à la limite du C++, en utilisant des bibliothèques de haut niveau pour les zones non critiques (Qt, ACE, BOOST...)

    Voilà mon humble avis.

  5. #3
    MaMMoN

    Re : Quel OS pour du temps réel

    Rien à rajouter ^^!

  6. #4
    vilveq

    Re : Quel OS pour du temps réel

    merci beaucoup pour l'information, et la réponse de qualité.

    J'ai aussi été un peu voir RTAI. Je vaisenvoyer quelques personnes en formation.

    encore merci

  7. A voir en vidéo sur Futura
  8. #5
    MarcRemy

    Re : Quel OS pour du temps réel

    Bonjour,

    Même si le message est assez ancien, je me permet d'ajouter quelques precisions concernant Windows et le temps reel.
    Déjà concernant le langage, comme le dit lou_ibmix_xi, le C# est un langage de haut niveau qui est donc trop loin du hardware. Le C/C++ est déjà plus approprié.

    Ensuite au niveau de l'OS, Windows est un GPOS (OS generaliste) qui n'est pas concu à la base pour le temps reel, mais, comme le dit mon predecesseur, il existe pour le domaine de l'embarqué et de l'industrie, les versions "embedded" de Windows (XPembedded et maintenant windows 7 embedded standard) qui permettent de "tailler" sur mesure Windows (en ajoutant au noyau NT uniquement les composants necessaires à son application métier).

    Ces versions embedded combinées avec des extensions temps-réelles standard de type RTX (société intervalzero) nous avaient permis d'avoir des performances vraiment temps réelles (cycle complet à 500 us) tout en étant sur une plateforme Windows (ce qui était un critère important pour nous pour le coté "familier" de Windows pour l'utilisateur final et pour sa compatibilité avec les logiciels et drivers).

    Cordialement,

Discussions similaires

  1. Quel temps fait il pour la lumière ?
    Par invite6754323456711 dans le forum Physique
    Réponses: 29
    Dernier message: 02/02/2008, 15h51
  2. Un effet tunnel atomique observé en temps réel pour la première fois
    Par RSSBot dans le forum Commentez les actus, dossiers et définitions
    Réponses: 7
    Dernier message: 15/09/2007, 21h02
  3. Temps moyenné vs temps réel
    Par lotte-lotte dans le forum Physique
    Réponses: 4
    Dernier message: 26/05/2007, 12h51
  4. Quel antispyware avec protection en temps réel choisir?
    Par poetic_boy972 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 2
    Dernier message: 03/07/2006, 19h48
  5. Temps réel ?????
    Par flyingman dans le forum Logiciel - Software - Open Source
    Réponses: 54
    Dernier message: 08/02/2005, 09h37
Découvrez nos comparatifs produits sur l'informatique et les technologies.