• [^] # Re: System

    Posté par . En réponse au message ecrire la liste des processus utilisateurs dans un fichier texte. Évalué à 2.

    J'ai déjà fait une fois un code de ce genre-là, malheureusement je ne l'ai pas sous la main. La solution que j'avais employé, et qui était très efficace, était de parcourir bêtement /proc. Dans ton cas, tu n'auras qu'à faire :

    int i;
    struct stat buffer;
    #define MAX_PID 32768
    #define UID_UTILISATEUR /* ha ben je ne sais pas, moi! tape "id" dans un shell */
    for(i=&;i<MAX_PID;i++){
    sprintf(chemin,"/proc/%d",i);
    if((stat(chemin,&buffer)!=-1) && (buffer.st_uid==UID_UTILISATEUR)){
    mettre_dans_fichier(i);
    }
    }

    Bon, c'est juste un code sale, pour te montrer comment ça marche, pour faire cela proprement, il faudrait par exemple récupérer MAX_PID au niveau des symboles exportés par le noyau (je crois qu'il se trouve là...).