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

Qt Discussion :

[KERNEL] [Signaux] Générer Appel système capturable par Qt


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 35
    Par défaut [KERNEL] [Signaux] Générer Appel système capturable par Qt
    Bonjour,
    j'ai réalisé un petit driver en mode caractère. Celui-ci, en interne, intercepte les interruptions générées par le matériel pour lequel il est programmé. Je souhaiterais pouvoir signaler (émission d'un signal) coté utilisateur que le matériel a généré une interruption. Quelqu'un sait-il comment faire pour intercepter avec Qt des signaux (système ?) non émis par Qt ? Je suis également preneur d'informations sur l'émission de signaux à partir de mon module KERNEL mais je ne suis pas dans la section appropriée pour cette dernière question.

    Merci de votre aide.

  2. #2
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Salut, tu est sur quel os?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 35
    Par défaut
    Oups, désolé, dans la précipitation j'ai oublié d'indiquer que je travaillais sous Linux/Fedora (11).

  4. #4
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    regarde ceci
    http://qt.developpez.com/doc/4.5/qap...x11eventfilter
    Normalement, c'est par cette fonction que qt récupère et gère les évènements provenant de x11.
    Sinon, c'est plus du Qt, y as peut être un système d'abonnement au évènement système sous linux comme sous windows.
    Demande peut être conseil dans ce forum
    http://www.developpez.net/forums/f32...mmation-linux/

  5. #5
    Expert confirmé

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par défaut
    Oui, il faut distinguer 2 choses :
    - comment ton appli user peut recevoir une notification du kernel
    - comment "greffer" ce système au dessus des signaux/slots de Qt

    Normalement, on communique avec un driver avec des IOCTL et des read / write. Une fois que tu sais faire ça depuis une petite appli C à part, tu peux dans ton code Qt créer un thread qui effectue une lecture bloquante en attente de ton driver. Quand il reçoit quelque chose, il émet un signal et retourne en attente bloquante (depuis Qt 4 l'envoie de signaux entre différents thread est possible).

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 35
    Par défaut
    Merci pour vos réponse.

    Mon interface coté Qt est déjà un thread. Finalement, je vais me contenter d'aller vérifier régulièrement si mon driver a capté l'interruption. Je ne vais pas chipoter pour quelques millisecondes. Je marquerai l'évènement en interne par un timestamp.

Discussions similaires

  1. [VB6] Appeler une procedure par son nom.
    Par kenn dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 24/05/2006, 09h29
  2. [UBUNTU] Ajout nouvel appel système ?
    Par [Margot] dans le forum Ubuntu
    Réponses: 5
    Dernier message: 11/05/2006, 14h11
  3. appel système opendir dans thread
    Par madimane dans le forum POSIX
    Réponses: 2
    Dernier message: 14/04/2006, 05h39
  4. Interfacer un logiciel et un système hardware par port série
    Par jean-claude74 dans le forum Langages de programmation
    Réponses: 6
    Dernier message: 13/08/2005, 16h52
  5. Appel de procédure par contenu de variable
    Par lil_jam63 dans le forum Langage
    Réponses: 9
    Dernier message: 13/09/2004, 08h05

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