(Courriels de diversion: <dechaînent@informatiseriez-blinderas.com> <embauchaient@anticonstitutionnel-retransmets.com> <loucherai@effleurerons-remontrent.com> <curriculum@perciez-tangent.com> <verbalises@tracasserons-retraduits.com> <reciproquement@affectueusement-serrerions.com> <avanceras@renfrogneriez-effrayerais.com> <sucote@surencheris-analyseurs.com> <gaspilleriez@raierai-apprivoiserais.com> <recrachent@syndiques-embosser.com> )
>>>>> "pp" == peterpan31@free fr writes: pp> Je préférais une solution niveau bash pour l'utiliser sours CYGWIN car les pp> fichiers ouverts à compter sont ouverts par W$. je ne comprends pas « ouverts à compter ». pp> J'ai pensé à compiler du code C mais je n'ai pas trouvé de soluce. pp> Les fonctions stat/lstat/fstat ne fournissent pas cette info. pp> Quelle fonction ou structure C (portable !) saurait m'informer si un pp> fichier est ouvert ou non ? il n'existe pas d'appel système ou fonction de la bibliothèque C qui permette d'obtenir cette information de façon portable. fuser et lsof fonctionnent en parcourant des tables internes du noyau, donc sont par nature très peu portables. Pour être plus précis, dans le cas des systèmes Linux, fuser et lsof exploitent le système de fichiers /proc. Ce pseudo filesystem offre des capacités d'introspection sur l'état interne du noyau (plages mémoire utilisées par un processus, liste de descripteurs de fichiers ouverts par chaque processus, état du processus vis à vis du scheduler, etc). Donc en vérité ces applications utilisent des appels système standards, comme readdir() et stat(), pour obtenir l'information dont elles ont besoin sur l'état du noyau ; ce n'est pas pour autant que ce mécanisme est portable à Windows via la bibliothèque d'émulation Cygwin. -- Eric Marsden -------------------------------------------------------------------- Les listes de diffusion occultes: <URL:http://www.CULTe.org/listes/>