Que fait un ingénieur logiciel embarqué?
Les utilisateurs d’ordinateurs sont probablement les plus familiarisés avec les logiciels exécutés sur leurs systèmes d’exploitation. Cependant, ils sont souvent peu familiarisés avec le logiciel qui régule le fonctionnement de certains composants matériels sophistiqués. Ces composants sont programmés par des professionnels appelés ingénieurs en logiciels intégrés.
Les composants matériels qui remplissent des fonctions spécifiques et spécialisées sont appelés systèmes intégrés . Ceux-ci agissent en tant qu'ordinateurs au sein d'ordinateurs, avec leurs propres processeurs et mémoire. Les systèmes intégrés prennent en charge les données de composants matériels spécifiques, exécutent leur programmation, puis les transmettent à d'autres composants matériels de la machine. Le rôle d’un système intégré peut être aussi complexe que de convertir des données d’une antenne interne en un format de données que le reste de l’appareil peut utiliser, ou aussi simple que de transmettre des signaux spécifiques lorsqu’il est activé par un bouton. Un ingénieur en logiciel intégré crée les programmes qui exécutent ces périphériques.
Le travail d'un ingénieur en logiciel intégré est similaire à celui d'ingénieurs en logiciel qui créent des programmes pour ordinateurs de bureau. Le code source permettant de convertir des données d'un format à un autre est identique sur un ordinateur personnel que dans un système intégré. La tâche de l'ingénieur logiciel intégré diffère par l'ajout de code supplémentaire pour que le programme s'exécute sur le matériel spécialisé agissant en tant que système intégré.
Les systèmes d'exploitation sur lesquels les applications de bureau s'exécutent incluent un grand nombre de logiciels de pilotes. Ceci est approprié pour ces systèmes en raison de la variété de matériel pouvant se trouver dans l'ordinateur et du logiciel qu'un utilisateur peut exécuter. Les systèmes embarqués sont autonomes et n'exécutent qu'un seul programme. Pour cette raison, le programmeur n'a besoin que de charger un nombre limité de pilotes et le programme lui-même dans la mémoire limitée du périphérique. Le travail de l’ingénieur logiciel embarqué consiste généralement à déterminer le plus petit nombre de pilotes dont le programme aura besoin pour faire fonctionner le périphérique intégré.
Une fois que l’ingénieur logiciel intégré a fini de programmer un périphérique, son travail doit être documenté. Les systèmes embarqués ne sont jamais utilisés seuls, mais dans le cadre de projets plus vastes. Pour utiliser l'appareil, d'autres ingénieurs doivent connaître des informations telles que:
- quelles données le système intégré attend
- quel format de données attend sa programmation
- comment l'appareil réagira à différentes entrées
- le format des données que l'appareil produira
Ces informations sont ensuite incluses dans la documentation technique produite par les ingénieurs en logiciels embarqués, souvent sous la forme d'un manuel. Parfois, les rédacteurs techniques, plutôt que les ingénieurs eux-mêmes, créent ces manuels à partir des notes fournies par les ingénieurs logiciels. Avoir une documentation à laquelle se référer est un atout précieux pour les utilisateurs.