グローバルアセンブリキャッシュ 【GAC】 Global Assembly Cache

概要

グローバルアセンブリキャッシュ(GAC)とは、Microsoft .NET環境においてアプリケーション間で共有される実行ファイル(アセンブリ)を管理するための保管場所。Windowsにおける共有DLLに相当する仕組みである。

.NETでは様々なプログラミング言語開発したプログラムを「アセンブリ」(assembly)と呼ばれる実行形式に変換して配布する。WindowsにおけるEXEファイルDLLファイルに相当するプログラムで、.NET実行環境によりプラットフォーム固有のコードに変換されて実行される。

アプリケーションを構成するアセンブリ群は実行環境への導入(インストール)時にシステム内に設けられたそのアプリケーション用の場所に展開されるが、様々なアプリケーションから利用される汎用的な機能を実装したアセンブリは他のアプリケーションから参照できるよう特別な場所に保管される。

その保管場所がグローバルアセンブリキャッシュで、Windowsの.NET Framework 4の場合は「システムディレクトリ¥Microsoft.NETassembly」(.NET Framework 3以前では「システムディレクトリ¥assembly」だった)となっている。アセンブリの登録や削除は単純なファイルコピーではなく、インストーラの機能か専用のユーティリティ(gacutil.exeWindowsエクスプローラ拡張など)でう。

グローバルアセンブリキャッシュは管理下のアセンブリの名前、バージョン、公開キートークン、対象CPUなどの情報を把握しており、同じ名前でバージョンが異なるアセンブリも適切に区別して保管することができる。従来のWindows環境で共有DLLバージョン不整合に起因する不具合、いわゆる「DLL地獄」のような状態に陥らないよう配慮されている。

(2023.3.1更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる