advertisement

Comment travailler avec les logiciel Open Source

50 %
50 %
advertisement
Information about Comment travailler avec les logiciel Open Source
Technology

Published on April 29, 2008

Author: charreyre

Source: slideshare.net

Description

Ce slideshow est issu de la contribution de CIO Informatique Industrielle à la conférence / débat Comment travailler avec les logiciels Open Source, qui s'est tenue en Avril 2008 sur le salon RTS Embedded Systems
advertisement

Conférence / Débat 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 création au public de modifier cette création Selon les conditions suivantes : Paternité . Vous devez citer le nom de l'auteur original de la manière indiquée par l'auteur de l'oeuvre ou le titulaire des droits qui vous confère cette autorisation (mais pas d'une manière qui suggérerait qu'ils vous soutiennent ou approuvent votre utilisation de l'oeuvre). Pas d'Utilisation Commerciale . Vous n'avez pas le droit d'utiliser cette création à des fins commerciales. Partage des Conditions Initiales à l'Identique . Si vous modifiez, transformez ou adaptez cette création, vous n'avez le droit de distribuer la création qui en résulte que sous un contrat identique à celui-ci. A chaque réutilisation ou distribution de cette création, vous devez faire apparaître clairement au public les conditions contractuelles de sa mise à disposition. La meilleure manière de les indiquer est un lien vers cette page web . Chacune de ces conditions peut être levée 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.

Paternité-Pas d'Utilisation Commerciale-Partage des Conditions Initiales à l'Identique 2.0 France

Vous êtes libres :

de reproduire, distribuer et communiquer cette création au public

de modifier cette création

Selon les conditions suivantes :

Paternité . Vous devez citer le nom de l'auteur original de la manière indiquée par l'auteur de l'oeuvre ou le titulaire des droits qui vous confère cette autorisation (mais pas d'une manière qui suggérerait qu'ils vous soutiennent ou approuvent votre utilisation de l'oeuvre).

Pas d'Utilisation Commerciale . Vous n'avez pas le droit d'utiliser cette création à des fins commerciales.

Partage des Conditions Initiales à l'Identique . Si vous modifiez, transformez ou adaptez cette création, vous n'avez le droit de distribuer la création qui en résulte que sous un contrat identique à celui-ci.

A chaque réutilisation ou distribution de cette création, vous devez faire apparaître clairement au public les conditions contractuelles de sa mise à disposition. La meilleure manière de les indiquer est un lien vers cette page web .

Chacune de ces conditions peut être levée 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 Société d'ingénierie en informatique industrielle et technique Au service de nos clients depuis 1990 Une équipe de spécialistes pour accompagner les projets industriels ou militaires La culture des systèmes ouverts et normalisés, l'expertise de l'embarqué et du temps réel Investissement sur Linux depuis 2000 Centre de Compétences créé fin 2001 Siège à St Etienne, agence à Marseille Membre de Libertis, association de SSLL en PACA http://www.libertis.org

Société d'ingénierie en informatique industrielle et technique

Au service de nos clients depuis 1990

Une équipe de spécialistes pour accompagner les projets industriels ou militaires

La culture des systèmes ouverts et normalisés, l'expertise de l'embarqué et du temps réel

Investissement sur Linux depuis 2000 Centre de Compétences créé fin 2001

Siège à St Etienne, agence à Marseille

Membre de Libertis, association de SSLL en PACA

http://www.libertis.org

Aspects techniques Des caractéristiques séduisantes pour les besoins industriels, embarqué et temps réel : Possibilité de développement croisé Adaptation de l'OS pour devices réduits Solutions pour prise en compte de contraintes temps réel Très grand nombre d'architectures supportées Linux disponible sur les 5 architectures les plus utilisées Processeur utilisé dans les applications embarquées (Embedded Linux Market Survey 2007 LinuxDevices.com)

Des caractéristiques séduisantes pour les besoins industriels, embarqué et temps réel :

Possibilité de développement croisé

Adaptation de l'OS pour devices réduits

Solutions pour prise en compte de contraintes temps réel

Très grand nombre d'architectures supportées

Linux disponible sur les 5 architectures les plus utilisées

Processeur utilisé dans les applications embarquées

(Embedded Linux Market Survey 2007 LinuxDevices.com)

Aspects techniques Une plateforme technique arrivée à 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 réel, mais au prix de l'utilisation d'extensions si l'on vise du temps réel dur Intérêt de l'Open Source pour la possibilité d'accès aux sources Compréhension / mise au point, corrections etc... Mais ne pas tomber dans une analyse exhaustive du source (un industriel n'est pas une université !!!) Dérivation d'un projet proche de ses préoccupations ( ne pas réinventer la roue ) Si dérivation, attention au respect des licences (GPL)

Une plateforme technique arrivée à 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 réel, mais au prix de l'utilisation d'extensions si l'on vise du temps réel dur

Intérêt de l'Open Source pour la possibilité d'accès aux sources

Compréhension / mise au point, corrections etc...

