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

Linux Discussion :

Question sur ordonnancement


Sujet :

Linux

  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    140
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 140
    Points : 35
    Points
    35
    Par défaut Question sur ordonnancement
    Bonjour à tous ,
    Je suis étudiant en analyste-programmeur . Je dois répondre à une question qui est "Ecrire un programme faisant beaucoup de calcul . Modifiez la politique en RR . Que constatez-vous par rapport quand à la durée de ce process et du temps de réponse des autres process de ce système ? "

    Comment faire pour mesurer la durée du process et le temps de réponse des autres process ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    #include <unistd.h>
    #include <stdio.h>
    #include <fcntl.h>
    #include <stdlib.h>
    #include <sched.h>
    main(){
            int sched = sched=SCHED_RR; // ou SCHED_FIFO ou SCHED_OTHER
            struct sched_param param ;
     
            param.sched_priority=sched_get_priority_max(sched);
     
            if (sched_setscheduler(getpid(), sched, &param)==-1)
            {
                    fprintf(stderr, "Erreur!\n");
                    exit(1);
            }
     
            int i, j, k;
            for (i=0; i<1000000; ++i) for (j=0; j<1000; ++j) k=i*j;
            exit(0);
    }
    Merci .

  2. #2
    Membre éclairé Avatar de valefor
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    711
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 711
    Points : 790
    Points
    790
    Par défaut
    Salut :

    1 - pour le temps d'exécution : man clock_gettime. Tu fais un gettime avant de rentrer dans ton traitement (ici ta boucle) et un autre après. tu affiche les deux ou la différence à la fin du programme.

    2 - pour voir la réactivité des autres tâches du système, si ton process tourne assez longtemps ce sera évident : si il est seul à être passé en temps réel, tu ne peux plus rien faire du tout de ton pc à part attendre que ton programme finisse (en espérant qu'il finisse un jour). Avec SCHED_OTHER, tu as la main. Après, quantitativement je ne vois pas trop comment tu peux faire pour le voir, si ce n'est que d'utiliser des outils tels que linux trace toolkit, ou autres.

Discussions similaires

  1. [debutant] Questions sur 1 futur projet
    Par cyrull22 dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 28/04/2003, 21h49
  2. Quelques questions sur le TWebBrowser...
    Par CorO dans le forum Web & réseau
    Réponses: 3
    Dernier message: 17/01/2003, 21h23
  3. Question sur les handles et les couleurs...
    Par MrDuChnok dans le forum C++Builder
    Réponses: 7
    Dernier message: 29/10/2002, 08h45
  4. Réponses: 2
    Dernier message: 11/08/2002, 21h27
  5. question sur les message box !
    Par krown dans le forum Langage
    Réponses: 7
    Dernier message: 02/08/2002, 16h11

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