柔らかい

Windowsレジストリとは何ですか?どのように機能しますか?

問題を排除するために楽器を試してください





ポストする最終更新日:2021年2月16日

Windowsレジストリは、Windowsアプリケーションの構成、値、およびプロパティのコレクションであり、単一のリポジトリに階層的に編成および保存されているWindowsオペレーティングシステムです。



新しいプログラムがWindowsシステムにインストールされるたびに、サイズ、バージョン、ストレージ内の場所などの属性を使用してWindowsレジストリにエントリが作成されます。

Windowsレジストリとは何ですか?それはどのように機能しますか



windows10 バージョン1709の機能更新プログラム

この情報はデータベースに保存されているため、オペレーティングシステムは使用されているリソースを認識しているだけでなく、特定のリソースまたはファイルが共同で使用された場合に発生する可能性のある競合を認識しているため、他のアプリケーションもこの情報の恩恵を受けることができます。存在。

コンテンツ[ 隠れる ]



Windowsレジストリとは何ですか?どのように機能しますか?

Windowsレジストリは、実際にはWindowsの動作の中心です。これは、中央レジストリのこのアプローチを使用する唯一のオペレーティングシステムです。視覚化する場合、オペレーティングシステムのすべての部分が、起動シーケンスからファイル名の名前を変更するだけの簡単なものまで、Windowsレジストリと対話する必要があります。

簡単に言えば、それは図書館のカード目録のデータベースに似たデータベースであり、レジストリのエントリはカード目録に保存されているカードのスタックのようなものです。レジストリキーはカードであり、レジストリ値はそのカードに書き込まれる重要な情報です。 Windowsオペレーティングシステムは、レジストリを使用して、システムとソフトウェアの制御と管理に使用される一連の情報を保存します。これは、PCのハードウェア情報から、ユーザー設定やファイルの種類まで、何でもかまいません。 Windowsシステムに対して行うほとんどすべての形式の構成には、レジストリの編集が含まれます。



Windowsレジストリの歴史

Windowsの初期バージョンでは、アプリケーション開発者は実行可能ファイルと一緒に別の.iniファイル拡張子を含める必要がありました。この.iniファイルには、特定の実行可能プログラムが正しく機能するために必要なすべての設定、プロパティ、および構成が含まれています。ただし、これは特定の情報の冗長性のために非常に非効率的であることが判明し、実行可能プログラムにセキュリティ上の脅威をもたらしました。その結果、標準化され、一元化された、安全なテクノロジーの新しい実装が明らかに必要でした。

Windows 3.1の登場により、この要求の最低限のバージョンは、Windowsレジストリと呼ばれるすべてのアプリケーションとシステムに共通の中央データベースで満たされました。

ただし、アプリケーションは実行可能ファイルの特定の構成情報しか保存できないため、このツールは非常に制限されていました。何年にもわたって、Windows95およびWindowsNTはこの基盤の上にさらに開発され、新しいバージョンのWindowsレジストリのコア機能として集中化が導入されました。

とはいえ、Windowsレジストリに情報を保存することは、ソフトウェア開発者にとってのオプションです。したがって、ソフトウェアアプリケーション開発者がポータブルアプリケーションを作成する場合、レジストリに情報を追加する必要はありません。構成、プロパティ、および値を含むローカルストレージを作成して、正常に出荷できます。

他のオペレーティングシステムに対するWindowsレジストリの関連性

Windowsは、中央レジストリのこのアプローチを使用する唯一のオペレーティングシステムです。視覚化する場合、オペレーティングシステムのすべての部分が、起動シーケンスからファイル名の名前変更まで、Windowsレジストリと直接対話する必要があります。

iOS、Mac OS、Android、Linuxなどの他のすべてのオペレーティングシステムは、オペレーティングシステムを構成し、オペレーティングシステムの動作を変更する方法として、引き続きテキストファイルを使用します。

ほとんどのLinuxバリアントでは、構成ファイルは.txt形式で保存されます。これは、すべての.txtファイルが重要なシステムファイルと見なされるため、テキストファイルを操作する必要がある場合に問題になります。したがって、これらのオペレーティングシステムでテキストファイルを開こうとすると、表示できなくなります。これらのオペレーティングシステムは、ネットワークカード、ファイアウォール、オペレーティングシステム、グラフィカルユーザーインターフェイス、ビデオカードインターフェイスなどのすべてのシステムファイルがに保存されるため、セキュリティ対策として非表示にしようとします。 ASCII形式。

