Septembre / Octobre 2025

GNU/Linux Magazine 277

Vous ne comprenez pas Git !

  • Oubliez les raccourcis courants
  • Maîtrisez vraiment les concepts clés
  • Explorez les mécanismes internes

En savoir plus

9,70 € TTC

Anciens Numéros

LIVRAISON OFFERTE en France Métropolitaine à partir de 50€
GNU/Linux Magazine 279

GNU/Linux Magazine 279

Janvier / Février 2026
9,70 €
GNU/Linux Magazine 278

GNU/Linux Magazine 278

Novembre / Décembre 2025
9,70 €
GNU/Linux Magazine 277

GNU/Linux Magazine 277

Septembre / Octobre 2025
9,70 €
GNU/Linux Magazine 276

GNU/Linux Magazine 276

Juillet / Août 2025
9,70 €
GNU/Linux Magazine 275
9,70 €
GNU/Linux Magazine 274

GNU/Linux Magazine 274

Mars / Avril 2025
9,70 €
GNU/Linux Magazine 273

GNU/Linux Magazine 273

Janvier / Février 2025
9,70 €
GNU/Linux Magazine 272

GNU/Linux Magazine 272

Novembre / Décembre 2024
9,70 €
SOMMAIRE :


BSD Family

p. 06   FreeBSD 14.3 ajoute un support pkg pour les modules noyau, c'est le moment de coder les vôtres !

Autour du code

p. 18   Git : comment ça marche ?

Système & Libs 

p. 44   Advent of Code, jour 17 (le retour)
p. 51   Les codes fantastiques : variable & Unicode
p. 52   Programmation robuste avec Bash

Science & Algo

p. 64   Erreurs en rafales, multiparités et codes Gray entrelacés

ÉDITO

J’ai testé l’IA pour mon code et...

Rassurez-vous, j’ai tenté l’expérience, mais j’aime bien trop mon Vi pour utiliser des salop^Woutils comme VSCode/Copilot/Kiro/Cursor/machin/IDE gluant. Non, ce fut par l’intermédiaire de la simple interface web de Claude Sonnet 4 et l’aventure fut assez, heu, disons... « intéressante ».

Je ne saurais vous dire le type de résultat qu’on peut espérer concernant du webdev, qui n’est pas mon domaine de compétences et encore moins ma tasse de thé. Il s’agit là de bas niveau et, en grande partie, de développement kernel FreeBSD. Et... comment résumer cela ?

Par quelques réponses données, peut-être : « Vous avez raison, j’ai fait une erreur », « Ah, je me suis trompé ! », « Ah, c’est différent ! », « Voici comment ça fonctionne réellement », « Vous avez absolument raison ! Je me suis trompé », « J’ai fait une erreur dans mon analyse précédente », « Ma suggestion était incorrecte », « J’ai fait un raccourci dans mon exemple »... et je vous passe les « Excellente question ! » quasi systématiques...

Il y a tout de même des réponses pertinentes, certes, comme le fait de me rappeler que tenter d’allouer 32 Kio sur la pile est totalement stupide dans un module noyau, ou encore dans l’affichage d’une struct parce que j’étais trop paresseux pour chercher moi-même. Mais les fausses pistes, imaginaires ou non, étaient légion, comme le fait de m’inciter à réviser totalement le code du système de construction lui-même, alors qu’il me manquait juste un sys/rwlock.h dans mon code.

Il y a du positif, un peu, mais la sensation est bien là, celle d’avoir un dialogue avec un développeur psychotique, qui invente des choses avec une assurance déconcertante et dont il faut systématiquement vérifier toutes les affirmations. On a l’impression d’avoir affaire à une entité qui sait de quoi elle parle, tout en ne disant pas tout et, de préférence, en vous prenant pour un enfant de 12 ans. Mais c’est juste une impression, ce n’est qu’un moteur statistique qui prédit le prochain token à utiliser, rien de plus.

Encore une fois, je ne saurais vous dire ce qu’il en est pour du JS, du Python, du TypeScript, etc. Mais pour du bas niveau, globalement, entre le temps perdu et le temps gagné, le bilan est neutre, avec la dopamine en moins et la frustration en plus. Je crois que c’est le CEO de NVIDIA qui a dit « L’IA ne va pas vous remplacer, mais quelqu’un qui utilise l’IA va le faire ». Là, pour ce type de développement, je pense plutôt que c’est la personne qui n’utilise pas d’IA qui va remplacer celle qui s’en sert. Ou plutôt fournira des prestations avec un TJM affolant...

PS : et, oui, j’ai aussi essayé avec ChatGPT, même combat, même ton condescendant, même hallucinations de fichiers, fonctions, variables qui n’existent pas...


Denis Bodor

Le magazine de référence technique pour les développeurs sur systèmes open source et les ingénieurs R&D !

GNU/Linux Magazine s'adresse aux professionnels et aux particuliers désireux de mieux maîtriser les techniques et problématiques liées à la programmation et à l’utilisation de solutions open source. Tous les deux mois avec ses articles techniques, la publication couvre les thématiques suivantes : programmation système, algo, bas niveau, sécurité du code, développement web...

Claviers et souris sans fil 2,4 GHz : une surface d'attaque méconnue
MISC n°143

Thématique privilégiée pour la réalisation de démonstrations techniques à des fins promotionnelles, le MouseJacking n’en demeure pas moins un vecteur crédible pour l’obtention d’un accès initial dans le cadre d’un exercice Red Team. Nous vous proposons un retour d’expérience d’une telle opération en espérant vous convaincre de l’intérêt à porter à ces techniques.

Étude des risques applicatifs liés au déploiement d’une IA générative côté client
MISC n°143

Ces derniers temps, on ne parle que d'IA (enfin, on parle de LLM, ou Large Language Model, mais c'est moins vendeur). Les marchés financiers en raffolent et, corollaire évident, les entreprises se démènent pour en ajouter là où elles peuvent. Évidemment, le revers de la médaille de cette course effrénée est l'ajout encore peu maîtrisé de fonctionnalités riches pouvant introduire des vecteurs de compromission au sein d'applications sensibles. Le but de cet article est donc de faire un retour à travers mes audits ainsi que sur l’état de l’art, établi suite aux publications de l’OWASP, afin de déterminer le risque pour une entreprise qui souhaite ajouter de l’IA sous la forme d’un chatbot.

C sans frontières : une extension de C avec vérification de bornes
MISC n°143

D’aucuns penseraient que le langage C est un langage simple. Après tout le fameux Kernighan & Ritchie de 1978 (a.k.a. White Book) ne fait que 200 pages, bien peu pour un langage qui a servi de base au noyau Linux, au compilateur GCC et à l’interpréteur de référence de Python, CPython. Et pourtant s’il y a bien une notion parmi toutes celles introduites dans the White Book qui met au défi ingénieurs en sécurité, chercheurs en compilation et développeurs en tout genre, c’est la notion de pointeur, et cette terrible question : le déréférencement de mon pointeur donne-t-il lieu à un comportement indéfini ?Des ingénieurs de chez Apple ont trouvé un chemin pragmatique et intéressant à cette question, et ils l’ont mis à disposition dans un fork de clang à travers une option, -fbounds-safety, et un fichier d’en-tête, <ptrcheck.h>. Examinons leur approche.

Ce magazine est intégralement disponible sur Linux Magazine Connect
© 2026 - LES EDITIONS DIAMOND