Mais ne pas tomber dans une analyse exhaustive du source (un industriel n'est pas une université !!!)

Dérivation d'un projet proche de ses préoccupations ( ne pas réinventer la roue )

Si dérivation, attention au respect des licences (GPL)

Aspects techniques Mais : Pas de fournisseur attitré vers qui se tourner en cas de problème (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 réduites) Bases applicatives (busybox, kits embarqués libres ou propriétaires, ....) IHM (Qt, MicroWindows/NanoX, ...) Eventuellement extensions temps réel (RTAI, Xenomai, ...) Qu'il s'agit d'assembler dans un ensemble cohérent, votre application En respectant diverses licences (GPL, LGPL, FreeBSD, licences duales etc....)

Mais :

Pas de fournisseur attitré vers qui se tourner en cas de problème (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 réduites)

Bases applicatives (busybox, kits embarqués libres ou propriétaires, ....)

IHM (Qt, MicroWindows/NanoX, ...)

Eventuellement extensions temps réel (RTAI, Xenomai, ...)

Qu'il s'agit d'assembler dans un ensemble cohérent, votre application

En respectant diverses licences (GPL, LGPL, FreeBSD, licences duales etc....)

Focus : la gestion des évolutions Politique de versions : Ne pas courir systématiquement derrière la nouveauté Attendre des versions de kernel mineure suffisamment stables (> 15) Geler au maximum une version validée, et n'en changer qu'en cas de bug bloquant Grâce à l'Open Source, possibilité de considérer tous les ingrédients logiciels comme partie prenante du projet : archivage et gestion globaux En cas de bug bloquant, plusieurs possibilités : Correction par soi même à partir des sources Application sélective de patch(s) pour corriger localement le bug Changement global de version (seule stratégie en général possible avec un RTOS)

Politique de versions :

Ne pas courir systématiquement derrière la nouveauté

Attendre des versions de kernel mineure suffisamment stables (> 15)

Geler au maximum une version validée, et n'en changer qu'en cas de bug bloquant

Grâce à l'Open Source, possibilité de considérer tous les ingrédients logiciels comme partie prenante du projet : archivage et gestion globaux

En cas de bug bloquant, plusieurs possibilités :

Correction par soi même à partir des sources

Application sélective de patch(s) pour corriger localement le bug

Changement global de version (seule stratégie en général possible avec un RTOS)

Les licences Préambule : les explications ci après visent à éclairer le lecteur. N'étant pas juristes, elles ne doivent pas être considérées comme des garanties fournis par CIO sur le cadre juridique. Dans tous les cas, s'appuyer sur un juriste en cas de doute.

Préambule : les explications ci après visent à éclairer le lecteur.

N'étant pas juristes, elles ne doivent pas être considérées 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 libertés suivantes : Liberté d’exécution Liberté d'accès 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 exécutable : fournir les sources de la librairie linkée, mais pas forcément ceux de votre programme Modification de la librairie elle même, celle ci doit rester LGPL (donc sources de la librairie modifiée fournis, que le link soit statique ou dynamique) La glibc est LGPL

La licence GPL offre les libertés suivantes :

Liberté d’exécution

Liberté d'accès 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 exécutable : fournir les sources de la librairie linkée, mais pas forcément ceux de votre programme

Modification de la librairie elle même, celle ci doit rester LGPL (donc sources de la librairie modifiée fournis, que le link soit statique ou dynamique)

La glibc est LGPL

Les licences Le kernel est fourni sous GPL Les développements et drivers statiques du kernel sont automatiquement GPL Des drivers dynamiques propriétaires sont « tolérés » : Ces drivers ne doivent pas tirer partie du kernel Linux mais seulement utiliser le mécanisme de load / unload des modules Ouverture de L. Torvalds pour faciliter la création de drivers pour certains matériels Des débats enflammés sur les mailing lists relatives au kernel, tendant à demander que tout développement kernel soit GPL D'ores et déjà, le kernel détecte les modules propriétaires Seront ils interdit un jour ?

Le kernel est fourni sous GPL

Les développements et drivers statiques du kernel sont automatiquement GPL

Des drivers dynamiques propriétaires sont « tolérés » :

Ces drivers ne doivent pas tirer partie du kernel Linux mais seulement utiliser le mécanisme de load / unload des modules

Ouverture de L. Torvalds pour faciliter la création de drivers pour certains matériels

Des débats enflammés sur les mailing lists relatives au kernel, tendant à demander que tout développement kernel soit GPL

D'ores et déjà, le kernel détecte les modules propriétaires

Seront ils interdit un jour ?

Les licences Qu'impose la GPL ? De fournir le code (ou donner moyen d'y accéder) avec les exécutables Cela touche donc seulement ceux à qui vous distribuez l'exécutable (vos clients) Mais rien n'empêche ceux ci de les distribuer largement (site Web par ex.) Manque de maturité dans certaines sociétés par rapport à la problématique des licences N'hésitez pas à faire appel à un juriste spécialisé en cas de doute

Qu'impose la GPL ?

