Windowsのレジストリって何?
システムエンジニアをやっていると、Windowsのレジストリに関わることが多少なりありました。ただ、これまで、Windowsのレジストリとは何か、を丁寧に調べた経験はなく、説明したこともありませんでした。今回は、きちんと公式情報を調べて、説明してみます。
レジストリとは何か
と言っても、公式に記載されているので、それを確認します。以下のように記載されています。つまりは、Windows上で動くソフトウェアの設定情報が管理する場所でしょう。
レジストリは、アプリケーションやシステムコンポーネントが構成データを保存および取得するための、システム定義のデータベースです。レジストリに保存されるデータは、Microsoft Windows のバージョンによって異なります。アプリケーションは、レジストリ API を使用して、レジストリデータの取得、変更、または削除を行います。
レジストリはどういう経緯で生まれたのか
ついでなので、開発経緯も調べてみましょう。以下の記事を参照しました。
私の知りたかった点のみを紹介しましょう
- 初期のWindowsでは、iniファイルが設定用のファイルとして利用されていた。
- iniファイルで設定を管理すると色々な問題が起きたので、それを解決する方法としてレジストリが導入された
- 最初に導入されたのはWindows 3.0の時代であり、1992年ごろである
はい。つまり、30年ほどの歴史を持つ仕組みであることがわかります。
INIファイルが抱えていた問題
INIファイルが抱えていた問題を改めて確認しておきましょう。
- まず、マルチユーザー環境で使いにくい。全ユーザーで設定が共通だったので誰でも他人の設定を変更できてしまった。
- 1990年代の前半は、コンピュータはまだ高価で個人が1台持てない時代でした。
- なので、大学や企業で所有しているコンピュータを複数人で利用していました。
- なので、別の人の設定を変更できるのは致命傷だったといえます。
- バイナリ形式に比べて、テキストの読み書きが遅く、非効率だった
- 当時は、今と比較して、CPU・メモリ・ストレージがすべて低性能だった、という時代は背景もあります。
- 高度なアクセス権管理がなかった
- ウイルスやマルウェアが重要な設定を変更しやすかった
- INIファイルがあちこちに散らばっていた。
- アプリケーションごとに保存場所がまちまちで、管理が極めて困難だった。
- ソフトウェアのインストール/アンインストールで、破損しやすく、ゴミも溜まりやすかった
- win.iniやsystem.iniは1ファイルで全アプリの設定を持っていて、そこに追記や削除を行なっていた
- それが壊れるとWindowsが動かなくなったり、他のアプリが動かなくなったりもした
- 各アプリのアンインストール時に設定をちゃんと削除しない問題など。
そして、レジストリになったことで、多くの問題が解決しましたが、設定のゴミが溜まる問題は今もあるようです。Claudeに聞きながら調べていると、それを解決するために、Microsoftストア経由で形式を決めてインストールやアンインストールを管理することで、この管理の問題を解決しようとしている、という状況もわかりました。


