La portabilité d'un programme informatique est sa capacité à pouvoir être adapté plus ou moins facilement en vue de fonctionner dans différents environnements d'exécution. Les différences peuvent porter sur l'environnement matériel (processeur) comme sur l'environnement logiciel (système d'exploitation). La différence d'environnement peut également porter sur une combinaison des deux éléments. C'est le cas par exemple dans les domaines de l'informatique embarquée, des super calculateurs et des machines virtuelles. L'action de modifier un programme pour qu'il puisse s'exécuter sur un autre environnement est le portage. La notion d'environnement d'exécution désigne l'ensemble (physique ou logiciel) qui exécutera les instructions du programme. Cet environnement a différents aspects suivant le langage de programmation utilisé et le type de programme. Ainsi, l'environnement d'exécution est : le système d'exploitation pour les langages compilés ; l'interpréteur pour les langages interprétés ; la machine virtuelle pour des langages qui peuvent être pseudo-compilés comme le Java et le C# ; le navigateur web pour les applications web ; l'architecture matérielle pour les systèmes d'exploitation. Abstraction (informatique) Le niveau de portabilité d'un programme se mesure au fait qu'il utilise le plus petit dénominateur commun à plusieurs environnements. Ainsi, si une bibliothèque logicielle est disponible sur plusieurs environnements et que ce programme ne fait qu'utiliser cette dernière et non certaines fonctions spécifiques à un environnement particulier, on dit que ce programme est portable partout où cette bibliothèque est disponible. Les bibliothèques logicielles les plus courantes sont celles livrées avec les langages de programmation, que l'on appelle bibliothèques standards. C'est ainsi que si un programme utilise le langage C et uniquement sa bibliothèque standard, il pourra être porté sans difficulté, simplement en le recompilant pour tous les environnements disposant d'un compilateur C (ce qui est le cas sur la quasi-totalité des systèmes d'exploitation existants).

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Cours associés (1)
EE-310: Microprogrammed Embedded Systems
L'étudiant comprendra les architectures des systèmes embarqués microprogrammés, les architectures des microprocesseurs, hiérarchie de mémoire et les différents périphériques de Entrée/Sortie (E/S) inc

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.