サービスMMCには、サービス名、現在のステータス、およびスタートアップの種類が表示されます。あなたのほとんどは自動について知っています、 自動(開始の遅延) 、およびマニュアル スタートアップの種類 。
- 自動– システム起動時にサービスを開始します。
- 自動(開始の遅延)– システムの起動が完了し、最初の要求の厳しい操作が完了した後にサービスを開始して、システムの起動を高速化します。
- ハンドブック- 必要に応じて(他のサービスへの依存関係によって定義される)、または関連するAPIを使用してアプリケーションから呼び出されたときにサービスを開始します。
- 無効 –サービスを完全に無効にし、サービスとその依存関係が実行されないようにします。
しかし、それらの「トリガー開始」サービスとは何ですか?
トリガー開始サービスとは何ですか?
トリガー開始サービスは、トリガーされたとき、つまり、定義した特定の基準と条件が満たされたとき(たとえば、最初のネットワークIPアドレスが使用可能になったとき)にのみ実行(または実行を停止)するように構成された通常のサービスです。 、または最後のネットワークIPが失われたとき)。
特定のサービスの起動モードを構成するために使用できる使用可能なトリガーのリストを次に示します。
- デバイスインターフェイスの到着または出発
- ドメインへの参加またはドメインからの離脱
- ファイアウォールポートの開閉
- グループポリシーの変更
- 使用可能な最初のIPアドレスまたは離れる最後のIPアドレス
- カスタムイベント– Windowsのイベントトレース(ETW)
例1:Windowsタイムサービス
Windows Timeサービスは、デバイスがドメインに接続されたときに開始するように構成されています。次のコマンドを実行して、このサービスのトリガーを表示できます。
sc qtriggerinfo w32time
次の出力が表示されます。
[SC] QueryServiceConfig2 SUCCESS SERVICE_NAME:W32Time START SERVICE DOMAIN JOINED STATUS:1ce20aba-9851-4421-9430-1ddeb766e809 [DOMAIN JOINED]
Windows 7以前では、このサービスの2つのトリガーが表示されます。
サービスドメインの結合ステータスの開始:1ce20aba-9851-4421-9430-1ddeb766e809 [ドメインの結合]サービスドメインの結合の停止ステータス:ddaf516e-58c2-4866-9574-c3b615d42ea1 [ドメインの結合なし]
W32Timeサービスのクエリされたトリガー情報からわかるように、このサービスは、コンピューターが ドメインに参加しました コンピュータが停止したら停止します ドメインを離れる 。
関連: W32Timeはワークグループコンピューターでは起動しません–Windowsクライアント| Microsoft Docs例2:WindowsUpdateサービス
Windows Updateサービス( wuauserv
)はデフォルトで手動に設定されており、Windows10で起動をトリガーするように構成されています。
次のコマンドを実行して、のトリガーを確認します。 Windows Update サービス:
sc qtriggerinfo wuauserv
グループポリシーの構成が変更されると、サービスがトリガーされることがわかります。
[SC] QueryServiceConfig2 SUCCESS SERVICE_NAME:wuauservサービスグループポリシーの開始: 659fcae6-5bdb-4da9-b1ff-ca2a178d46e0 [現在のマシンポリシー]サービスグループポリシーの開始: 54fb46c8-f089-464c-b1fd-59d1b62c3b50 [ユーザーポリシーの提示]
Windows Updateサービスは、グループポリシー(マシンまたはユーザーポリシー)の構成時にトリガーされます 変更 。 GUID 659FCAE6-5BDB-4DA9-B1FF-CA2A178D46E0
MACHINE_POLICY_PRESENT_GUIDを表し、 54FB46C8-F089-464C-B1FD-59D1B62C3B50
USER_POLICY_PRESENT_GUIDを表します。
停止
状態。グループポリシーエディターを読み込んで構成を変更すると(必ずしも「WindowsUpdate」関連の設定である必要はありません)、Windows Updateサービスがトリガーされ、次のように表示されます。 ランニング
。グループポリシーの変更によって開始されるWindowsUpdateサービス。
例3:ディスプレイエンハンスメントサービス
ディスプレイエンハンスメントサービス( DisplayEnhancementService
)Windows10ではに設定されています 手動(トリガー開始)
。このサービスは、表示環境が変化した場合にのみオンになります。 Windows 10の適応輝度機能は、周囲光センサーを追跡し、周囲光の変化を識別し、トリガーがディスプレイ拡張サービスを開始します。
ディスプレイエンハンスメントサービスは、周囲の照明条件に基づいてディスプレイの明るさを自動的に調整します。このサービスは、環境光センサーのハードウェアインターフェイスによってトリガーされた場合にのみ開始されます。
次のコマンドは、このサービスで使用されるトリガーのリストを示しています。
sc qtriggerinfo DisplayEnhancementService
出力には、トリガーのリスト(サービスごとに複数のトリガーが存在する可能性があります)と、それがリンクされているデバイスインターフェースが含まれます。
トリガー開始サービスの利点
単純にに設定しないのはなぜか疑問に思われるかもしれません 自動 、そしてトリガーの必要性は何ですか?
サービスを常に実行することには、いくつかの問題があります。
a)システムリソース
まず、プログラムやサービスを実行する必要がない場合、(バックグラウンドでも)実行する必要があるのは何ですか?たとえば、新しいアプリケーションの更新をチェックする更新サービスについて考えてみます。コンピューターがネットワークに接続されておらず、使用可能なIPがない場合、サービスを24時間365日実行する必要があるのはなぜですか。 Bluetoothデバイスが接続されていない場合、サービスを常に実行する必要があるのはなぜですか?
サービストリガーを使用すると、システムの起動時にサービスを開始したり、サービスが必要なときにサービスを開始できるイベントをポーリングまたはアクティブに待機したりする必要がなくなります。
実行中のプロセス(サービスを含む)は、貴重なメモリとCPUリソースを使用します。常に100のサービスが実行されている場合、それらは非常に多くのメモリ、ハンドル、スレッド、および大量のCPU使用量になります。これらの無駄なリソースは、コンピューター全体のパフォーマンスを低下させ、応答性を低下させます。
関連: Windows10の個々のサービスによるリソース使用量の表示b)起動時間
自動起動サービスはデバイスの起動時間に大きな影響を与えるため、最初に自動(遅延起動)が導入されました。より多くのシステムリソース(CPU、メモリなど)の使用は、より多くの電力消費を意味します。これはラップトップコンピュータにとって重要であり、バッテリ寿命を大幅に短縮する可能性があります。
c)セキュリティの観点
多くのサービスはネットワークに接続されており、ローカルシステムまたはローカルサービスアカウントで実行されます。これは、潜在的な攻撃対象領域の原因となります。サービストリガーにより、サービスは必要な場合にのみ実行されるため、攻撃者がサービスを簡単に調査する能力が低下します。ネットワークサービスを開始するこのトリガーは、潜在的な脆弱性に対するシステムの攻撃対象領域を減らすのに役立ちます。
自動(トリガー開始)対手動(トリガー開始)
自動(トリガー開始)と手動(トリガー開始)の違いは何か疑問に思われるかもしれません。トリガーを手動サービスまたは自動サービスのいずれかに追加できる場合、なぜ手動に設定できないのですか?
サービスを自動に設定して、Windowsのロード時にサービスを開始することができます。ただし、サービスは、タスクが完了して実行する作業がなくなったときに、それ自体で正常に停止することもできます。サービスを開始すると、次のメッセージが表示される場合があります。
ローカルコンピュータの[servicename]サービスが開始され、その後停止しました。一部のサービスは、他のサービスまたはプログラムで使用されていない場合、自動的に停止します。
作業が完了した後、サービスが正常に停止した可能性があります。ただし、トリガーを割り当てた場合でも、必要なときに開始できます。たとえば、特定のハードウェアが接続されているとき、ファイアウォールポートが開いているとき、またはカスタムイベントが発生したときなどです。起動時にサービスを実行する必要があり、必要に応じてトリガーを開始できる場合は、自動(トリガー開始)をお勧めします。
自動サービスと手動サービスの両方に、手動で開始するトリガーを設定できます。 2つの違いは、オペレーティングシステムがロードされるとすぐに自動サービスが開始されることだけです。自動サービスが停止した後、トリガーはいつでも自動サービスを再開できます。
同様に、間の唯一の違い 自動(トリガー)
そして 自動(遅延、トリガー)
後者は、すべての自動(遅延なし)サービスのロードが終了した後にロードを開始し、トリガーイベントによって両方を開始できるということです。
参考文献
- トリガー開始サービス|フィルペン|チャネル9
- Windowsで開始サービスをトリガーする|チャネル9
- [MS-SCMR]:SERVICE_TRIGGER | Microsoft Docs
- 自動vs自動(遅延開始)サービススタートアップタイプ
- Windows 10のデフォルトのサービス構成–スタートアップの種類、アクセス許可など。
上記の情報が少しお役に立てば幸いです。
1つの小さなリクエスト:この投稿が気に入ったら、共有してください。
あなたからの1つの「小さな」共有はこのブログの成長に真剣に大いに役立つでしょう。いくつかの素晴らしい提案:- ピンする!
- お気に入りのブログ+ Facebook、Redditに共有してください
- ツイートしてください!