Présentation
EnglishRÉSUMÉ
Linux est un système d'exploitation multitâche de la famille UNIX. Développé initialement sur processeur de type Intel, il est maintenant devenu le support de nombreuses architectures. Réputé pour son interopérabilité, Linux est un logiciel libre, rapidement placé en concurrence avec les solutions Microsoft. Au début des années 2000, il est pressenti par de nombreux développeurs comme solution embarquée, de par sa fiabilité, la disponibilité de son code source et son coût de redistribution nul. La connaissance du système Linux est désormais une nécessité pour les entreprises des domaines concernés par les versions embarquées, qu'ils soient fabricants de matériel électronique, éditeurs de logiciels, ou de solutions d'exploitation.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleAuteur(s)
-
Pierre FICHEUX : Ingénieur Arts et Métiers - Directeur technique chez Smile ECS (), enseignant et responsable de la majeure GISTRE (Génie Informatique des Systèmes Temps Réel et Embarqués) à l’EPITA (Paris).
INTRODUCTION
Lorsque Linus Torvalds, alors jeune étudiant de l’université d’Helsinki, publie sur Internet en juillet 1991 son premier message concernant le développement balbutiant de son noyau UNIX libre, il ne se doute certainement pas qu’à l’instar d’autres célébrités de la technologie comme Steve Jobs ou Bill Gates, il est sur le point de changer le monde.
Linux est un système d’exploitation multitâche (en fait un « noyau ») de la famille UNIX. Il fut initialement développé sur processeur de type Intel x86 (386 et 486), mais il a depuis été adapté sur un grand nombre d’architectures matérielles comme les PowerPC, ARM, SH4 et désormais des processeurs industriels spécialisés comme Nios II, MicroBlaze ou Blackfin. Au final, 31 architectures sont actuellement supportées par la version officielle du noyau Linux.
Linux est conforme au standard POSIX (pour Portable Operating System Interface for UNIX), ce qui signifie que les sources des programmes développés sous Linux peuvent être compilées facilement sur d’autres systèmes d’exploitation compatibles POSIX. Linux est également réputé pour sa grande interopérabilité, c’est-à-dire qu’il peut facilement s’intégrer dans un système informatique complexe utilisant d’autres systèmes d’exploitation propriétaires. Le code source du noyau Linux est disponible librement sur Internet, tout en respectant la licence GPL définie pour le projet GNU.
Initialement, le logiciel embarqué était un marché de « niche » totalement dominé par des éditeurs spécialisés (comme Wind River, fondée en 1981 et éditeur du système d’exploitation VxWorks), pratiquant des coûts de licence très élevés du fait du faible volume de production qui se résumait aux applications militaires, spatiales et industrielles en général. Les contraintes du logiciel embarqué sont très différentes de celles du logiciel classique, en particulier sur la notion de durée de vie du logiciel, qui est bien plus importante dans le cas de l’embarqué. À titre d’exemple, le télescope spatial Hubble utilisant le système d’exploitation VRTX tourne – au sens propre – depuis 1990.
Au début des années 2000, Linux était déjà très utilisé dans le monde des serveurs et ce directement en concurrence avec les solutions Microsoft. Déjà à l’époque, de nombreux développeurs et utilisateurs de Linux pensent que ce dernier peut être utilisé pour des solutions industrielles et embarquées grâce à sa fiabilité, la disponibilité de son code source et bien sûr son coût de redistribution nul. L’évolution de l’informatique embarquée vers le multimédia, de par la généralisation de l’accès à Internet, a depuis permis à Linux de devenir un acteur majeur dans le domaine puisque les systèmes d’exploitation embarqués propriétaires n’étaient pas adaptés à ces fonctionnalités. Les équipements d’accès à Internet comme les gateway et set-top box utilisent majoritairement des systèmes d’exploitation basés sur Linux. Citons les Freebox, Bbox et autres Livebox.
La grande majorité des smartphones (plus de 80 % à ce jour) utilise également le noyau Linux (et non le système complet) dans le système Android de Google. Récemment, l’éditeur Microsoft a annoncé qu’il se retirait peu à peu du marché de l’embarqué où il était connu pour Windows CE et autres Windows Embedded, laissant une belle place à Android pour les applications graphiques.
Notons que des set-top box récentes utilisent également le système d’exploitation Android.
La connaissance de Linux et des spécificités des versions embarquées et industrielles est désormais une nécessité pour les entreprises – et donc les ingénieurs – des domaines concernés, qu’ils soient fabricants de matériel électronique, éditeurs de logiciels, de solutions de développement ou d’exploitation.
La compréhension de cet article sera facilitée si le lecteur est déjà un utilisateur du système Linux. Cependant nous effectuerons les quelques rappels nécessaires à la compréhension pour le plus grand nombre de lecteurs. Au cours de cet article, nous décrirons la réalisation d’une véritable distribution Linux utilisable sur la célèbre carte Raspberry Pi 3, basée sur une architecture ARM.
VERSIONS
- Version archivée 1 de mars 2012 par Pierre FICHEUX
DOI (Digital Object Identifier)
CET ARTICLE SE TROUVE ÉGALEMENT DANS :
Accueil > Ressources documentaires > Technologies de l'information > Technologies logicielles Architectures des systèmes > Systèmes embarqués > Linux embarqué > Introduction au logiciel libre, le projet GNU
Accueil > Ressources documentaires > Technologies de l'information > Technologies logicielles Architectures des systèmes > Systèmes d'exploitation > Linux embarqué > Introduction au logiciel libre, le projet GNU
Cet article fait partie de l’offre
Automatique et ingénierie système
(139 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
1. Introduction au logiciel libre, le projet GNU
Le logiciel libre est la traduction française du terme anglais free software. Dans ce cas, le terme free ne signifie pas gratuit, mais libre. La notion de logiciel libre est directement issue du concept exprimé en anglais par le terme open source (voir http://www.opensource.org), la principale caractéristique du logiciel libre est donc la disponibilité du code source et non la gratuité de la licence.
Il existe un autre type de logiciel nommé freeware (parfois nommé graticiel en français) mais il n’a rien à voir avec le logiciel libre puisque, dans ce cas, le terme free indique avant tout la gratuité alors que le code source est rarement disponible.
1.1 What’s GNU ? Gnu’s Not Unix
Dans les années 1980, Richard M. Stallman, un chercheur en intelligence artificielle du MIT (Massachusetts Institute of Technology), démarre un projet de développement de composants logiciels libres. De par son environnement culturel, Stallman s’oriente naturellement vers l’environnement UNIX, non qu’il considère ce système comme parfait, mais plutôt parce qu’il est, selon ses dires, not so bad (pas si mal). Le but du projet est de fournir des versions libres des différentes commandes et outils disponibles dans les systèmes UNIX. Le nom du projet (GNU) est une définition récursive (GNU’s Not Unix), typique de l’humour décalé des informaticiens.
HAUT DE PAGE1.2 Licences GPL et LGPL
Richard Stallman en profita pour mettre en place un nouveau type de licence de distribution appelée GPL (pour General Public License), utilisant le principe du copyleft par opposition au copyright des licences propriétaires. La description complète de la licence est assez longue et disponible sur le site de la Free Soft-ware Foundation ( http://www.gnu.org/licenses). Il est cependant fortement recommandé de prendre connaissance de cette licence si vous désirez utiliser Linux ou un logiciel open source sous GPL pour un projet industriel. Outre les éléments légaux indispensables, cette lecture vous apportera des éléments clés pour la compréhension de la philosophie du logiciel libre.
La version la plus communément utilisée est la GPLv2 datant de 1991.
La...
TEST DE VALIDATION ET CERTIFICATION CerT.I. :
Cet article vous permet de préparer une certification CerT.I.
Le test de validation des connaissances pour obtenir cette certification de Techniques de l’Ingénieur est disponible dans le module CerT.I.
de Techniques de l’Ingénieur ! Acheter le module
Cet article fait partie de l’offre
Automatique et ingénierie système
(139 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Introduction au logiciel libre, le projet GNU
BIBLIOGRAPHIE
-
(1) - FICHEUX (P.) - Linux embarqué, Mise en place et développement. - Eyrolles (2017).
-
(2) - YAGHMOUR (K.) - Building embedded linux systems. – - O’Reilly (2008).
-
(3) - SALLY (G.) - Pro Linux embedded systems. – - Apress (2010).
-
(4) - STALLMAN (R.) - R. Stallman et la révolution du logiciel libre. – - Eyrolles (2010).
-
(5) - FICHEUX (P.) - Linux Embarqué. - Nouvelle étude de cas, traité d’Open Embedded. Eyrolles (2012).
DANS NOS BASES DOCUMENTAIRES
ANNEXES
Sites Internet
FAQ de la licence GPL http://www.gnu.org/licences/gpl-faq.html
Conférence de Richard Stallman en janvier 2010 (Eyrolles) http://www.dailymotion.com/video/xbuw37_1-5-richard-stallman-et-la-revoluti_tech
Projet Yocto http://www.yoctoproject.org
Projet Buildroot http://buildroot.org
Projet Open Wrt http://openwrt.org
Projet Busybox http://www.busybox.net
PREEMPT-RT https://rt.wiki.kernel.org
Xenomai http://www.xenomai.org
Émulateur QEMU https://www.qemu.org
Annuaire2.1 Constructeurs – Fournisseurs – Distributeurs (liste non exhaustive)Fondation Raspberry Pi https://www.raspberrypi.org
Smile ECS, ingénierie open source et Linux embarqué https://www.smile.eu/fr/offres/embarque-iot
2.2 Laboratoires – Bureaux d’études – Écoles – Centres de recherche (liste non exhaustive)ENSEIRB-MATMECA http://www.enseirb-matmeca.fr
EPITA http://www.epita.fr
HAUT DE PAGECet article fait partie de l’offre
Automatique et ingénierie système
(139 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
QUIZ ET TEST DE VALIDATION PRÉSENTS DANS CET ARTICLE
1/ Quiz d'entraînement
Entraînez vous autant que vous le voulez avec les quiz d'entraînement.
2/ Test de validation
Lorsque vous êtes prêt, vous passez le test de validation. Vous avez deux passages possibles dans un laps de temps de 30 jours.
Entre les deux essais, vous pouvez consulter l’article et réutiliser les quiz d'entraînement pour progresser. L’attestation vous est délivrée pour un score minimum de 70 %.
Cet article fait partie de l’offre
Automatique et ingénierie système
(139 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive