ネームスペースとはなにか

Windows 95の勉強をしていたら「ネームスペース」という単語が出てきました。これは,何を意味するのでしょうか。


ネームスペースは言葉のとおり,名前を保存する領域のことを示します。ファイルシステムに例えると,ファイル全体をクラスタという単位に分割してハードディスク上の空いている領域に保存し,その場所を32バイトのディレクトリエントリ(8+3形式のファイル名,アトリビュート,ファイルの先頭開始クラスタ)に格納しています。
 つまり,ファイルというオブジェクトに対して名前付けを行い,付けられた名前を保存する領域のことをネームスペースという表現で表しているわけです。
 DIRコマンドなどで表示される一覧は「ファイルに対するネームスペースを表示している」といってもいいでしょう。
 Windows 95の場合はこれだけでなく,OS上で表されるすべてのオブジェクトに対して階層型構造を持った名前付けが行われています。その代表格として挙げられるのがレジストリファイルです。レジストリはご存じのように,Windows 95が動作するうえで必要な情報(オブジェクト)を格納した領域であり,ハードウェアの構成情報はもちろんのこと,ソフトウェアの登録情報,拡張子に対するアプリケーションの関連付けなどが記録されたものです。
 これ以外にもメモリ上には,

・プログラムとプロセスの結び付き
・排他制御に関するセマフォとプログラム(プロセス)の結び付き
・セクション,セグメントなどのメモリの使用に関する結び付き

など,あらゆるところでオブジェクトと名前の関連付けが行われています。
 このような関連付けを格納している部分すべてをネームスペースという言葉で表現しています。
(三谷直之)