De fournir le code (ou donner moyen d'y accéder) avec les exécutables

Cela touche donc seulement ceux à qui vous distribuez l'exécutable (vos clients)

Mais rien n'empêche ceux ci de les distribuer largement (site Web par ex.)

Manque de maturité dans certaines sociétés par rapport à la problématique des licences

N'hésitez pas à faire appel à un juriste spécialisé en cas de doute

Les licences Embedded Linux Market Survey 2007 - LinuxDevices.com

Embedded Linux Market Survey 2007 - LinuxDevices.com

Aspects économiques Pas de royaltie pour le déploiement, donc très grand intérêt pour les marchés de masse (boxes, téléphonie, routeurs, smart devices etc...) Nombreux outils de développement 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 stratégie

Pas de royaltie pour le déploiement, donc très grand intérêt pour les marchés de masse (boxes, téléphonie, routeurs, smart devices etc...)

Nombreux outils de développement 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 stratégie

Aspects économiques Prendre en compte des coûts d'accès à une nouvelle technologie: Formation des équipes de développement Identification des solutions et des projets (plutôt 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  surcoût potentiel Faire appel au support de la communauté, en général excellent Renvoyer l'ascenceur vers la communauté (signalement de bugs, patches, etc....) Budgétiser un minimum de temps consacré au suivi des évolutions des projets (il n'y aura pas de commercial qui vienne vous solliciter)

Prendre en compte des coûts d'accès à une nouvelle technologie:

Formation des équipes de développement

Identification des solutions et des projets (plutôt 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  surcoût potentiel

Faire appel au support de la communauté, en général excellent

Renvoyer l'ascenceur vers la communauté (signalement de bugs, patches, etc....)

Budgétiser 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 : redéploiement de coûts d'achats récurrents (outil de développement + maintenance + run time), vers des coûts d'acquisition de compétences : Le surcoût initial s'estompe avec le temps, jusqu'à disparaître Investir dans son capital humain n'est il pas plus rentable que d'investir dans des achats de produits ? L'accompagnement par un spécialiste peut accélérer la période de transition, et le Time to Market d'un projet

La bonne nouvelle : redéploiement de coûts d'achats récurrents (outil de développement + maintenance + run time), vers des coûts d'acquisition de compétences :

Le surcoût initial s'estompe avec le temps, jusqu'à disparaître

Investir dans son capital humain n'est il pas plus rentable que d'investir dans des achats de produits ?

L'accompagnement par un spécialiste peut accélérer la période de transition, et le Time to Market d'un projet

Pour aller plus loin Pour toute information complémentaire : Visitez notre site Web http://www.cioinfoindus.fr Contactez nous : Tél : 04 95 05 19 41 Mail : mailto:christian.charreyre@cioinfoindus.fr

Pour toute information complémentaire :

Visitez notre site Web http://www.cioinfoindus.fr

Contactez nous :

Tél : 04 95 05 19 41

Mail : mailto:christian.charreyre@cioinfoindus.fr

Questions ?

Questions ?

Add a comment

Related presentations

Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...

In this presentation we will describe our experience developing with a highly dyna...

Presentation to the LITA Forum 7th November 2014 Albuquerque, NM

Un recorrido por los cambios que nos generará el wearabletech en el futuro

Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...

Microsoft finally joins the smartwatch and fitness tracker game by introducing the...

Related pages

Comment une filière s'est structurée - Guide Open Source

... agissant dans le logiciel libre et open source. Elles ont des intérêts multiples à travailler ensemble. Les entreprises du ... avec les pouvoirs ...
Read more

⭐Comment travailler avec les logiciels Open Source

Conférence / Débat C. Charreyre Comment travailler avec les logiciels Open Source Conférence / Débat - RTS Avril Licence Paternité-Pas d'utilisation ...
Read more

Foire aux questions sur l'open source et l ...

Les protocoles qui définissent comment les ... les développeurs open source, le logiciel est ... avec les communautés open source.
Read more

Comment travailler ensemble ? - Libre Expert - Services ...

Comment travailler ensemble ? À propos ... et cherche la meilleure solution Open Source avec ... des élèves dans les établissements scolaires avec GEPI.
Read more

Comment travailler avec les CSS dans Nvu - sedattekin.com

Comment travailler avec les CSS dans Nvu. NVU est un éditeur HTML WYSIWYG open source qui sert à créer des ... Lorsque vous avez le logiciel ...
Read more

Logiciel libre = Logiciel Open source - CCM - Comment Ça ...

Un logiciel libre est la même chose qu'un logiciel open-source FAUX ... tous les logiciels «open source ... de travailler dessus. L'Open Source ...
Read more

Pourquoi l'expression « logiciel libre » est meilleure qu ...

La définition officielle de « logiciel open source ... à faire avec ce code. Bien sûr, les gens de l'open source ont ... et travailler avec eux ...
Read more

Le Logiciel Libre : découvrir, télécharger des logiciels ...

Le site lelogiciellibre.net est orienté Open Source, aussi appelé logiciel ... une non compatibilité avec les ... avec eux Le Logiciel Libre a ...
Read more

Comment utiliser Word pour travailler sur de longs documents

Travailler avec de longs documents. Forums; ... Libres & Open Source; ... vous devrez travailler avec les styles.
Read more