Les articles de GNU/Linux Magazine N°144

Article mis en avant

Les pilotes RTDM (Real Time Driver Model)

Le projet Xenomai (http://www.xenomai.org) propose une extension du noyau Linux et permet de développer des applications « temps réel dur ». Outre les applications, l'utilisation de périphériques spéciaux nécessite de développer des pilotes temps réel en utilisant RTDM (Real Time Driver Model). En nous basant sur trois exemples concrets, nous décrirons dans cet article les principaux éléments de cette API tant du côté du développement noyau que de celui de l'accès au pilote depuis l'espace utilisateur. Les sources des exemples sont disponibles sur http://pficheux.free.fr/articles/lmf/kernel_programming/rtdm_drivers.

Ah les informaticiens ! Pas vous, pas moi, mais plutôt, vous savez, cette « image » de l’informaticien qui n’aime pas le simple mortel et exècre à devoir consommer le peu de temps dont il dispose encore à expliquer une parcelle de son art à un esprit qui n’attend fi na- lement qu’un résultat miraculeux (qu’il s’imagine, bien entendu, obtenir sans le moindre eff ort).
Prologin, le concours national d'informatique, fête ses 20 ans. Les inscriptions sont ouvertes aux jeunes de 20 ans ou moins, jusqu'au 2 janvier 2012.
Suite et fin de notre synthèse des nouveautés de Linux 3.1, noyau à la genèse mouvementée. Si l'attaque de kernel.org a causé l'indisponibilité de l'ensemble de l'infrastructure de développement habituelle, elle aura finalement seulement ralenti le travail et n'aura en rien compromis le code, en partie grâce au gestionnaire de versions Git créé par Linus Torvalds. Par sa nature décentralisée, il ne repose pas sur un point unique de stockage des données. Finalement, cette attaque aura eu comme avantage de déclencher une remise à plat de la sécurité de kernel.org, beaucoup plus stricte désormais.
Les pilotes réseau ou network drivers constituent une catégorie majeure dans le développement noyau Linux. La structure de ces pilotes est assez particulière par rapport aux pilotes en mode caractère ou bloc. Dans cette article, nous aborderons les principales étapes de la création d’un pilote réseau. Fidèle à notre réputation pragmatique, nous baserons la démonstration sur le développement d’un exemple complet - mais virtuel - d’interface réseau nommée fake0(en référence à eth0, l’interface réseau habituellement utilisée sous Linux).En plus de cet exemple, nous décrirons les principes de développement d’un pilote basé sur les deux principaux bus de communication actuels, soit PCI et USB. Pour ces deux bus, un squelette de pilote fonctionnel sera fourni.Les exemples liés à cet article sont disponibles sur http://pficheux.free.fr/articles/lmf/kernel_programming/net_drivers.
Réalisez un réseau de neurones et prévoyez le temps qu'il fera demain avec Rattle, the R Analytical Tool To Learn Easily.
Compiler son noyau n'est pas une technique réservée à quelques barbus manipulant gcc et vi en ligne de commandes. Cet article vous explique les raisons et la manière pour compiler son noyau de manière didactique.
Cet article est une introduction aux microcontrôleurs et à leur programmation en C. Parmi le grand nombre de fabricants et de modèles, j'ai choisi la famille des AVR de chez ATMEL. Pour illustrer cet article, je prendrai deux exemples : le clignotement d'une LED à partir d'une interruption « timer » et la commande PWM d'un moteur à courant continu.
Dans le numéro 133 de GLMF, nous avions présenté les principes et les fonctionnalités majeures de GlusterFS, un système de fichiers distribués. Deux versions majeures sont depuis passées par là. La 3.1 a considérablement amélioré les aspects liés à la haute disponibilité des volumes distribués gérés par GlusterFS. La 3.2 propose quant à elle des évolutions importantes dans l'analyse des performances de votre architecture. Nous présenterons quelques nouveautés de ces deux versions dans la suite de cet article.
Ne vous est-il jamais arrivé de tomber sur la problématique d'un envoi de fichier trop gros par mail ? Et la personne en face (oui Mme Michu !) qui ne sait pas comment se connecter en reverse SSH pour accéder à vos fichiers, ni même lancer un pauvre client FTP pour récupérer son précieux.Pour faire simple, vous en avez marre d'utiliser http://dl.free.fr ? Dans ce cas, LinShare est là !LinShare est une solution de partage de fichiers en ligne via une interface web simple et jolie, tout ceci de manière sécurisée et même chiffrée si on le souhaite. Autrement dit, LinShare est un coffre fort web.
Cette série a pour objet de montrer comment installer et configurer une suite de logiciels bien connus afin de leur faire faire uniquement ce pour quoi ils ont été conçus initialement.Lorsque l'on essaye pour la première fois d'installer un logiciel « phare » du monde du libre, on est parfois désorienté par l'absence plus ou moins totale de documentation simple. On trouvera nettement plus facilement un tutoriel sur la façon de lui faire faire le café en dansant le sirtaki qu'une explication claire sur comment lui faire faire ce pour quoi il a été développé à l'origine.Ce problème est d'autant plus vrai que le logiciel est ancien et bien connu des « vieux de la vieille ». Cependant, ces derniers oublient parfois un peu vite que la jeune génération arrive et que, si on veut qu'ils aient envie d'installer un Apache plutôt qu'un IIS, il faut leur en donner les moyens. Il est facile de répondre RTFM sur un forum, mais encore faut-il pouvoir le trouver ce calisse de tabarnak d'ostie de manuel...
La minification et toutes les techniques d'optimisation des scripts (dont les aspects techniques sont traités dans d'autres articles de ce magazine) ont un effet profond sur le développement et la distribution des contenus. Le fondateur de la FSF l'a identifié en 2009 comme un problème potentiel important car la distribution de fichiers minifiés empêche le surfeur de connaître l'origine et l'auteur du contenu qu'il charge. Et comme il s'agit de JavaScript, donc de code que le visiteur fait exécuter par sa machine sans aucune visibilité, se pose la question de ce que fait ce code, donc de transparence... ce qui menace les Libertés Fondamentales.
Nous allons aborder quelques techniques pour réduire la charge d'un serveur et le temps de chargement de pages web statiques. Plusieurs approches existent, mais dans ce premier volet, nous allons faire appel à un des outils de base de l'informatique : les expressions régulières et quelques outils de base en ligne de commandes.
Maintenant que nous avons vu les bases du compactage des fichiers d'un site web, passons aux choses sérieuses. Les expressions régulières étant trop inadaptées pour des syntaxes sophistiquées, nous allons faire appel à une technique d'analyse plus avancée : les parseurs. Ça va être la fête du new String() !