--- title: svchost.exe の謎がついに解けた! author: kazu634 date: 2008-01-26 url: /2008/01/26/_823/ wordtwit_post_info: - 'O:8:"stdClass":13:{s:6:"manual";b:0;s:11:"tweet_times";i:1;s:5:"delay";i:0;s:7:"enabled";i:1;s:10:"separation";s:2:"60";s:7:"version";s:3:"3.7";s:14:"tweet_template";b:0;s:6:"status";i:2;s:6:"result";a:0:{}s:13:"tweet_counter";i:2;s:13:"tweet_log_ids";a:1:{i:0;i:3655;}s:9:"hash_tags";a:0:{}s:8:"accounts";a:1:{i:0;s:7:"kazu634";}}' categories: - diary ---

 Windowsのサービス一覧を覗くと、「svchost.exe」というのが並んでいる。こいつは何なのかいつも疑問であった。この疑問がついに解けた。What is svchost.exe And Why Is It Running? :: the How-To Geekのおかげだ。

要するに何なのよ?

Some time ago, Microsoft started moving all of the functionality from internal Windows services into .dll files instead of .exe files. From a programming perspective this makes more sense for reusability… but the problem is that you can’t launch a .dll file directly from Windows, it has to be loaded up from a running executable (.exe). Thus the svchost.exe process was born.

What is svchost.exe And Why Is It Running? :: the How-To Geek

要するに、実行形式(exeファイル)と汎用性のあるライブラリー(dllファイル)を分けようとした結果、ライブラリーを呼び出すためだけの実行形式ファイルが必要になったようだ。

じゃあ何でこんなにたくさんsvchost.exeが起動しているの?

If you’ve ever taken a look at the Services section in control panel you might notice that there are a Lot of services required by Windows. If every single service ran under a single svchost.exe instance, a failure in one might bring down all of Windows… so they are separated out.

What is svchost.exe And Why Is It Running? :: the How-To Geek

svchost.exeひとつだけにライブラリーの読み込みを任せていたら、仮にそのsvchost.exeがうまく動かなくなってしまうとみんな道連れになるからだよ!