J’ai eu besoin il y a quelques jours de comparer deux versions d’un même fichier C après qu’il a subi de nombreuses modifications. La structure du fichier et le contenu ayant beaucoup bougé, les outils habituels (éditeurs,
diff
, meld
, etc.) ne pouvaient me venir en aide. J’avais besoin d’extraire chaque fonction du programme pour qu’elle se trouve dans un fichier séparé. Cela m’a amené à écrire un petit script shell qui pourra peut-être s’avérer utile à d’autres…
Archives de la catégorie ‘Linux’
Lundi dernier, Linus a publié le nouveau noyau Linux 3.14. Ce dernier contient de nombreuses nouveautés, dont un mécanisme d’ordonnancement temps réel EDF (Earliest Deadline First) qu’il me tarde d’essayer. Pour cela deux nouveaux appels-système sched_getattr()
et sched_setattr()
sont proposés au programmeur, mais ils ne sont pas encore supportés par les bibliothèques C actuelles. Qu’à cela ne tienne, nous allons les invoquer directement…
Lire la suite de cette entrée »
Dans un commentaire récent, Thomas m’interrogeait sur le fonctionnement de l’appel-système select()
lorsqu’il est invoqué pour surveiller des entrées GPIO par l’intermédiaire du système de fichiers /sys
.
C’est effectivement un sujet intéressant, un peu complexe, que je vais essayer de développer ici. Nous allons commencer par examiner comment select()
fonctionne pour des fichiers spéciaux représentant des périphériques classiques puis verrons comment il se comporte lorsqu’il est invoqué pour surveiller un fichier de sysfs
.
Lire la suite de cette entrée »