Accueil Dans les nouvelles Qu'est-ce que le Global Assembly Cache (GAC)? - définition de techopedia

Qu'est-ce que le Global Assembly Cache (GAC)? - définition de techopedia

Table des matières:

Anonim

Définition - Que signifie Global Assembly Cache (GAC)?

Le Global Assembly Cache (GAC) est un dossier dans le répertoire Windows pour stocker les assemblys .NET qui sont spécifiquement désignés pour être partagés par toutes les applications exécutées sur un système.

Le concept de GAC est le résultat de l'architecture .NET dont la conception répond au problème de "l'enfer des DLL" qui existait dans COM (Component Object Model). Contrairement à COM, il n'est pas nécessaire que l'assembly dans GAC soit enregistré avant son utilisation. Chaque assembly est accessible globalement sans aucun conflit en identifiant son nom, sa version, son architecture, sa culture et sa clé publique.

Techopedia explique le Global Assembly Cache (GAC)

Le GAC est un cache de code à l'échelle de la machine utilisé pour l'exécution côte à côte des assemblys. Le GAC implémente la fonctionnalité de bibliothèque partagée où différentes applications réutilisent le code placé dans les fichiers situés dans un dossier commun. Dans .NET 4.0, son emplacement par défaut est:% windir% \ Microsoft.NET \ assembly


Le GAC est également le premier dans le chemin de recherche lors du chargement d'un assembly .NET. La seule exigence pour qu'un assembly soit déployé dans GAC est qu'il doit avoir un nom fort. Le CLR (Common Language Runtime) fait référence à un assembly basé sur une version spécifique mentionnée par l'application appelante. Le système de fichiers virtuel de GAC permet de récupérer l'assembly spécifique à la version.


Les deux outils liés à GAC sont GAC Tool (gacutil.exe) et Assembly Cache Viewer (shfusion.dll). L'outil GAC est utilisé pour vérifier l'existence d'un assemblage, enregistrer un assemblage partagé, afficher et manipuler le contenu de GAC, etc. Étant un dossier système, il nécessite des privilèges d'administrateur pour être utilisé. La visionneuse de cache d'assembly est utilisée pour afficher les détails (version, culture, etc.) associés aux assemblys contenus dans le cache.


GAC offre les avantages de la réutilisation du code, de la sécurité des fichiers (en raison de son installation dans le répertoire 'systemroot' et donc de la suppression uniquement par les utilisateurs disposant de privilèges d'administrateur), de l'exécution côte à côte (permettant plusieurs versions d'un assemblage conservées dans le même dossier ), etc.


L'un des inconvénients de l'utilisation de GAC est que la version de .NET Framework installée sur le système où GAC est utilisé et celle utilisée pour compiler l'application doivent être identiques. En outre, les noms forts ne peuvent pas être appliqués aux assemblys (comme le code tiers) dont dépendent les assemblys résidant dans le dossier GAC.

Qu'est-ce que le Global Assembly Cache (GAC)? - définition de techopedia