Indholdsfortegnelse:
- Definition - Hvad betyder Global Assembly Cache (GAC)?
- Techopedia forklarer Global Assembly Cache (GAC)
Definition - Hvad betyder Global Assembly Cache (GAC)?
Global Assembly Cache (GAC) er en mappe i Windows-biblioteket til at gemme .NET-samlingerne, der specifikt er udpeget til at blive delt af alle applikationer, der udføres på et system.
Begrebet GAC er resultatet af .NET-arkitekturen, hvis design adresserer spørgsmålet om "DLL helvede", der eksisterede i COM (Component Object Model). I modsætning til i COM er der ikke behov for, at samlingen i GAC registreres, før den bruges. Hver samling er tilgængelig globalt uden nogen konflikt ved at identificere dets navn, version, arkitektur, kultur og offentlig nøgle.
Techopedia forklarer Global Assembly Cache (GAC)
GAC er en maskindækkende kodecache, der bruges til side-ved-side-udførelse af samlinger. GAC implementerer funktionen i delt bibliotek, hvor forskellige applikationer genbruger koden, der er placeret i filerne placeret i en fælles mappe. I .NET 4.0 er dens standardplacering:% windir% \ Microsoft.NET \ samling
GAC er også den første i søgestien, mens der indlæses en .NET-samling. Det eneste krav for, at en samling skal implementeres i GAC, er, at den skal have et stærkt navn. CLR (Common Language Runtime) henviser til en samling baseret på den specifikke version, der er nævnt af den kaldende applikation. Det virtuelle filsystem af GAC hjælper med at hente den version-specifikke samling.
De to værktøjer, der er relateret til GAC, er GAC Tool (gacutil.exe) og Assembly Cache Viewer (shfusion.dll). GAC-værktøjet bruges til at kontrollere for eksistensen af samling, registrere en delt samling, se og manipulere indholdet af GAC osv. Som en systemmappe kræver det administratorrettigheder for at blive brugt. Assembly Cache Viewer bruges til at vise detaljerne (version, kultur osv.), Der er knyttet til samlingerne indeholdt i cachen.
GAC giver fordelene ved kodegenanvendelse, filsikkerhed (på grund af dens installation i 'systemroot'-biblioteket, og sletning sker derfor kun af brugere med administratorrettigheder), eksekvering side om side (tillader flere versioner af en samling vedligeholdt i den samme mappe ), etc.
En af ulemperne ved at bruge GAC er, at versionen af .NET Framework, der er installeret i systemet, hvor GAC bruges, og den, der bruges til at kompilere applikationen, skal være den samme. Der kan heller ikke bruges stærke navne på samlinger (som kode fra tredjepart), som samlingerne, der befinder sig i GAC-mappen, afhænger af.
