Le mécanisme des signaux POSIX sous Linux

Magazine
Marque
GNU/Linux Magazine
Numéro
129
Mois de parution
juillet 2010


Résumé
Pour vous occuper durant cet été, nous vous proposons une brève sur un sujet technique qui ne manquera pas de vous tuer quelques neurones s'ils ne savent pas encore amadouer les signaux POSIX ;) Dans tous les cas, la dernière partie de la brève devrait émettre des signaux SIGKILL à nombre d'entre eux, vous assurant ainsi un repos bien mérité sur le sable chaud de la plage ensoleillée d'où vous lisez votre magazine tout réchauffé :P

1. Un premier aperçu

Le mécanisme des signaux est un moyen de communication asynchrone entre les processus de l'espace utilisateur d'un système. Il sert également au noyau comme moyen de notification d'événements aux différents processus. Il a été introduit dans les premiers systèmes Unix, et depuis lors, fait partie de la norme POSIX. Un signal est un simple message contenant un identifiant. Ce dernier précise la nature de l'événement. Il est également possible dans certains cas de récupérer des informations supplémentaires à propos du signal émis, si lors de l'émission il en a été décidé ainsi.

Les signaux servent principalement dans deux situations. Tout d'abord, le noyau les emploie afin de mettre au courant un processus de l'occurrence d'un événement. Par exemple, le signal SIGSEGV, que les programmeurs ont l'habitude de rencontrer, est envoyé par le noyau pour signaler au processus une « erreur…

La suite est réservée aux abonnés. Il vous reste 95% à découvrir.
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Envie de lire la suite ? Rejoignez Connect
Je m'abonne maintenant


Article rédigé par

Par le(s) même(s) auteur(s)

Fuddly : introduction de l’outil et développement d’un protocole

Magazine
Marque
MISC
Numéro
103
Mois de parution
mai 2019
Spécialité(s)
Résumé

Cet article présente Fuddly, un framework de fuzzing et de manipulation de données, écrit en python sous GPLv3, qui fournit de nombreuses briques que l’on retrouve dans d’autres framework de fuzzing, mais qui se différencie par la flexibilité de représentation des données et la diversité des altérations qu’il rend possible.

L'Infrastructure Linux Gadget USB

Magazine
Marque
Open Silicium
Numéro
14
Mois de parution
mars 2015
Spécialité(s)
Résumé

L'infrastructure Gadget USB du noyau Linux facilite la création de périphériques USB, en proposant un cadre et un certain nombre de primitives qui permettent d'une part d'abstraire les contrôleurs matériels de périphériques USB, et d'autre part d'en utiliser les ressources et fonctionnalités afin de créer n'importe quelle fonction USB désirée : qu'elle réponde aux standards (tels que « Mass Storage », « CDC Eth »…), qu'elle soit l'incarnation de vos besoins particuliers, ou bien encore qu'elle soit une combinaison des deux.

Kernel Corner : Interviews A. Morton, G. Kroah-Hartmanet T. Heo

Magazine
Marque
GNU/Linux Magazine
Numéro
166
Mois de parution
décembre 2013
Spécialité(s)
Résumé
Nous avons le plaisir de vous présenter dans un première partie quelques pensées de Andrew Morton et de Greg Kroah-Hartman (deux figures de renom dans la communauté noyau) sur la maturité du noyau Linux et de sa communauté, sur l'importance de l'adaptation continue de Linux à son environnement, ainsi que sur des sujets liés à la maintenabilité du noyau vis-à-vis de la flexibilité que l'ABI peut apporter à l'espace utilisateur. Nous finissons par un éclairage de Tejun Heo (mainteneur des control groups) sur la refonte de l'infrastructure des control groups (en cours d'intégration depuis le 3.10 et accessible via l'option de montage « __DEVEL__sane_behavior »), où le sujet de la flexibilité est au cœur des décisions prises.

Les listes de lecture

Python niveau débutant

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.

Au pays des algorithmes

11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.

Analyse de données en Python

10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Plus de listes de lecture