Partager via


Limites : Processus et domaines d'application

Les systèmes d'exploitation et les environnements runtime modernes ont besoin de protéger les applications individuelles contre les défaillances d'autres applications. Les systèmes d'exploitation Microsoft Windows protègent les applications entre elles en exécutant chaque application au sein de son propre processus. Si une application connaît une défaillance pour une raison ou une autre, seul ce processus est affecté ; les applications au sein d'autres processus continuent à fonctionner. Évidemment, dans la mesure où les adresses mémoire d'un processus n'ont aucun sens dans un autre processus, l'appel de fonctions dans un processus à partir d'un autre processus peut s'avérer complexe. Marshaling est le terme utilisé pour désigner les événements qui se déroulent lorsqu'un appel et tous les arguments sont rassemblés dans un processus et désassemblés dans un autre afin de permettre le bon fonctionnement d'un appel au-delà d'une limite de processus.

Dans l'environnement managé, les domaines d'application (que vous pouvez vous représenter sous la forme de processus logiques) et les contextes fournissent isolation et sécurité à moindre coût et de meilleures possibilités de mise à l'échelle qu'un processus de système d'exploitation, en s'appuyant, entre autres, sur le fait que le code managé est de type sécurisé vérifié. Chaque application managée s'exécute dans un domaine d'application, qu'une autre application démarre un domaine en son nom ou que l'environnement hôte s'en charge. .NET Remoting fournit l'infrastructure pour communiquer entre des domaines d'application d'une manière simple, avec la protection des technologies de la sécurité.

Voir aussi

Objets accessibles à distance | Domaines d'application | Dans le .NET Framework