Oneliner pour ceux qui ont une bonne vue
Par alrj, samedi 12 janvier 2008 à 14:46 :: General :: #47 :: rss
(Ouais, je sais, presque six mois depuis le dernier billet)
Deux petits oneliners qui peuvent être utiles si
- vous avez de bons yeux,
- votre linux est en x86_64 (AMD64 ou EM64T),
- vous programmez en assembleur,
- vous utilisez vous-même les syscalls au lieu d'appeler la libc,
- vous aimeriez garder une liste de ces appels système sous la main.
Pour imprimer la liste des appels système, dans l'ordre des numéros :
$ awk '/#define __NR_/ {sub(/__NR/, "SYS");
printf("%3s %s\n", $3, $2)}' \
< /usr/include/asm-x86_64/unistd.h \
| enscript -G5r -t "x86_64 syscalls, by number"
Pour imprimer la même liste, mais par ordre alphabétique :
$ awk '/#define __NR_/ {sub(/__NR/, "SYS");
printf("%-28s %s\n", $2, $3)}' \
< /usr/include/asm-x86_64/unistd.h \
| sort | enscript -G5r -t "x86_64 syscalls, by name"
Ces impressions donneront quelque chose de correct tant qu'il n'y aura pas plus de 320 appels système. Au delà, ça va déborder.
Évidemment, si vous ne voulez pas imprimer, vous avez le droit de retirer l'appel à enscript. Et si vous voulez le résultat dans un fichier PostScript, ajoutez l'argument -o fichier.ps à la fin de l'appel à enscript.
Commentaires
Aucun commentaire pour le moment.
Ajouter un commentaire
Les commentaires pour ce billet sont fermés.