글로벌 어셈블리 캐시 (GAC)

작가: Peter Berry
창조 날짜: 19 팔월 2021
업데이트 날짜: 11 할 수있다 2024
Anonim
GAC 란 무엇이며 GAC에 어셈블리를 설치하는 방법과시기
동영상: GAC 란 무엇이며 GAC에 어셈블리를 설치하는 방법과시기

콘텐츠

정의-GAC (Global Assembly Cache) 란 무엇입니까?

GAC (전역 어셈블리 캐시)는 시스템에서 실행되는 모든 응용 프로그램에서 공유하도록 특별히 지정된 .NET 어셈블리를 저장하기위한 Windows 디렉터리의 폴더입니다.


GAC의 개념은 COM (Component Object Model)에 존재하는 "DLL 지옥"문제를 해결하는 .NET 아키텍처의 결과입니다. COM과 달리 GAC의 어셈블리는 사용하기 전에 등록 할 필요가 없습니다. 각 어셈블리는 이름, 버전, 아키텍처, 문화 및 공개 키를 식별하여 충돌없이 전 세계적으로 액세스됩니다.

Microsoft Azure 및 Microsoft 클라우드 소개 | 이 가이드를 통해 클라우드 컴퓨팅에 관한 모든 내용과 클라우드에서 비즈니스를 마이그레이션하고 운영하는 데 Microsoft Azure가 어떻게 도움이되는지 알아 봅니다.

Techopedia는 GAC (Global Assembly Cache)를 설명합니다.

GAC는 어셈블리를 나란히 실행하는 데 사용되는 시스템 차원의 코드 캐시입니다. GAC는 다른 응용 프로그램이 공통 폴더에있는 파일에있는 코드를 재사용하는 공유 라이브러리 기능을 구현합니다. .NET 4.0에서 기본 위치는 % windir % Microsoft.NET assembly입니다.

GAC는 .NET 어셈블리를로드하는 동안 검색 경로에서 첫 번째입니다. GAC에 배포 할 어셈블리의 유일한 요구 사항은 강력한 이름을 가져야한다는 것입니다. CLR (공용 언어 런타임)은 호출 응용 프로그램에서 언급 한 특정 버전을 기반으로하는 어셈블리를 나타냅니다. GAC의 가상 파일 시스템은 버전 별 어셈블리를 가져 오는 데 도움이됩니다.

GAC와 관련된 두 가지 도구는 GAC 도구 (gacutil.exe)와 어셈블리 캐시 뷰어 (shfusion.dll)입니다. GAC 도구는 어셈블리 존재를 확인하고 공유 어셈블리를 등록하고 GAC의 내용을보고 조작하는 데 사용됩니다. 시스템 폴더이기 때문에 관리자 권한이 필요합니다. 어셈블리 캐시 뷰어는 캐시에 포함 된 어셈블리와 관련된 세부 정보 (버전, 문화 등)를 표시하는 데 사용됩니다.

GAC는 코드 재사용, 파일 보안 ( 'systemroot'디렉토리에 설치되어 있으므로 관리자 권한이있는 사용자 만 삭제), 단계별 실행 (동일한 폴더에서 여러 버전의 어셈블리를 유지 관리 할 수 ​​있음)의 이점을 제공합니다. ) 등

GAC 사용의 단점 중 하나는 GAC가 사용되는 시스템에 설치된 .NET Framework 버전과 응용 프로그램을 컴파일하는 데 사용되는 버전이 동일해야한다는 것입니다. 또한 GAC 폴더에있는 어셈블리가 의존하는 어셈블리 (타사 코드와 같은)에는 강력한 이름을 적용 할 수 없습니다.