この問題を回避するために、macOSとiOSの両方で、テキストファイル拡張子にまったく異なるアプローチを導入しました。 .plist拡張子 、これにはすべてのシステムとアプリケーション構成情報が含まれていますが、単一のレジストリを持つことの利点は、ファイル拡張子の単純な変更をはるかに上回ります。

Windowsレジストリの利点は何ですか?

オペレーティングシステムのすべての部分がWindowsレジストリと継続的に通信するため、非常に高速なストレージに保存する必要があります。したがって、このデータベースは、非常に高速な読み取りと書き込み、および効率的なストレージ用に設計されています。

レジストリデータベースを開いてサイズを確認する場合、通常は15〜20メガバイトの間でホバリングするため、常にデータベースにロードできるほど小さくなります。 (ランダムアクセスメモリ)これは偶然にも、オペレーティングシステムで利用可能な最速のストレージです。

エラー コード 10

レジストリは常にメモリにロードする必要があるため、レジストリのサイズが大きいと、他のすべてのアプリケーションをスムーズに実行したり、まったく実行したりするのに十分なスペースが残りません。これはオペレーティングシステムのパフォーマンスに悪影響を与えるため、Windowsレジストリは非常に効率的であるという主要な目的で設計されています。

同じデバイスを操作する複数のユーザーがいて、それらが使用するアプリケーションが多数ある場合、同じアプリケーションを2回または複数回再インストールすると、かなり高価なストレージが無駄になります。 Windowsレジストリは、アプリケーション構成がさまざまなユーザー間で共有されるこれらのシナリオに優れています。

これにより、使用されるストレージの合計が減るだけでなく、ユーザーは1つのインタラクションポートからアプリケーションの構成を変更できるようになります。また、ユーザーがすべてのローカルストレージの.iniファイルに手動で移動する必要がないため、時間を節約できます。

マルチユーザーシナリオは、エンタープライズセットアップでは非常に一般的です。ここでは、ユーザー特権アクセスが強く求められています。すべての情報またはリソースをすべての人と共有できるわけではないため、プライバシーベースのユーザーアクセスの必要性は、一元化されたWindowsレジストリを介して簡単に実装されました。ここで、ネットワーク管理者は、行われた作業に基づいて保留または許可する権利を留保します。これにより、ネットワーク内の複数のデバイスのすべてのレジストリへのリモートアクセスと同時に更新を実行できるため、単一のデータベースが多用途になり、堅牢になりました。

Windowsレジストリはどのように機能しますか?

手を汚す前に、Windowsレジストリの基本的な要素を調べてみましょう。

Windowsレジストリは、と呼ばれる2つの基本要素で構成されています。 レジストリキー これはコンテナオブジェクトであるか、簡単に言えば、さまざまな種類のファイルが格納されているフォルダのようなものです。 レジストリ値 これは、任意の形式のファイルのような非コンテナオブジェクトです。

また、次のことも知っておく必要があります。 Windowsレジストリキーの完全な制御または所有権を取得する方法

Windowsレジストリにアクセスする方法は?

レジストリエディタツールを使用してWindowsレジストリにアクセスし、構成できます。Microsoftには、Windowsオペレーティングシステムのすべてのバージョンに加えて、無料のレジストリ編集ユーティリティが含まれています。

このレジストリエディタにアクセスするには、にRegeditと入力します。 コマンド・プロンプト または、[スタート]メニューの[検索]ボックスまたは[ファイル名を指定して実行]ボックスに「Regedit」と入力するだけです。このエディターは、Windowsレジストリーにアクセスするためのポータルであり、レジストリーを調べて変更するのに役立ちます。レジストリは、Windowsインストールのディレクトリ内にあるさまざまなデータベースファイルによって使用される総称です。

レジストリエディタにアクセスする方法

コマンドプロンプトシフト+F10でregeditを実行します

レジストリエディタを編集しても安全ですか?

何をしているのかわからない場合は、レジストリ構成をいじくり回すのは危険です。レジストリを編集するときは常に、正しい指示に従い、変更するように指示されたものだけを変更するようにしてください。

故意または誤ってWindowsレジストリ内の何かを削除すると、システムの構成が変更され、ブルースクリーンが発生したり、Windowsが起動しなくなったりする可能性があります。

したがって、一般的には Windowsレジストリのバックアップ 変更を加える前に。あなたもすることができます システムの復元ポイントを作成する (レジストリを自動的にバックアップします)レジストリ設定を通常に戻す必要がある場合に使用できます。しかし、あなたが言われたことだけなら、それは問題ではないはずです。方法を知る必要がある場合 Windowsレジストリを復元してから、このチュートリアル 簡単に行う方法を説明します。

