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

Python Discussion :

Trouver la vitesse du processeur et la ram installe sous lin


Sujet :

Python

  1. #1
    Membre habitué

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

    Informations forums :
    Inscription : Décembre 2004
    Messages : 121
    Points : 127
    Points
    127
    Par défaut Trouver la vitesse du processeur et la ram installe sous lin
    Bonjour,
    je chercherais un moyen ou une piste à explorer pour trouver la memoire vive installée ainsi que la vitesse du CPU sous linux.

    Sous windows, j'ai lutté surtout pour la memoire ^^ mais j'ai finalement reussi. Je le met si ça peut servir, paske je ne lai trouver nullepart deja tout fait; a part un code en perl ^^.

    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
    import sys
    if(sys.platform=='win32'):
                import struct
                import _winreg
    class InfoSystem:
        """Classe trouvant la memoire vive installee ainsi que la vitesse du CPU
        """
        def GetRam(self):
            if(sys.platform=='win32'):
                key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, 'Hardware\\Resourcemap\\system resources\\physical memory', 0, _winreg.KEY_READ)
                (valeur, typevaleur)=_winreg.QueryValueEx(key, '.Translated')
                _winreg.CloseKey(key)
                RAM=struct.unpack('L', valeur[-4:])[0]/1024/1024+16
            return RAM
     
        def GetCPUSpeed(self):
            if(sys.platform=='win32'):
                key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, 'Hardware\\description\\system\\centralprocessor\\0', 0, _winreg.KEY_READ)
                (speed, typevaleur)=_winreg.QueryValueEx(key, '~Mhz')
                _winreg.CloseKey(key)
            return str(speed)
    Merci

  2. #2
    Membre habitué

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

    Informations forums :
    Inscription : Décembre 2004
    Messages : 121
    Points : 127
    Points
    127
    Par défaut
    J'ai reussi grace au module pystatgrab et à sg_get_mem_stats() :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> statgrab.sg_get_mem_stats()
    {'cache': 162615296L, 'total': 395161600L, 'free': 22761472L, 'used':372400128L}
    par contre le statgrab.sg_get_mem_stats():
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> statgrab.sg_get_cpu_stats()
    {'kernel': 4469L, 'iowait': 0L, 'user': 21096L, 'idle': 166579L, 'swap': 0L, 'systime': 1126299388, 'total': 192796L, 'nice': 652L}
    ne donne rien qui ressemble à une frequence, a moins qu'il faille diviser 'total' par qqch, mais quoi :p ?

    Edit :
    en divisant par 78 ça me donne un resultat corect, mais je ne peux pas verifier, il n'ya que ce pc qui est equiper de linux :s si qqn pouvait tester
    Edit : en divisant par 100 et en ajoutant nice, le resultat est aussi ds les bonnes eaux, y faudrait vraiment un test ^

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 376
    Points : 402
    Points
    402
    Par défaut
    En lisant dans /proc les fichiers cpuinfo et meminfo ca doit être faisable !

  4. #4
    Membre habitué

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

    Informations forums :
    Inscription : Décembre 2004
    Messages : 121
    Points : 127
    Points
    127
    Par défaut
    Citation Envoyé par getupa
    En lisant dans /proc les fichiers cpuinfo et meminfo ca doit être faisable !
    jnai pas essayé et là c'est windows qui tourne mais j'ai juste un truc qui me vient à la tete :
    Pour pouvoir lire ces fichiers il faut etre root non ? comment on se "logge" en root avec python ?

    Merci d'avoir repondu

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 376
    Points : 402
    Points
    402
    Par défaut
    non, en lecture tout le monde y a acces :p

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Trouver paquetage make et kernel-source pour l'installer sous Mandriva 2008.1!
    Par mumu27 dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 15/01/2010, 09h33
  2. Trouver la température du processeur / système
    Par Empty_body dans le forum Administration système
    Réponses: 3
    Dernier message: 19/08/2007, 11h51
  3. [vb.net] trouver la quantité de RAM installée
    Par tbdarkspirit dans le forum VB.NET
    Réponses: 3
    Dernier message: 08/04/2007, 15h44
  4. Vitesse du CPU, quantité de RAM... en C
    Par dclink dans le forum C
    Réponses: 4
    Dernier message: 07/07/2003, 20h48
  5. Comment repérer la vitesse du processeur?
    Par Paradam dans le forum Assembleur
    Réponses: 14
    Dernier message: 28/06/2003, 10h43

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