IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration système Discussion :

process switch et emulateur RS232


Sujet :

Administration système

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 2
    Par défaut process switch et emulateur RS232
    Bonjour

    J'ai une question de béotien, je pense avoir la réponse, mais je préfère avoir un avis en plus.
    Je travaille sur de petite cible linux embarquées (type µClinux pour Coldfire ou Blackfin), et j'ai un très fort besoin de réactivité du composant.
    Donc, je me suis fait un mini scheduler perso, avec tous mes process réglés, qui doivent s'activer sur une base de 25ms (25 pour le plus rapide, puis 100, 250 et 1 seconde).
    Là où sa se corse, c'est qu'un usleep de 5000 (donc 5ms) dure en fait 20ms... au moins. Donc, c'est pas cool, car je souhaiterais faire tourner un bout de code dans le kernel toutes les 5ms (la récupération d'entrées CAN), mais la limite de la bestiole est de 20ms. Donc, j'ai prospecté, et il semble que le problème vienne du fait que le switch des process se fait à une fréquence de 250 hz (c'est dans le réglage du kernel). Bon, indépendamment du fait que les temps de switch ne coincident pas, il semblerait qu'en passant cette valeur à 1000hz (possible dans le noyau 2.6), on gagne en fréquence de switch des process.
    J'aurais voulu avoir l'avis de personne pour qui un kernel n'est pas juste une bête étrange tapie au fond d'une boite en silicon...
    Pour info, j'ai tenté de faire la même chose en utilisant les interruptions software sur le timer du Coldfire. Mêmes effets, l'interruption tombe bien au bout de 5ms, mais le réveil du process se fait au bout de 20ms.

    Voilà, merci pour votre aide.

    PS : question subsidiaire, y a t-il des logiciels type termite pour émuler un port série sous linux? j'ai essayé minicom, mais question convivialité... de plus, comme je bosse avec un portable, j'ai un émulateur série USB avec la petit module pl2303, et j'ai l'impression que minicom ne marche pas avec.

  2. #2
    Membre émérite
    Avatar de matrix788
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    740
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 740
    Billets dans le blog
    2
    Par défaut
    salut,

    j'ai trouvé çà concernant minicom et son bug avec le rs232 :
    http://alioth.debian.org/tracker/?fu...group_id=30018

Discussions similaires

  1. lecture/ecriture des broches RTS/CTS du port RS232
    Par .:: sly51 ::. dans le forum C
    Réponses: 3
    Dernier message: 24/10/2006, 16h28
  2. Réponses: 4
    Dernier message: 01/07/2003, 16h47
  3. [DOM] Ajout d'une instrution de processing
    Par corwin_d_ambre dans le forum Format d'échange (XML, JSON...)
    Réponses: 9
    Dernier message: 06/05/2003, 12h51
  4. Réponses: 6
    Dernier message: 26/01/2003, 14h45
  5. [TP] port série rs232
    Par cyb33 dans le forum Turbo Pascal
    Réponses: 44
    Dernier message: 13/01/2003, 16h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo