Du code atomique dans vos croquis Arduino ?

Magazine
Marque
Hackable
Numéro
10
Mois de parution
janvier 2016
Spécialité(s)


Résumé

Non, il n'est pas question de radiations ou de champignon nucléaire dans les croquis, encore moins de mutation du code pour obtenir un super-Arduino. Dans un contexte de programmation, le mot « atomique » est à prendre au sens de sa racine grecque « atomos », signifiant « qu'on ne peut diviser ». Une opération atomique est donc une opération qui s'exécute entièrement sans pouvoir être interrompue. Pourquoi ceci est important ? Explications...


La question de l'atomicité du code ne se pose qu'à une condition : que son exécution puisse être interrompue. En effet, avec un croquis parfaitement linéaire simplement composé d'une succession d'instructions, de tests et de boucles, il n'existe aucune situation où l'exécution normale d'un code peut être stoppée pour en exécuter un autre. Avec une condition ou un appel de fonction, rien n'est interrompu, le code suit simplement son cours.

L'Arduino, son « langage », ses bibliothèques et la plateforme matérielle elle-même, permettent cependant d'utiliser la notion d'interruption consistant justement à utiliser cette technique. Un exemple courant consiste au cas de figure hypothétique suivant : votre croquis fait clignoter une led et ce clignotement doit être stoppé lorsqu'un bouton poussoir est enfoncé.

Il y a deux manières d'envisager la chose :

  • Votre croquis teste le bouton poussoir dans la boucle principale avant chaque changement d…
La suite est réservée aux abonnés. Il vous reste 93% à 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)

Comprendre pour se protéger : écrivez votre premier rootkit

Magazine
Marque
GNU/Linux Magazine
Numéro
278
Mois de parution
novembre 2025
Spécialité(s)
Résumé

L'apprentissage est plus aisé lorsqu'il est ludique. N'importe quel parent ou (bon) enseignant sait ça, et c'est tout autant vrai à l'âge adulte, en particulier dans le domaine qui est le nôtre. Et quoi de plus ludique que de jouer au gendarme et au voleur, pour comprendre comment des « vilains méchants à capuche » font pour se ménager une porte d'entrée une fois un système corrompu. La petite exploration qui va suivre est assez naïve par rapport aux techniques modernes de dissimulation, mais sera parfaite pour se mettre le pied à l'étrier, en particulier si vous n'avez jamais mis votre nez dans les appels système ou les outils de diagnostic et de débogage intégrés au noyau Linux.

Renforcez la sécurité de votre Home Assistant

Magazine
Marque
Hackable
Numéro
63
Mois de parution
novembre 2025
Spécialité(s)
Résumé

La domotique, c'est fantastique ! Surtout quand ça ne coûte pas trop cher, que ça rend service aussi bien pour le contrôle des lumières, le suivi de la consommation électrique, le contrôle de l'environnement ou l'automatisation, et que tout cela fonctionne avec du logiciel libre, sans exfiltrer des tonnes de données privées chez un fournisseur qui se fera tôt ou tard pirater. Mais à trop vouloir jouer la carte de la sécurité, on se prive parfois de certains avantages. Trouvons donc le bon compromis pour rendre notre installation accessible, sans créer d'énormes brèches...

STC15 : les microcontrôleurs avec un cœur vieux de 45 ans sont toujours d'actualité !

Magazine
Marque
Hackable
Numéro
63
Mois de parution
novembre 2025
Spécialité(s)
Résumé

Le monde des MCU semble aujourd'hui très homogène et surtout totalement dominé par les architectures ARM, ce qui est, d'un certain point de vue, relativement vrai. Mais les alternatives sont nombreuses, qu'il s'agisse de classiques du genre comme Atmel AVR, de « nouveaux » venus comme l'écosystème ESP32 et/ou une architecture (ISA) conquérant chaque jour plus de part de marché, à savoir le RISC-V. Et dans cet univers parallèle à l'ARM, on trouve des choses qui peuvent paraître assez surprenantes, comme un microcontrôleur développé par Intel en 1980 : le 8051. Et celui-ci est toujours au goût du jour, un nouveau modèle est même arrivé l'été dernier, c'est dire !

Les listes de lecture

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.
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.
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