Windowsレジストリの構造を調べてみましょう

オペレーティングシステムのアクセス専用に存在する、アクセスできないストレージの場所にユーザーがいます。

これらのキーは、システムの起動段階でRAMにロードされ、特定の時間間隔内、または特定のシステムレベルのイベントが発生したときに常に通信されます。

これらのレジストリキーの特定の部分がハードディスクに保存されます。ハードディスクに保存されているこれらのキーは、ハイブと呼ばれます。レジストリのこのセクションには、レジストリキー、レジストリサブキー、およびレジストリ値が含まれています。ユーザーに付与されている特権のレベルに応じて、ユーザーはこれらのキーの特定の部分にアクセスすることになります。

壊れたレジストリエントリ

HKEYで始まるレジストリの階層の最上位にあるキーは、ハイブと見なされます。

エディタでは、すべてのキーを展開せずに表示すると、ハイブは画面の左側に配置されます。これらは、フォルダとして表示されるレジストリキーです。

Windowsレジストリキーとそのサブキーの構造を見てみましょう。

キー名の例– HKEY_LOCAL_MACHINE SYSTEM Input Break loc_0804

ここで、loc_0804はサブキーを参照します。Breakは、HKEY_LOCAL_MACHINEルートキーのサブキーSYSTEMを参照するサブキー入力を参照します。

Windowsレジストリの共通ルートキー

次の各キーは独自のハイブであり、最上位のキー内により多くのキーで構成されています。

私。 HKEY_CLASSES_ROOT

これは、ファイル拡張子の関連付け情報で構成されるWindowsレジストリのレジストリハイブです。 プログラム識別子 (ProgID)、インターフェイスID(IID)データ、および クラスID(CLSID)

このレジストリハイブHKEY_CLASSES_ROOTは、Windowsオペレーティングシステムで実行されるアクションまたはイベントのゲートウェイです。ダウンロードフォルダにあるいくつかのmp3ファイルにアクセスしたいとします。オペレーティングシステムはこれを介してクエリを実行し、必要なアクションを実行します。

HKEY_CLASSES_ROOTハイブにアクセスした瞬間、そのような膨大な拡張子ファイルのリストを見ると、本当に簡単に圧倒されます。ただし、これらはウィンドウを流動的に機能させるレジストリキーです。

以下は、HKEY_CLASSES_ROOTハイブレジストリキーの例の一部です。

HKEY_CLASSES_ROOT  .otf HKEY_CLASSES_ROOT  .htc HKEY_CLASSES_ROOT  .img HKEY_CLASSES_ROOT  .mhtml HKEY_CLASSES_ROOT  .png'mv-ad-box' data-slotid ='content_8_btf'>

写真などのファイルをダブルクリックして開くと、システムはHKEY_CLASSES_ROOTを介してクエリを送信し、そのようなファイルが要求されたときに何をするかについての指示が明確に示されます。そのため、システムは、要求された画像を表示するフォトビューアを開くことになります。

上記の例では、レジストリはHKEY_CLASSES_ROOT .jpg'https://docs.microsoft.com/en-us/windows/win32/sysinfo/hkey-classes-root-key'>に格納されているキーを呼び出します。 HKEY_ CLASSES_ ROOT 。画面左側のHKEY_CLASSESキーを開くとアクセスできます。

ii。 HKEY_LOCAL_MACHINE

これは、ローカルコンピューターに固有のすべての設定を格納するいくつかのレジストリハイブの1つです。これは、保存されている情報をユーザーやプログラムが編集できないグローバルキーです。このサブキーのグローバルな性質により、このストレージに格納されるすべての情報は、RAM上で継続的に実行される仮想コンテナの形式になります。ソフトウェアユーザーの構成情報の大部分がインストールされており、Windowsオペレーティングシステム自体がHKEY_LOCAL_MACHINEで占有されています。現在検出されているすべてのハードウェアは、HKEY_LOCAL_MACHINEハイブに保存されます。

また、次の方法も知っています。 レジストリを検索する際のRegedit.exeのクラッシュを修正

このレジストリキーはさらに7つのサブキーに分けられます。

skype 録音 デバイス に 問題 が あります windows10

1. SAM (セキュリティアカウントマネージャー)–ユーザーのパスワードをセキュリティで保護された形式(LMハッシュおよびNTLMハッシュ)で保存するレジストリキーファイルです。ハッシュ関数は、ユーザーのアカウント情報を保護するために使用される暗号化の形式です。

