GNU/Linux Magazine Hors-série N°
Numéro
51
Développement sur systèmes open source

Article mis en avant

Résumé
Bien nombreux sont ceux qui utilisent des bases de données dans leurs applications, mais ne souhaitent pas mettre en place une vraie base de données telle que MySQL, PostGreSQL, etc. Les raisons sont souvent des questions de simplification de la configuration, d’installation, ainsi que le fait que l'on n’a pas besoin de toutes les fonctionnalités d’une vraie base de données (juste un stockage clés/valeurs, par exemple, et pas de base relationnelle). Une autre raison est pour le développement d’applications embarquées qui ont des ressources limitées, et donc, faire tourner un système de base de données est tout simplement impossible.

Dans ce numéro...


La Scratchbox est un environnement de build particulièrement adapté au développement d'applications pour du Linux embarqué. Cet environnement a été développé sous licence GPL par Lauri Leukkunen, principalement pour le projet Maemo de Nokia, la distribution Linux des plates-formes ARM N770 et suivantes. Une version 2 de la Scratchbox, sensiblement différente, est disponible, mais l'auteur ne la maintient pas, et elle ne sera plus évoquée dans cet article. La version 1.x est toujours maintenue par Lauri Leukkunen.
Quelques semaines à peine après l'annonce et la mise en vente de la tablette Apple, on a vu apparaître sur les sites d'enchères en ligne plusieurs clones chinois se vantant de fournir quasiment les mêmes fonctionnalités que l'iPad, à un tarif deux voire trois fois moindre. Ne résistant pas à la curiosité d'étudier la chose plus en détail, nous avons acquis deux exemplaires de ces clones pour analyser la bête.
Tout le monde sait ce qu'est un GPS ou du moins tout le monde croit le savoir. Pour le commun des mortels, il s'agit d'un périphérique permettant de savoir, tout simplement, où l'on se trouve et ainsi de retrouver son chemin. Le GPS, pour Global Positioning System, est en réalité bien plus qu'un équipement, mais un système complet. Son fonctionnement exploré sous GNU/Linux permet d'en révéler toute la beauté et la magie.
Bon, dans cet article, vous n'allez pas apprendre de magie et contrôler le miroir de votre salle de bain pour vous embellir dès le matin... Le « miroir » que nous allons étudier ici est le périphérique commercialisé par la société Violet (si le nom vous dit quelque chose, vous devez déjà connaître le Nabaztag). Au travers de cet article, nous n'allons pas uniquement voir l'aspect technique (ce périphérique restant simple à utiliser), mais aussi la manière d'aborder l'analyse d'un matériel non connu.
Les iPod Touch et iPhone sont probablement les systèmes embarqués les plus largement disponibles auprès du grand public. Bien que le qualificatif « embarqué » ne soit associé qu'à leur autonomie, faible encombrement et absence de ports de communication, la puissance de calcul est compatible avec celle nécessaire pour exécuter un environnement Un*x dans lequel un développeur sous GNU/Linux ou *BSD sera familier. Nous proposons dans cette présentation, après avoir libéré son iPod Touch de l'emprise de Cupertino, d'exploiter une chaîne de compilation croisée libre exploitant les bibliothèques propriétaires mais gratuites d’Apple, pour développer nos propres applications. Nous nous intéresserons en particulier à l'accès aux périphériques matériels, qu'il s'agisse d'une liaison Bluetooth pour communiquer par une liaison sans fil avec des périphériques tels que la brique LEGO NXT, ou des accéléromètres. Ces développements passent nécessairement par la maîtrise de l'Objective-C 2.0, dont nous démontrerons la fonctionnalité comme langage de développement sous GNU/Linux lors de l'exploitation du compilateur LLVM.
En C, const et volatile sont souvent considérés comme des sous-types de données, l'un étant l'opposé de l'autre. Ces deux affirmations sont parfaitement fausses. Il en découle en général une utilisation plus ou moins aléatoire aussi bien dans le développement userland, kernel ou pour des éléments comme des microcontrôleurs. Petite mise au point sur le rôle de ces gentilles bestioles.
Après avoir disséqué le langage VHDL, son implémentation par GHDL et l'extension graphique du numéro de septembre [1], passons à la pratique ! On en avait presque oublié que tous ces efforts pour accéder au framebuffer sont motivés par le besoin de Laura d'afficher confortablement les chiffres de sa montre. Maintenant que nous savons contrôler les pixels de l'écran lors d'une simulation, l'affichage est (quasiment) un jeu d'enfant ! Profitons-en pour découvrir de nouveaux aspects bien pratiques du langage VHDL, tout en faisant un peu de programmation graphique.
Lorsqu'on veut faire communiquer un ensemble d'applications, l'une des solutions les plus évidentes est celle consistant à utiliser un bus logiciel. Un très bon exemple d'implémentation est D-Bus, généralement en place sur la quasi-totalité des ordinateurs desktop GNU/Linux, qu'ils soient sous GNOME ou KDE. Mais D-Bus n'est pas toujours la solution idéale pour le développeur. Ici nous traiterons d'une implémentation reposant sur une API bien plus simple et plus rapide à utiliser. C'est Ivy.
Depuis maintenant un peu moins d'un an, Free offre la possibilité d'exécuter sur la Freebox des applications écrites en JavaScript utilisant les Enlightenment Foundation Libraries pour réaliser l'interface graphique.

Magazines précédents

Les derniers contenus premiums