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

Assembleur Discussion :

Trouver le % d'utilisation du CPU


Sujet :

Assembleur

  1. #1
    Membre actif

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    339
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 339
    Points : 279
    Points
    279
    Par défaut Trouver le % d'utilisation du CPU
    J'aurais voulu savoir comment déterminer l'activité du CPU, comme par exemple trouver le % d'utilisation du CPU utilisé.

    Merci d'avance

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 80
    Points : 69
    Points
    69
    Par défaut
    si tu trouves qq chose, préviens moi svp, je recherche la même chose, j'avais déjà posté : http://www.developpez.net/forums/viewtopic.php?t=65039

    a+

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 80
    Points : 69
    Points
    69
    Par défaut Re: trouver le % d'utilisation du CPU
    Citation Envoyé par le mage tophinus
    J'aurais voulu savoir comment déterminer l'activité du CPU, comme par exemple trouver le % d'utilisation du CPU utilisé.

    Merci d'avance
    le seul truc qu j'avais trouvé sur le web c'était un truc assez costausd qui utilise le multitache et le timer...

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Points : 696
    Points
    696
    Par défaut
    Le % de cpu, c'est pour les système multithreads non ? Ca corresponds au temps pendant lequel tous les threads sont endormis. Donc il faut une fonction de l'os. c'est ca que vous cherchez ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 80
    Points : 69
    Points
    69
    Par défaut
    Citation Envoyé par Blustuff
    Le % de cpu, c'est pour les système multithreads non ? Ca corresponds au temps pendant lequel tous les threads sont endormis. Donc il faut une fonction de l'os. c'est ca que vous cherchez ?

    oauis je pense que ce doit se rapprocher de ca , tu peut nous en dire + stp ?

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Points : 696
    Points
    696
    Par défaut
    lol, non, je trouve rien dans l'API Win32, rien concernant les processus inactif, et rien pour énumerer les processes... C'est quopi la solution avec le timer ? parce que ca je vois pas comment l'utiliser...

  7. #7
    Membre expérimenté

    Inscrit en
    Mai 2002
    Messages
    720
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 720
    Points : 1 594
    Points
    1 594
    Par défaut Re: trouver le % d'utilisation du CPU
    Citation Envoyé par dway
    le seul truc qu j'avais trouvé sur le web c'était un truc assez costausd qui utilise le multitache et le timer...
    Je pense que le %age d'utilisation du processeur ne peut logiquement se faire qu'en multitache, sinon tout le temps machine du microprocesseur va dans le programme de calcul du %age d'utilisation du CPU

    En bref : si monotâche => 100% du temps cpu dans ladite tâche.

  8. #8
    Membre actif

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    339
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 339
    Points : 279
    Points
    279
    Par défaut
    Merci pour toutes ces infos. En clair, c'est pas simple de calculer le % du CPU utiliser.

    Ce qui me faudrait en fait c'est un 'algorithme' (ou une méthode) qui me permette de mesurer le % pour un OS que j'aurais créé.

    Je suis d'accord avec Smortex, je pense aussi que ce n'est faisable qu'en multitâche.

    Merci encore pour vous attardez sur ce problème.

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Points : 696
    Points
    696
    Par défaut
    Tu dois stocker quelque part la liste des processus. Tu commence par donner le controle a un processus. Dès qu'il a finit, il te dit, "le thread peut dormir, jusqu'à ce qu'il recoive un message, ou que tant de ms se sont écoulés. A ce moment là, tu passe le controle à un processus actif. Quand il n'y a plus de processus actifs, tu dit : "top chrono" et dès qu'un evenement attendu survient, tu arrète le chronomètre.
    Là tu peux choisir de comter le pourcentage chaque seconde par exemple :

    Pourcentage = 100000 / Temps Inactif en milisecondes

    Lorsque une tache reste trop longtemps active, tu dois lu repprendre le controle : tu utilises l'irq du timer pour ca. Une fois que tu a repris le controle tu le passes aux autres procesus qui voudraient en profiter. Sous windows xp, il me semble avoir mesuré entre 18 et 20 ms ou on poyuvait grader le controle.

  10. #10
    Membre actif

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    339
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 339
    Points : 279
    Points
    279
    Par défaut
    ok d'accord pour la méthode. T'aurais pas une adresse ou deux sur le 'timer' et son IRQ que je me casse un peu la tête la-dessus et que j'arrête de poser mes questions débiles sur le forum ?

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Points : 696
    Points
    696
    Par défaut
    c'est pas des questions débiles lol. Euh, moi non, j'ai pas de doc. Enfin pas de docs concernant le PIC. Mais sinon si l'irq est déja programmée, au plus basique de tca donne ca en mode réel :

    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
     
      xor ax, ax
      mov gs, ax
      cli
      mov ax, cs
      mov gs:[08h*4], ax
      mov ax, offset TimerProc
      mov gs:[08h*4 + 2], ax
      sti
     
      ...
     
    TimerProc:
     
      push ax           ;Sauvegarde des registres obligtoire pour les irqs
     
      mov al, 20h     ;Dire au pic, que c'est fini, comme ca il pourra déclancher l'irq une autre fois
      out 20h, al
     
      pop ax
      iret

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Points : 696
    Points
    696
    Par défaut
    en pmode ca doit etre pareil sauf que c'est dans la IDT qu'on ecrit et pas à 0:08h. Pour l'adresse :

    http://www.chez.com/pageasm/tutd/timer/index.htm

  13. #13
    Membre actif

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    339
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 339
    Points : 279
    Points
    279
    Par défaut
    Ok, Je vais faire travailler mes neurones maintenant. Merci encore pour les zinfos

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 80
    Points : 69
    Points
    69
    Par défaut
    Citation Envoyé par le mage tophinus
    Ok, Je vais faire travailler mes neurones maintenant. Merci encore pour les zinfos
    tiens nous au courant stp ! merci d'avance...

  15. #15
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Points : 696
    Points
    696
    Par défaut
    pourquoi dway il te manque quelque chose pour mediter toi même sur le sujet ?

  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 80
    Points : 69
    Points
    69
    Par défaut
    Citation Envoyé par Blustuff
    pourquoi dway il te manque quelque chose pour mediter toi même sur le sujet ?

    bah j'suis pas encore assez baleze en multitache pour cela...

  17. #17
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Points : 696
    Points
    696
    Par défaut
    Si c'est pour creer un os dway, c'est a toi de choisir comment fonctionera le multitaches. Le % d'utilisation de la mémoire c'est un peu vague. Si c'est en espace, c'est très facile, puisque c'est l'os qui decide quel programme a le droit d'utiliser quelle zone de la mémoire.

  18. #18
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 80
    Points : 69
    Points
    69
    Par défaut
    Citation Envoyé par Blustuff
    Si c'est pour creer un os dway, c'est a toi de choisir comment fonctionera le multitaches. Le % d'utilisation de la mémoire c'est un peu vague. Si c'est en espace, c'est très facile, puisque c'est l'os qui decide quel programme a le droit d'utiliser quelle zone de la mémoire.
    oauis en fait pour le % d'uilisation de la mem j'ai créé un tableau divisé en blosk de X octets alloué à tel prog donc je sais quel % du tableau (et donc de la ram) est occupé ou non...par contre pour le cpu c'est + compliqué car il faut gérer le multitache, les tss etc pour switcher entre les différents prog et j'en suis pas encore la...

  19. #19
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Points : 696
    Points
    696
    Par défaut
    Comme il a été dit precedement, le % du cpu, c'est juste une notion abstraite pour le multitache. Le processeur que ce soit en multitache ou autre est toujours occupé à 100 %. Le % d'utilisation, est le % pendant lequel il y a une tache d'occupée, puisque chaque tache a la possibilité de rendre le controle avant la fin du temps qu'il lui est donné. Si tu n'as encore rien fait en multitache, tu n'as pas a t'occuper du % du cpu

  20. #20
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 92
    Points : 96
    Points
    96
    Par défaut
    J'en reviens au %age...

    Vous pensez pas que ça doit se faire dans un VxD? parce que le module qui dirige tout son petit monde, c'est le VMM (Virtual Machine Manager) qui a pour rôle de dire toi tu prends la main pendant x ms puis toi, c'est ton tour.....

    D'autant plus qu'il utilise les deux métodes suivantes pour gérer le temps de chacun :

    Le planificateur primaire
    Le 'time-slicer' (le temps de latence) ou Planificateur secondaraire.

    C'est peut-être une piste... vous pouvez obtenir plus de détails sur ces sujets grâce aux documents Walter Oney's Systems Programming for Windows 95 ainsi que la documentation Windows 95 DDK.

Discussions similaires

  1. Eclipse CDT Completion: Utilisation 100% CPU
    Par XeN-Lo dans le forum Eclipse C & C++
    Réponses: 6
    Dernier message: 04/03/2008, 18h00
  2. Problème d'utilisation du CPU
    Par michaeldu18 dans le forum SDL
    Réponses: 4
    Dernier message: 09/06/2007, 12h02
  3. Probleme utilisation du cpu
    Par jkalzsmu dans le forum SDL
    Réponses: 29
    Dernier message: 29/01/2007, 00h11
  4. [Eclipse 3.1 et WTP 0.7M5] Utilisation du CPU à 100%
    Par stanislas dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 10/07/2005, 00h21
  5. [Windows 2003 Server] Problème d'utilisation du CPU
    Par Quentin dans le forum Windows Serveur
    Réponses: 3
    Dernier message: 11/04/2005, 12h26

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