これは、システムのC: WINDOWS system32 configにあるロックされたファイルであり、オペレーティングシステムの実行中に移動またはコピーすることはできません。

Windowsは、セキュリティアカウントマネージャーのレジストリキーファイルを使用して、ユーザーがWindowsアカウントにログインしているときにユーザーを認証します。ユーザーがログインするたびに、Windowsは一連のハッシュアルゴリズムを使用して、入力されたパスワードのハッシュを計算します。入力したパスワードのハッシュが、 SAMレジストリファイル 、ユーザーは自分のアカウントにアクセスできます。これは、ほとんどのハッカーが攻撃を実行しているときに標的とするファイルでもあります。

2.セキュリティ (管理者以外はアクセスできません)–このレジストリキーは、現在のシステムにログインしている管理ユーザーのアカウントに対してローカルです。システムがいずれかの組織によって管理されている場合、ユーザーに管理アクセスが明示的に付与されていない限り、ユーザーはこのファイルにアクセスできません。管理者権限なしでこのファイルを開くと、空白になります。これで、システムが管理ネットワークに接続されている場合、このキーはデフォルトで、組織によって確立され、アクティブに管理されているローカルシステムのセキュリティプロファイルになります。このキーはSAMにリンクされているため、認証が成功すると、ユーザーの特権レベルに応じて、さまざまなローカルおよび グループポリシー 適用されます。

3.システム (重要なブートプロセスおよびその他のカーネル機能)–このサブキーには、コンピューター名、現在マウントされているハードウェアデバイス、ファイルシステム、特定のイベントで実行できる自動アクションの種類など、システム全体に関連する重要な情報が含まれます。 死のブルースクリーン CPUの過熱により、コンピュータがそのようなイベントの取り込みを自動的に開始するという論理的な手順があります。このファイルには、十分な管理者権限を持つユーザーのみがアクセスできます。システムが起動すると、これはすべてのログが動的に保存されて読み取られる場所です。コントロールセットと呼ばれる代替構成などのさまざまなシステムパラメータ。

4.ソフトウェア プラグアンドプレイドライバーなどのすべてのサードパーティソフトウェア構成は、ここに保存されます。このサブキーには、さまざまなアプリケーションやシステムインストーラーによって変更できる既存のハードウェアプロファイルにリンクされたソフトウェアとWindowsの設定が含まれています。ソフトウェア開発者は、ソフトウェアの使用時にユーザーがアクセスする情報を制限または許可することができます。これは、認証に使用されるシステム証明書を含むアプリケーションおよびシステムサービスに一般的な使用ポリシーを適用するPoliciesサブキーを使用して設定できます。 、特定のシステムまたはサービスを許可または禁止します。

5.ハードウェア これは、システムの起動中に動的に作成されるサブキーです

6.コンポーネント システム全体のデバイス固有のコンポーネント構成情報は、ここにあります

7. BCD.dat (システムパーティションの bootフォルダ内)これは、システムが読み取り、レジストリをRAMにロードすることによってシステムブートシーケンス中に実行を開始する重要なファイルです。

iii。 HKEY_CURRENT_CONFIG

このサブキーが存在する主な理由は、ビデオとネットワーク設定を保存することです。これは、解像度、リフレッシュレート、アスペクト比などのビデオカードとネットワークに関連するすべての情報である可能性があります。

また、Windowsレジストリの一部であり、現在使用されているハードウェアプロファイルに関する情報を格納するレジストリハイブでもあります。 HKEY_CURRENT_CONFIGは、実際にはHKEY_LOCAL_MACHINE SYSTEM CurrentControlSet HardwareProfiles Currentregistryキーへのポインターです。これは、HKEY_LOCAL_MACHINE SYSTEM CurrentControlSetHardwareProfilesキーの下にリストされている現在アクティブなハードウェアプロファイルへのポインターです。

したがって、HKEY_ CURRENT_CONFIGは、現在のユーザーのハードウェアプロファイルの構成を表示および変更するのに役立ちます。これらはすべて同じであるため、上記の3つの場所のいずれかで管理者として実行できます。

steam チャット 履歴

iv。 HKEY_CURRENT_USER

現在ログインしているユーザーに固有のWindowsおよびソフトウェアのストア設定と構成情報を含むレジストリハイブの一部。たとえば、レジ​​ストリキーのさまざまなレジストリ値は、HKEY_CURRENT_USERハイブコントロールのユーザーレベルの設定(キーボードレイアウト、インストールされているプリンタ、デスクトップの壁紙、ディスプレイ設定、マップされたネットワークドライブなど)にあります。

