Un cadre modulaire pour l'informatique globale
Les progrès technologiques réalisés au niveau des réseaux de télécommunication et le développement de protocoles de communication plus efficaces conduisent à l'intégration toujours plus étroite des systèmes informatiques. Des infrastructures massives en réseau et reconfigurables dynamiquement reliant des composants mobiles hétérogènes et autonomes peuvent désormais fonctionner à partir d'informations limitées. Avec uniquement des garanties variables quant à la communication, à l'utilisation des ressources et, plus particulièrement, à la mobilité du code, ces infrastructures ont stimulé l'avènement de nouvelles techniques de développement et de déploiement d'environnements informatiques globaux. En vue de soutenir l'implémentation de langages conçus pour la programmation distribuée adoptée par ces «ordinateurs globaux», les chercheurs ont créé un cadre logiciel générique appelé IMC (Integrated Mobile Calculi). L'objectif premier des partenaires du projet MIKADO était de fournir toutes les fonctionnalités et abstractions nécessaires à des composants arbitraires pour communiquer et évoluer dans un environnement distribué. À cette fin, IMC propose des implémentations concrètes de fonctionnalités standard du cadre mobile Java, telles que la mobilité de code, la topologie de nœud, le nommage et la liaison, pour n'en citer que quelques-unes. À cet égard, IMC est simple à utiliser lorsque aucune fonction avancée spécifique n'est nécessaire. Le cadre est néanmoins ouvert à toute personnalisation requise par le système de mobilité à implémenter. L'utilisateur peut ainsi personnaliser des parties du cadre en intégrant ses propres implémentations dans toutes les interfaces utilisées au sein du logiciel IMC. Ce cadre permet aux concepteurs de plates-formes de personnaliser les protocoles de communication et les architectures en réseau. Mais il offre également des primitives aux développeurs de langage désireux de développer des supports d'exécution pour les langages orientés vers l'informatique globale. Dans le cadre d'IMC, les notions les plus récurrentes de la programmation sensible au réseau ont été regroupées afin de permettre aux développeurs de se concentrer sur les spécificités de leur système. Une version de base du logiciel IMC a été lancée dans le cadre du projet MIKADO et distribuée sous forme de logiciel libre. Depuis lors, IMC a été totalement repensé et réimplémenté dans le souci d'améliorer sa convivialité et d'offrir de nombreuses autres fonctions. Le code réel des différents composants IMC peut être obtenu via le lien suivant: http://sourceforge.net/projects/imc-fi