je suis à la recherche d’une fonction (ou au moins d’une piste) permettant en C d’obtenir des infos sur la carte réseau principale (eth0) … un peu à la manière de ifconfig mais dans un programme en C … je ne peux pas appeler mon programme avec ifconfig sur stdin car mon programme sera un daemon …
Je cherche les volumes envoyés et reçus ( Tx / Rx ) afin de determiner le débit à l’instant ‘t’…
en lecture je ne pense pas à priori. Fais bien attention à ne pas accéder en écriture par mégarde et avec des droits suffisants pour pouvoir effectivement écrire par contre, ça ça pourrait poser des problèmes par contre (mais je ne sais pas de quel ordre).
Pour ce qui est de la fréquence des accès : c’est l’appel système d’ouverture du fichier qui va te couter dans l’histoire, la lecture elle même étant limite “gratos” en comparaison. Donc il faut prendre ça en compte. M’enfin le plus gros risque, selon moi, serait de ralentir ta machine chérie et pour ca … il faudrait un sacré paquet d’appels consécutifs !
/proc est un système de fichiers virtuels, ce n’est pas comme accéder à un fichier sur le disque dur. La lecture du pseudo-fichier /proc/net/dev fait appel à une fonction callback de lecture qui récupère les informations nécessaires et les retourne depuis le kernel.
[quote=“thialme”]/proc est un système de fichiers virtuels, ce n’est pas comme accéder à un fichier sur le disque dur. La lecture du pseudo-fichier /proc/net/dev fait appel à une fonction callback de lecture qui récupère les informations nécessaires et les retourne depuis le kernel. http://www.ibm.com/developerworks/library/l-proc.html[/quote]
Whaoo … Super merci pour cette info, c’est génial Linux !!!
( Et oui, à la base, je suis un dev Windows … )
Juste pour dire que c’est OK, ça marche impec ! … Me reste plus qu’a faire la comm socket avec le client coté Windows et ce sera TOP moumoute !
… donc re-merci à tous ( special thanks pour thialme )
J’ai juste été un poil surpris que le volume des Rx soit collé au ‘eth0’ quand ça devient trop long
PS: vous avez pas un autre fichier /proc/ où je pourrais trouver la liste des users loggés par hasard ? … Toujours pour mon daemon en C, donc pas de script svp …
Il faudrait démonter le source de la commande who qui ne doit pas être énorme…
Je n’ai rien vu dans /proc qui ressemble à ça (et il me semble que ça relève plus de l’OS que du noyau).
quote="Seb.26"
ça fait quand même bizarre toute cette liberté quand on arrive sur la banquise :smt003
(…)[/quote] Et oui, et comme dans la vraie vie, il y en a à qui ça fait même peur de ne plus suivre des rails.
[quote=“Seb.26”]PS: vous avez pas un autre fichier /proc/ où je pourrais trouver la liste des users loggés par hasard ? … Toujours pour mon daemon en C, donc pas de script svp …
I Linux[/quote]
salut Seb.26 regardes là —>whowatch la source de whowatch est en haut à gauche de la page :smt002
@dimm : Merci, j’ai pas compris ta réponse, mais je vais essayer de taper tes commandes, je verrais bien ce que ça donne … [/quote]Ce qu’il te faut pour avoir les sources de ce que tu veux sous debian (aprés joue du man pour avoir plus de détails).[quote=“Seb.26”]@thialme : Merci ( encore ), je vais lire ça en détail, et voir ce que j’en tire.
(…)[/quote]Il triche: il contourne :smt003 c’est un vrai codeur, lui.