コントロールパネルのさまざまなアプレット内で構成する設定の多くは、HKEY_CURRENT_USERレジストリハイブに保存されます。 HKEY_CURRENT_USERハイブはユーザー固有であるため、同じコンピューター上で、そこに含まれるキーと値はユーザーごとに異なります。これは、グローバルな他のほとんどのレジストリハイブとは異なります。つまり、Windowsのすべてのユーザーで同じ情報を保持します。

レジストリエディタの画面の左側をクリックすると、HKEY_CURRENT_USERにアクセスできます。セキュリティ対策として、HKEY_CURRENT_USERに格納されている情報は、セキュリティ識別子としてHKEY_USERSハイブの下に配置されているキーへのポインタにすぎません。いずれかの領域に加えられた変更は、すぐに有効になります。

v。HKEY_USERS

これには、各ユーザープロファイルのHKEY_CURRENT_USERキーに対応するサブキーが含まれています。これは、Windowsレジストリにある多くのレジストリハイブの1つでもあります。

デバイスをアクティブに使用しているすべてのユーザーの種類情報がHKEY_USERSに保存されているため、すべてのユーザー固有の構成データがここに記録されます。特定のユーザーに対応するシステムに保存されているすべてのユーザー固有の情報は、HKEY_USERSハイブの下に保存され、ユーザーを一意に識別できます。 セキュリティ識別子またはSID これは、ユーザーが行ったすべての構成変更をログに記録します。

システム管理者によって付与された特権に応じてHKEY_USERSハイブにアカウントが存在するこれらのアクティブユーザーはすべて、プリンター、ローカルネットワーク、ローカルストレージドライブ、デスクトップバックグラウンドなどの共有リソースにアクセスできます。アカウントには特定のレジストリがあります。現在のユーザーのSIDの下に保存されているキーと対応するレジストリ値。

フォレンジック情報に関しては、各SIDは、すべてのイベントとアクションのログをユーザーのアカウントで実行するため、すべてのユーザーに関する膨大な量のデータを保存します。これには、ユーザーの名前、ユーザーがコンピューターにログオンした回数、最後のログインの日時、最後のパスワードが変更された日時、失敗したログインの数などが含まれます。さらに、Windowsがログインプロンプトに読み込まれて表示されるときのレジストリ情報も含まれています。

おすすめされた: 修正レジストリエディタが機能しなくなった

デフォルトユーザーのレジストリキーは、プロファイル内のファイルntuser.datに保存されます。これは、デフォルトユーザーの設定を追加するために、regeditを使用してハイブとしてロードする必要があります。

Windowsレジストリで見つかると予想されるデータの種類

上記のすべてのキーとサブキーには、構成、値、およびプロパティが次のデータ型のいずれかに保存されます。通常、Windowsレジストリ全体を構成するのは次のデータ型の組み合わせです。

  • 世界のほとんどの書記体系で表現されるテキストの一貫したエンコーディング、表現、および処理のためのコンピューティング業界標準であるUnicodeなどの文字列値。
  • バイナリデータ
  • 符号なし整数
  • シンボリックリンク
  • 複数の文字列の値
  • リソースリスト(プラグアンドプレイハードウェア)
  • リソース記述子(プラグアンドプレイハードウェア)
  • 64ビット整数

結論

Windowsレジストリは、システムとアプリケーションの構成を保存するためのファイル拡張子としてテキストファイルを使用することによって生じるセキュリティリスクを最小限に抑えるだけでなく、アプリケーション開発者が構成または.iniファイルの数を減らすという革命に他なりません。ソフトウェア製品と一緒に出荷する必要がありました。システムとシステム上で実行されるソフトウェアの両方によって頻繁にアクセスされるデータを格納するための集中型リポジトリを持つことの利点は非常に明白です。

使いやすさだけでなく、さまざまなカスタマイズや設定に1か所でアクセスできるため、さまざまなソフトウェア開発者がWindowsをデスクトップアプリケーションに適したプラットフォームにしています。これは、Windowsで利用可能なデスクトップソフトウェアアプリケーションの膨大な量をAppleのmacOSと比較すると非常に明白です。要約すると、Windowsレジストリの動作とそのファイル構造、さまざまなレジストリキー構成の重要性、およびレジストリエディタを使用して完全な効果を得る方法について説明しました。

イーロンデッカー

ElonはCyber​​Sのテクニカルライターです。彼は約6年間ハウツーガイドを執筆しており、多くのトピックをカバーしています。彼は、Windows、Android、および最新のトリックとヒントに関連するトピックをカバーするのが大好きです。