Questions marquées «linux-kernel»

89
Que sont vdso et vsyscall?

J'ai fait sudo cat /proc/1/maps -vv J'essaie de donner un sens à la sortie.Je peux voir beaucoup de bibliothèques partagées mappées au segment de mappage de mémoire comme prévu. 7f3c00137000-7f3c00179000 r-xp 00000000 08:01 21233923 /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8

86
L'utilisation de gdb pour un code d'assemblage en une seule étape en dehors de l'exécutable spécifié provoque l'erreur "Impossible de trouver les limites de la fonction actuelle"

Je suis en dehors de l'exécutable cible de gdb et je n'ai même pas de pile correspondant à cette cible. Je veux quand même faire une seule étape, afin de pouvoir vérifier ce qui se passe dans mon code d'assemblage, car je ne suis pas un expert en assemblage x86. Malheureusement, gdb refuse...

12
Pourquoi définir une macro pour une fonction du même nom?

J'ai trouvé le code ci-dessous dans https://github.com/torvalds/linux/blob/master/arch/x86/include/asm/atomic.h static __always_inline bool arch_atomic_sub_and_test(int i, atomic_t *v) { return GEN_BINARY_RMWcc(LOCK_PREFIX "subl", v->counter, e, "er", i); } #define arch_atomic_sub_and_test...