Open Silicium N°
Numéro
9

Optimisation du temps de boot

Temporalité
Décembre 2013 / Janvier / Février 2014
Image v3
Optimisation du temps de boot
Article mis en avant

Résumé

Pour de nombreuses applications embarquées, la durée de démarrage du système est un facteur crucial dans l'interaction avec l'utilisateur. Je me suis intéressé il y a quelques temps à l’optimisation du temps de boot d’un système embarqué conçu par un client. J’ai décidé d’approfondir un peu le sujet pour déterminer quelles séquences de démarrage méritaient un effort d'optimisation et une méthode de travail.

Dans ce numéro...


Noël approche ou éventuellement, si vous ne vous êtes pas jeté frénétiquement sur ce nouveau numéro dès sa mise en vente, est passé dernièrement. Dans les deux cas, j'espère que vous allez avoir, ou avez eu, de beaux nouveaux jouets, démontables, assemblables, soudables, clignotants, communicants, programmables…
La carte Raspberry Pi (RPi) est devenue célèbre grâce à sa simplicité d'utilisation. En effet l'installation se limite à l'insertion une carte SD coûtant quelques euros et contenant l'image de votre système d'exploitation favori (Linux, RTEMS, FreeRTOS, …). Plusieurs autres cartes utilisent ce principe mais le développeur exigeant et expérimenté est habitué à disposer d'un logiciel d'amorçage ou « bootloader » installé sur la carte. Dans cet article nous allons décrire l'utilisation du bootloader U-Boot puis nous verrons son installation sur la carte RPi.
Dans le numéro 6 d'Open Silicium, nous avons décrit l'utilisation du système temps réel RTEMS sur un carte ARM Mini2440. Cette carte était très populaire à l'époque mais a été depuis supplantée par de nombreux produits à la fois bon marché et beaucoup plus performants. La célèbre Raspberry Pi (RPi) est la plus ancienne de cette catégorie et un portage RTEMS est officiellement disponible depuis l'été 2013. Dans cette article nous décrirons la mise en place du BSP RTEMS pour la RPi puis nous mettrons en œuvre un exemple de pilote pour les GPIO de la RPi.
Dans un circuit numérique, il y a toujours une dose d’analogique à l'interface du monde extérieur. Les composants discrets, dit actifs, sont à base de transistor et dans le cadre d’un système numérique, permettent de manipuler la puissance (les signaux forts).
Dans un circuit numérique, il y a toujours une dose d’analogique. Parfois, une carte toute faite comme une Arduino, ou une Raspberry Pi, ne suffit plus; ou bien il faut gérer de la puissance, il faut alors créer une carte.
Aspects expérimentaux et d’analyses de données.
Soyons clair, le cœur AP7 à la base du SoC de cette carte d'évaluation Atmel est déclaré en fin de vie depuis avril 2013, remplacé par la famille UC3, maintenant représentante unique de l'architecture AVR32. L'objet de cet article n'est pas de traiter la plateforme comme d'une nouveauté mais de simplement montrer qu'une architecture un peu ancienne peu toujours vous être utile.
Le langage VHDL permet de décrire des schémas électroniques sous forme textuelle. La standardisation de ce langage apporte l'avantage de la portabilité du code source vers les compilateurs de silicium des différents fournisseurs de FPGA. Le langage VHDL offre des possibilités étendues de création de composants, de paquetages, de généricité et de gestion de configuration permettant d'assurer une grande réutilisabilité du code réalisé. Nous allons voir dans cette introduction comment créer un projet simple qui nous permettra, en partant de la feuille blanche, d'obtenir les éléments de base de l'affichage d'un écran texte de 80x60 caractères dans un mode vidéo VGA 640x480 pixels. La cible de cette réalisation est la très abordable carte DE0 Nano présentée dans Open Silicium N°6 .Nous aurons donc recours à la suite Quartus II du fabricant Altera. Pour quelques résistances de plus notre réalisation s'affichera en couleurs sur tout bon moniteur informatique.
Modélisez et vérifiez votre programme multi-threads avec Spin, le model-checker open-source.
Construire un système embarqué ou compléter un système existant nécessite la mise en place d'un environnement de développement complet. Ceci comprend le cross-compilateur et les outils associés, un noyau adapté et en jeu d'utilitaires. Dans le cas du Kobo Glo, cross-compiler un simple « hello world » ou un outil permettant d'utiliser convenablement le framebuffer ne pose pas particulièrement de problème avec un environnement « clés en main » comme celui installé via emdebian. Si l'on souhaite passer à une étape supérieure et pouvoir développer des applications plus conséquentes, il faut alors compléter l'installation avec les bibliothèques adéquates.

Magazines précédents

Les derniers articles Premiums

Les derniers articles Premium

Stubby : protection de votre vie privée via le chiffrement des requêtes DNS

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

Depuis les révélations d’Edward Snowden sur l’espionnage de masse des communications sur Internet par la NSA, un effort massif a été fait pour protéger la vie en ligne des internautes. Cet effort s’est principalement concentré sur les outils de communication avec la généralisation de l’usage du chiffrement sur le web (désormais, plus de 90 % des échanges se font en HTTPS) et l’adoption en masse des messageries utilisant des protocoles de chiffrement de bout en bout. Cependant, toutes ces communications, bien que chiffrées, utilisent un protocole qui, lui, n’est pas chiffré par défaut, loin de là : le DNS. Voyons ensemble quels sont les risques que cela induit pour les internautes et comment nous pouvons améliorer la situation.

Surveillez la consommation énergétique de votre code

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

Être en mesure de surveiller la consommation énergétique de nos applications est une idée attrayante, qui n'est que trop souvent mise à la marge aujourd'hui. C'est d'ailleurs paradoxal, quand on pense que de plus en plus de voitures permettent de connaître la consommation instantanée et la consommation moyenne du véhicule, mais que nos chers ordinateurs, fleurons de la technologie, ne le permettent pas pour nos applications... Mais c'est aussi une tendance qui s'affirme petit à petit et à laquelle à terme, il devrait être difficile d'échapper. Car même si ce n'est qu'un effet de bord, elle nous amène à créer des programmes plus efficaces, qui sont également moins chers à exécuter.

Donnez une autre dimension à vos logs avec Vector

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

Avoir des informations précises et détaillées sur ce qu’il se passe dans une infrastructure, et sur les applications qu'elle héberge est un enjeu critique pour votre business. Cependant, ça demande du temps, temps qu'on préfère parfois se réserver pour d'autres tâches jugées plus prioritaires. Mais qu'un système plante, qu'une application perde les pédales ou qu'une faille de sécurité soit découverte et c'est la panique à bord ! Alors je vous le demande, qui voudrait rester aveugle quand l'observabilité a tout à vous offrir ?

Body