URL: https://linuxfr.org/news/lancement-de-la-branche-software-toolchain-de-l-open-compute-project Title: Lancement de la branche « Software Toolchain » de l’Open Compute Project Authors: vejmarie Anonyme, Davy Defaud, BAud, Nils Ratusznik, Benoît Sibaud et ZeroHeure Date: 2016年12月03日T09:41:52+01:00 License: CC By-SA Tags: open_compute_project et open_compute Score: 18 Dans le cadre du projet _Open Compute_ qui vise à définir des conceptions ouvertes de matériel, une avancée importante a été réalisée avec la perspective d’utiliser une chaîne d’outils logiciels de conception ouverte, dont les implémentations de référence seront faites en utilisant des logiciels libres, mettant fin au problème pécuniaire de l’utilisation des fichiers aux formats propriétaires (et ouvrant des perspectives d’audit communautaire et d’utilisation de méthodes formelles pour prouver la validité de la conception). Sont concernés notamment : la conception électronique et mécanique, l’affichage sur le Web de contenus 3D, de données de type CAO électronique, de résultats de simulations physiques (analyse thermique, analyse mécanique...), etc. Toute aide sera bienvenue. Nous réaliserons une démonstration lors de l’évènement _Open Compute Summit_ — les 8 et 9 mars 2017 à Santa Clara, en Californie — où nous emmènerons les meilleurs contributeurs. ---- [Journal à l’origine de la dépêche](http://linuxfr.org/users/vejmarie/journaux/lancement-du-projet-open-compute-toolchain) [Annonce du lancement du sous‐groupe « Software Toolchain » de l’Open Compute Project](http://lists.opencompute.org/pipermail/opencompute-server/2016-November/000403.html) ---- Comme vous le savez, je suis impliqué dans le projet _Open Compute_ (dit OCP, pour « _Open Compute Project_ » — site [_www.opencompute.org_](http://www.opencompute.org/)). Ce projet est présenté — en reprenant les termes de la page d’accueil — comme consistant à ré‐imaginer le matériel informatique, le rendant plus efficace, flexible et extensible. Rassemblant notamment des ténors du marché, le projet est annoncé comme visant à ouvrir la boîte noire des infrastructures informatiques propriétaires pour obtenir plus de choix, de la personnalisation et une réduction des coûts. Je suis aussi contributeur au projet FreeCAD ([_www.freecadweb.org_](http://www.freecadweb.org)) -- [[FreeCAD]], ainsi que [[KiCad]], sont majoritairement développés en Europe -- et nous avons œuvré pour éduquer la communauté _Open Compute_ aux problèmes liés à l’utilisation des fichiers aux formats propriétaires pour les membres de la communauté qui n’ont pas les moyens de s’offrir des licences logicielles propriétaires qui valent une fortune (et je mesure mon propos). Dans le cadre du projet _Open Compute_, notre implication est passée à un niveau supérieur la semaine dernière suite a l’[annonce](http://lists.opencompute.org/pipermail/opencompute-server/2016-November/000403.html) (en anglais) du lancement du sous‐groupe « [_Software Toolchain_](http://www.opencompute.org/wiki/Server/Toolchain) » (avec notamment l’ouverture de la liste de discussion _[opencompute-toolchain](http://lists.opencompute.org/mailman/listinfo/opencompute-toolchain)_). Nous avons réussi à franchir une étape et ça fait plaisir : l’objectif du sous‐groupe _Software Toolchain_ est de construire une chaîne d’outils logiciels de conception ouverte qui permettra aux équipes de développement de travailler de manière collaborative sur un même schéma de conception et de développer les technologies associées. Les implémentations de référence seront faites en utilisant des logiciels libres. Pour détailler un peu plus, voici un extrait significatif de l’annonce précitée, traduit en français (et enrichi de quelques liens pédagogiques) :> En créant une chaîne d’outils logiciels de conception ouverte pour des solutions de conception électrique, électronique, électromagnétique [N.D.T. : [_electrical engineering_](https://en.wikipedia.org/wiki/Electrical_engineering) renvoie généralement à ces trois domaines de la physique] et de la mécanique, le sous‐groupe _Software Toolchain_ vise à accélérer la collaboration à l’intérieur du projet _Open Compute_. Pour aider les ingénieurs à améliorer la qualité de conception et pour aider la communauté à fournir des remontées d’information efficaces, le sous‐groupe se concentrera initialement sur la définition d’API (_cf._ [[interface de programmation]]) standards pour simplifier la publication des fichiers de conception sur le Web et sur les moyens d’annoter les fichiers de conception pour fournir des remontées d’information directement via les outils de conception.> > La première implémentation sera basée sur des logiciels libres existants tels que FreeCAD et KiCaD. Cependant, l’ouverture de l’API permettra à des vendeurs de logiciel indépendants d’implémenter des fonctionnalités au sein de leurs propres applications.> > Ce sous‐groupe peut inclure des partenaires intéressés à différents domaines incluant :> > - outils d’affichage sur le web de contenus 3D ; - outils d’affichage sur le web de données du type CAO électronique (en anglais EDA pour « _Electronic Design Automation_ » -- _cf._ [[conception assistée par ordinateur pour l'électronique]]) ; - système de fichiers orienté objet en réseau ; - moteurs 3D avancés ; - outils d’affichage de résultats de simulation physique tels que l’analyse thermique, l’analyse mécanique, et bien plus à venir. Pour ceux qui veulent nous aider à faire avancer le sujet : - si vous avez des compétences à partager et ressentez le même enthousiasme que nous, n’hésitez pas à rejoindre la liste de diffusion (en anglais) ; - si déjà vous lisez cette dépêche et prenez conscience des enjeux, faites du bruit dans vos [GULL](https://fr.wikipedia.org/wiki/Groupe_d'utilisateurs_Linux "Groupe d’utilisateurs de logiciels libres") et sur les réseaux sociaux autour de cette nouvelle. :) Nous avons du boulot et nous emmènerons les meilleurs contributeurs à l'_Open Compute Summit_ (« _OCP US Summit 2017_ », les 8 et 9 mars, à Santa Clara, en Californie, aux États‐Unis d’Amérique) pour présenter la première démonstration de la chaîne d’outils logiciels libres. Naturellement, en trois mois, on ne risque pas de révolutionner la planète, mais nous ne pouvons pas louper l’événement ! Les plus gros membres du projet _Open Compute_ sont Facebook, Microsoft, Google, Intel, Rackspace, et les convaincre de considérer favorablement ces solutions a été un exercice relativement intéressant. J’espère qu’on pourra leur prouver que l’on peut construire quelque chose d’aussi innovant que _RuggedPOD_ (_cf._ le [mot‐clef « _ruggedpod_ »](http://linuxfr.org/tags/ruggedpod/public) sur _LinuxFr.org_) ! **Addendum :** Certains observateurs font remarquer que de manière générale, dans le cadre du matériel libre, la preuve formelle de code (_cf._ [[méthode formelle (informatique)]]) peut être considérée comme un atout particulièrement important du fait que des failles de sécurité dans la conception sont identifiables par des groupes malveillants de manière plus aisée qu’avec du matériel fermé, ces groupes pouvant garder pour eux leurs découvertes, de manière à les exploiter dans le secret. Ils notent que, via le projet _Software Toolchain_, s’ouvrent des perspectives d’audit communautaire renforcé du code source définissant le matériel libre (avec des outils libres) ainsi que des perspectives de production de preuve formelle appliquée aux processus logiciels — ce qui n’a de sens, en termes de confiance, que si le code source des logiciels est ouvert —, notamment : - la preuve formelle de validité des données binaires de fabrication (qui se retrouveront en entrée des machines, notamment pour la gravure des circuits intégrés, la gravure des circuits imprimés, leur percement, le positionnement des composants sur les cartes, etc.) relativement au code source définissant le matériel libre ; - la preuve formelle de validité des simulations relativement au code source définissant le matériel et aux conditions de simulation ; - la preuve formelle de validité des processus comme le routage, etc. ; - la preuve formelle de validité du code source définissant le matériel libre par rapport aux spécifications ; - voire d’autres preuves formelles comme la robustesse du code définissant le matériel (que ce soit le code binaire de fabrication, le code source, ou même les spécifications) relativement à des types d’attaques répertoriés. De plus, avec la libération des fichiers de conception matérielle viendra la capacité accrue de répliquer l’expérience en produisant des versions alternatives et dérivées. Or, la sécurité est influencée positivement par la diversité. Ceci dit, pour favoriser la diversité en conservant le bénéfice de la preuve formelle de code — sans quoi l’avantage de la diversité pourrait être compensé par la perte de couverture de la preuve de code —, il sera avantageux de privilégier des approches génériques de preuve de code dans la mesure du possible (ce qui est également d’un intérêt scientifique certain). Certains ajoutent qu’il est déjà acquis que la direction prise est la bonne, même si, d’une part, des fonctions parasites resteront intégrables par des fabricants malveillants — par exemple, des chevaux de Troie matériels furtifs, réalisés au niveau du dopage du substrat en silicium des circuits intégrés (_cf._ ce [commentaire](http://linuxfr.org/users/martoni/journaux/hifive1-un-arduino-a-320mhz-entierement-libre-pour-2017#comment-1683655) de _Misc<_ référençant des résultats de recherches) —, incitant avantageusement la communauté à superviser la fabrication et, même si, d’autre part, la substitution malveillante du matériel restera possible pendant la phase de distribution, incitant là aussi la communauté à organiser une forme de supervision.