GNU/Linux Magazine N°
Numéro
156

Jouons avec le C !

Temporalité
Janvier 2013
Article mis en avant

Résumé

La dernière fois, nous avons décortiqué l'une des toute premières entrées de l'ioccc, avec un code datant de 1984. Aujourd'hui, nous allons étudier un bout de code nettement plus récent puisqu'il date de 2011, même s'il s'inspire d'une démo datant de l'Amiga (1986 ou 1987) !Rappelons que le but de cette rubrique est de rendre lisible un programme qui a pourtant été écrit de manière à être difficile à lire. Pour ce faire, nous allons petit à petit transformer un code source en un code équivalent, mais de plus en plus facile à déchiffrer.

Dans ce numéro...


J'adore ce numéro ! En premier lieu, si vous lisez ceci, c'est que vous faites partie de la résist^W^W^W^W^W le jour du jugement dernier^W^W^W^W^W la fin du monde n'a pas eu lieu comme l'avait soi-disant prévu une civilisation qui n'a pas vu arriver les conquistadors.
Bon, pour la métrique, vous ne pouvez pas vous passer de cacti mais une fonctionnalité vous manque et vous n'avez ni le courage ni l'envie de migrer sur un autre outil. Vous sentez bien que quelques heures de prise de tête en PHP vous donneraient satisfaction. Mais comment intégrer ce code dans cacti et bénéficier de son environnement de travail ? Aucun problème, nous allons voir comment ajouter notre développement maison sous forme de plugin dans notre logiciel de métrique favori.
#monitoringsucks : à l'heure actuelle, le monitoring ça craint [MONITORINGSUCKS]. Nagios, Cacti, Munin et consorts datent d'une autre époque. Il est temps de repenser la manière de surveiller nos matériels et applicatifs, et de découvrir les nouveaux outils qui répondent aux exigences de fonctionnement du Cloud.
Tournons une nouvelle page dans cette série relative à l'architecture d'Android avec la découverte d'un composant clé : la gestion de la connectivité réseau.
Face à des contraintes de vitesse toujours plus élevées (notamment avec l'arrivée des smartphones) et des interfaces client toujours plus riches (pratiquement 100 000 caractères pour la version « minifiée » du framework JavaScript jQuery), plusieurs techniques permettent de nettement améliorer la vitesse de chargement des pages web.
Dans un article précédent, nous avons considéré la programmation d'une application pour systèmes Android en pur C++, ce qui s'était révélé, disons, insatisfaisant. Aujourd'hui, nous allons voir comment obtenir quelque chose de bien plus gratifiant, en nous appuyant ni plus ni moins sur la bibliothèque C++ Qt4 – et sans écrire une ligne de Java ni invoquer explicitement le JNI.
À l'heure ou plusieurs distributions GNU/Linux sont sur le point de complexifier de façon irrémédiable (d'aucuns diront aberrante) leur processus d'amorce, les systèmes dérivés de BSD UNIX articulent leur mécanisme d'initialisation autour d'une cascade de scripts logiques, lisibles et contrôlables à souhait. Bien loin des usines à gaz que l'on voit germer de-ci [1] et de-là [2], rc(8) tel que nous le connaissons prend ses racines dans 4.0BSD (1980), et est devenu à travers les âges une machinerie bien huilée, devenu « rcNG » sous l'impulsion du Projet NetBSD.
On parle beaucoup de la carte Raspberry Pi, mais alors qu'il est encore relativement difficile de s'en procurer un exemplaire, tout ce qu'on peut lire de-ci de-là n'est parfois que pure supposition ou, au mieux, une reprise parfois mal interprétée d'informations officielles très évasives. Faisons le point sur ce qu'est et surtout, ce que n'est pas la carte Raspberry Pi.
Le 24 octobre dernier, le site Hack a Day relayait une information sous la forme d'un billet titrant « Rasperry Pi: Now mostly open source » affirmant « With this release, the drivers are open source, allowing the devs behind the Android, Chromium, Haiku, *BSD, and the RISC OS to dig deep into the Broadcom drivers and get their projects working. ».
Les serveurs de stockage externe, ou NAS (« Network Attached Storage ») sont devenus une partie importante des réseaux personnels et des petites entreprises. Les innovations matérielles et logicielles permettent une utilisation toujours plus simple et intuitive. Mais il faut parfois torturer ces petits boîtiers si l'on veut seulement profiter des fonctions de base : sauvegarde et confidentialité.

Magazines précédents

GNU/Linux-Magazine N°155
Administrer MySQL
GNU/Linux-Magazine N°154
DNS/Bind démystifié !
GNU/Linux-Magazine N°152
Protégez vos applications web
GNU/Linux-Magazine N°151
Installez votre groupware Kolab
GNU/Linux-Magazine N°150
Créez votre VPN avec OpenVPN

Les derniers articles Premiums

Les derniers articles Premium

Sécurisez vos applications web : comment Symfony vous protège des menaces courantes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les frameworks tels que Symfony ont bouleversé le développement web en apportant une structure solide et des outils performants. Malgré ces qualités, nous pouvons découvrir d’innombrables vulnérabilités. Cet article met le doigt sur les failles de sécurité les plus fréquentes qui affectent même les environnements les plus robustes. De l’injection de requêtes à distance à l’exécution de scripts malveillants, découvrez comment ces failles peuvent mettre en péril vos applications et, surtout, comment vous en prémunir.

Bash des temps modernes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les scripts Shell, et Bash spécifiquement, demeurent un standard, de facto, de notre industrie. Ils forment un composant primordial de toute distribution Linux, mais c’est aussi un outil de prédilection pour implémenter de nombreuses tâches d’automatisation, en particulier dans le « Cloud », par eux-mêmes ou conjointement à des solutions telles que Ansible. Pour toutes ces raisons et bien d’autres encore, savoir les concevoir de manière robuste et idempotente est crucial.

Présentation de Kafka Connect

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Un cluster Apache Kafka est déjà, à lui seul, une puissante infrastructure pour faire de l’event streaming… Et si nous pouvions, d’un coup de baguette magique, lui permettre de consommer des informations issues de systèmes de données plus traditionnels, tels que les bases de données ? C’est là qu’intervient Kafka Connect, un autre composant de l’écosystème du projet.

Le combo gagnant de la virtualisation : QEMU et KVM

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

C’est un fait : la virtualisation est partout ! Que ce soit pour la flexibilité des systèmes ou bien leur sécurité, l’adoption de la virtualisation augmente dans toutes les organisations depuis des années. Dans cet article, nous allons nous focaliser sur deux technologies : QEMU et KVM. En combinant les deux, il est possible de créer des environnements de virtualisation très robustes.

Body