ICDロゴ

ハイブ (hive)

最終更新日: 2001/06/18

 Windows OS(Windows 9x、Windows NT、Windows 2000、Windows CE)が各種のシステム設定などを記録するレジストリにおいて、ある特定の情報に関するレジストリのセクションを指すもの。レジストリでは、各種の情報がキー、サブキー、値と階層的に管理されている。ハイブは、ハードウェア設定やソフトウェア設定、セキュリティ設定など、レジストリに保存される情報のうち、特定分野に関する一連の情報を識別するセクションを意味する。「hive」は「ミツバチの巣箱」という意味で、情報を格納する各レジストリ セクションが、あたかもハチの巣のようであることに因んでマイクロソフトのプログラマがこのように命名した。

 たとえばレジストリに格納される情報は、次のようになっている。

 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\
Control\ComputerName\ComputerName

 これはコンピュータ名を格納したレジストリの値で、「HKEY_LOCAL_MACHINE」はキー(key)、これ以下の「SYSTEM\CurrentControlSet\Control\ComputerName」はサブ キー(subkey)、「ComputerName」は値(value)で、この例では「DAPC01」という文字列が格納されている。つまりレジストリの階層構造をファイル システムの改造構造に置き換えて考えれば、キーはルート ディレクトリ、サブ キーはサブ ディレクトリ、値はファイルということになる。ただし階層的に管理する点は共通だが、レジストリ キーや値は、Windows 9xやWindows 2000など、OS間でそれぞれ異なっている。

 レジストリでは、このような階層構造によって各種の情報を格納している。ここで、特定分野に関する一連の値は、ハイブとしてまとめられ、1つのファイルと.logファイルとしてバックアップされる。これらのファイルは、たとえばWindows 2000なら、%systemroot%\System32\Configフォルダや%systemroot%Profeils\<ユーザー名>のフォルダなどに格納されている。各ハイブとファイルの関係は次のようなものだ(Windows 2000の場合)。

 「HKEY_LOCAL_MACHINE\SAM」ハイブ→Sam、Sam.log、Sam.savファイル

 「HKEY_LOCAL_MACHINE\Security」ハイブ→Security、Security.log、Security.savファイル

 「HKEY_LOCAL_MACHINE\Software」ハイブ→Software、Software.log、Software.savファイル

 「HKEY_LOCAL_MACHINE\System」ハイブ→System、System.alt、System.log、System.savファイル

 「HKEY_CURRENT_CONFIG 」ハイブ→System、System.alt、System.log、System.savファイル

 「HKEY_USERS\.DEFAULT」ハイブ→Default、Default.log、Default.savファイル

特定のハイブとは無関係のファイル→Userdiff、Userdiff.logファイル

 「HKEY_CURRENT_USER」ハイブ→Ntuser.dat、Ntuser.dat.logファイル

 このうちデフォルトでは、HKEY_CURENT_USERを除くすべてのハイブは%systemroot%\System32\Configフォルダに格納される。%systemroot%Profeils\<ユーザー名>のフォルダには、そのコンピュータの各ユーザーに関するプロファイルが格納される。

 文献などによっては、特定のキーとサブキーで識別される一連の値を指して「ハイブ」と呼んでいるものもあるようだが、本来ハイブとは、このようにレジストリの内部的な構造を指す用語であり、このような使い方は厳密には正しくない。

 なお、前出のハイブを構成するファイルは、通常のファイルなので、他のコンピュータにコピーしたり、移動したりすることが可能である。ただしシステムの稼働中、これらのファイルはレジストリによってロックされているので、値の編集にはレジストリ エディタを使用しなければならない。

Copyright (C) 2000-2007 Digital Advantage Corp.

アイティメディアの提供サービス

キャリアアップ