Post on 16-Apr-2017
Confrence / Dbat
Comment travailler avec les logiciels Open Source
C. Charreyre
Licence
Paternit-Pas d'Utilisation Commerciale-Partage des Conditions Initiales l'Identique 2.0 France
Vous tes libres :
de reproduire, distribuer et communiquer cette cration au public
de modifier cette cration
Selon les conditions suivantes :
Paternit. Vous devez citer le nom de l'auteur original de la manire indique par l'auteur de l'oeuvre ou le titulaire des droits qui vous confre cette autorisation (mais pas d'une manire qui suggrerait qu'ils vous soutiennent ou approuvent votre utilisation de l'oeuvre).
Pas d'Utilisation Commerciale. Vous n'avez pas le droit d'utiliser cette cration des fins commerciales.
Partage des Conditions Initiales l'Identique. Si vous modifiez, transformez ou adaptez cette cration, vous n'avez le droit de distribuer la cration qui en rsulte que sous un contrat identique celui-ci.
A chaque rutilisation ou distribution de cette cration, vous devez faire apparatre clairement au public les conditions contractuelles de sa mise disposition. La meilleure manire de les indiquer est un lien vers cette page web.
Chacune de ces conditions peut tre leve si vous obtenez l'autorisation du titulaire des droits sur cette oeuvre.
Rien dans ce contrat ne diminue ou ne restreint le droit moral de l'auteur ou des auteurs.
CIO Informatique Industrielle
Socit d'ingnierie en informatique industrielle et technique
Au service de nos clients depuis 1990
Une quipe de spcialistes pour accompagner les projets industriels ou militaires
La culture des systmes ouverts et normaliss, l'expertise de l'embarqu et du temps rel
Investissement sur Linux depuis 2000
Centre de Comptences cr fin 2001
Sige St Etienne, agence Marseille
Membre de Libertis, association de SSLL en PACA
http://www.libertis.org
Aspects techniques
Des caractristiques sduisantes pour les besoins industriels, embarqu et temps rel :
Possibilit de dveloppement crois
Adaptation de l'OS pour devices rduits
Solutions pour prise en compte de contraintes temps rel
Trs grand nombre d'architectures supportes
Linux disponible sur les 5 architectures les plus utilises
Processeur utilis dans les applications embarques
(Embedded Linux Market Survey 2007 LinuxDevices.com)
Aspects techniques
Une plateforme technique arrive maturit
Pour l'embarqu
Support de multiples architectures (NEW : AVR32 depuis 2.6.20)
Possibilit de viser quelques Mo de Flash et de RAM (ex: 8 Mo Flash/16 Mo RAM)
Pour le temps rel, mais au prix de l'utilisation d'extensions si l'on vise du temps rel dur
Intrt de l'Open Source pour la possibilit d'accs aux sources
Comprhension / mise au point, corrections etc...
Mais ne pas tomber dans une analyse exhaustive du source (un industriel n'est pas une universit !!!)
Drivation d'un projet proche de ses proccupations (ne pas rinventer la roue)
Si drivation, attention au respect des licences (GPL)
Aspects techniques
Mais :
Pas de fournisseur attitr vers qui se tourner en cas de problme (impact psychologique chez les clients)
Un monde foisonnant aux multiples sources :
Bootloaders (UBoot, RedBoot, LILO, Grub, ...)
Kernel (kernel.org, fournisseur hardware, ...)
Librairies basiques (glibc ou ses altenatives rduites)
Bases applicatives (busybox, kits embarqus libres ou propritaires, ....)
IHM (Qt, MicroWindows/NanoX, ...)
Eventuellement extensions temps rel (RTAI, Xenomai, ...)
Qu'il s'agit d'assembler dans un ensemble cohrent, votre application
En respectant diverses licences (GPL, LGPL, FreeBSD, licences duales etc....)
Focus : la gestion des volutions
Politique de versions :
Ne pas courir systmatiquement derrire la nouveaut
Attendre des versions de kernel mineure suffisamment stables (> 15)
Geler au maximum une version valide, et n'en changer qu'en cas de bug bloquant
Grce l'Open Source, possibilit de considrer tous les ingrdients logiciels comme partie prenante du projet : archivage et gestion globaux
En cas de bug bloquant, plusieurs possibilits :
Correction par soi mme partir des sources
Application slective de patch(s) pour corriger localement le bug
Changement global de version (seule stratgie en gnral possible avec un RTOS)
Les licences
Prambule : les explications ci aprs visent clairer le lecteur.
N'tant pas juristes, elles ne doivent pas tre considres comme des garanties fournis par CIO sur le cadre juridique.
Dans tous les cas, s'appuyer sur un juriste en cas de doute.
Les licences
La licence GPL offre les liberts suivantes :
Libert dexcution
Libert d'accs au source fin d'tude ou de modification
Libert de redistribution, tel quel ou modifi
La licence GPL est contaminante :
Un code qui utilise du code GPL (link) est automatiquement GPL
La licence LGPL autorise se linker une librairie LGPL sans tre GPL :
Link statique dans votre excutable : fournir les sources de la librairie linke, mais pas forcment ceux de votre programme
Modification de la librairie elle mme, celle ci doit rester LGPL (donc sources de la librairie modifie fournis, que le link soit statique ou dynamique)
La glibc est LGPL
Les licences
Le kernel est fourni sous GPL
Les dveloppements et drivers statiques du kernel sont automatiquement GPL
Des drivers dynamiques propritaires sont tolrs :
Ces drivers ne doivent pas tirer partie du kernel Linux mais seulement utiliser le mcanisme de load / unload des modules
Ouverture de L. Torvalds pour faciliter la cration de drivers pour certains matriels
Des dbats enflamms sur les mailing lists relatives au kernel, tendant demander que tout dveloppement kernel soit GPL
D'ores et dj, le kernel dtecte les modules propritaires
Seront ils interdit un jour ?
Les licences
Qu'impose la GPL ?
De fournir le code (ou donner moyen d'y accder) avec les excutables
Cela touche donc seulement ceux qui vous distribuez l'excutable (vos clients)
Mais rien n'empche ceux ci de les distribuer largement (site Web par ex.)
Manque de maturit dans certaines socits par rapport la problmatique des licences
N'hsitez pas faire appel un juriste spcialis en cas de doute
Les licences
Embedded Linux Market Survey 2007 - LinuxDevices.com
Aspects conomiques
Pas de royaltie pour le dploiement, donc trs grand intrt pour les marchs de masse (boxes, tlphonie, routeurs, smart devices etc...)
Nombreux outils de dveloppement gratuits, et de grande qualit:
IDE Eclipse + CDT
Documentation Doxygen
Gestion de version cvs, svn etc....
....
Pas de risque li l'volution commerciale d'un fournisseur de technologie cl :
Rachat
Changement de stratgie
Aspects conomiques
Prendre en compte des cots d'accs une nouvelle technologie:
Formation des quipes de dveloppement
Identification des solutions et des projets (plutt que fournisseurs) utiliser, et de leur niveau de maturit
Tenir compte d'un niveau de documentation parfois moindre que dans un produit commercial classique :
Remplacement de la documentation absente par une analyse du code source surcot potentiel
Faire appel au support de la communaut, en gnral excellent
Renvoyer l'ascenceur vers la communaut (signalement de bugs, patches, etc....)
Budgtiser un minimum de temps consacr au suivi des volutions des projets (il n'y aura pas de commercial qui vienne vous solliciter)
Aspects conomiques
La bonne nouvelle : redploiement de cots d'achats rcurrents (outil de dveloppement + maintenance + run time), vers des cots d'acquisition de comptences :
Le surcot initial s'estompe avec le temps, jusqu' disparatre
Investir dans son capital humain n'est il pas plus rentable que d'investir dans des achats de produits ?
L'accompagnement par un spcialiste peut acclrer la priode de transition, et le Time to Market d'un projet
Pour aller plus loin
Pour toute information complmentaire :
Visitez notre site Web http://www.cioinfoindus.fr
Contactez nous :
Tl : 04 95 05 19 41
Mail : mailto:christian.charreyre@cioinfoindus.fr
Questions ?
texte du titre
Cliquez pour diter le format du plan de texte
Second niveau de plan
Troisime niveau de plan
Confrence / Dbat - RTS 2008 - 3 Avril 2008