blog/content/post/2008/01/26/2008-01-26-00000770.md

52 lines
3.5 KiB
Markdown
Raw Normal View History

2019-03-31 11:00:21 +00:00
---
title: svchost.exe の謎がついに解けた!
author: kazu634
date: 2008-01-26
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
---
<div class="section">
<p>
 Windowsのサービス一覧を覗くと、「svchost.exe」というのが並んでいる。こいつは何なのかいつも疑問であった。この疑問がついに解けた。<a href="http://www.howtogeek.com/howto/windows-vista/what-is-svchostexe-and-why-is-it-running/" onclick="__gaTracker('send', 'event', 'outbound-article', 'http://www.howtogeek.com/howto/windows-vista/what-is-svchostexe-and-why-is-it-running/', 'What is svchost.exe And Why Is It Running? :: the How-To Geek');" target="_blank">What is svchost.exe And Why Is It Running? :: the How-To Geek</a>のおかげだ。
</p>
<h4>
要するに何なのよ?
</h4>
<blockquote title="What is svchost.exe And Why Is It Running? " cite="http://www.howtogeek.com/howto/windows-vista/what-is-svchostexe-and-why-is-it-running/">
<p>
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&#8217;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.
</p>
<p>
<cite><a href="http://www.howtogeek.com/howto/windows-vista/what-is-svchostexe-and-why-is-it-running/" onclick="__gaTracker('send', 'event', 'outbound-article', 'http://www.howtogeek.com/howto/windows-vista/what-is-svchostexe-and-why-is-it-running/', 'What is svchost.exe And Why Is It Running? :: the How-To Geek');" target="_blank">What is svchost.exe And Why Is It Running? :: the How-To Geek</a></cite>
</p>
</blockquote>
<p>
要するに、実行形式(exeファイル)と汎用性のあるライブラリー(dllファイル)を分けようとした結果、ライブラリーを呼び出すためだけの実行形式ファイルが必要になったようだ。
</p>
<h4>
じゃあ何でこんなにたくさんsvchost.exeが起動しているの
</h4>
<blockquote title="What is svchost.exe And Why Is It Running? " cite="http://www.howtogeek.com/howto/windows-vista/what-is-svchostexe-and-why-is-it-running/">
<p>
If you&#8217;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.
</p>
<p>
<cite><a href="http://www.howtogeek.com/howto/windows-vista/what-is-svchostexe-and-why-is-it-running/" onclick="__gaTracker('send', 'event', 'outbound-article', 'http://www.howtogeek.com/howto/windows-vista/what-is-svchostexe-and-why-is-it-running/', 'What is svchost.exe And Why Is It Running? :: the How-To Geek');" target="_blank">What is svchost.exe And Why Is It Running? :: the How-To Geek</a></cite>
</p>
</blockquote>
<p>
svchost.exeひとつだけにライブラリーの読み込みを任せていたら、仮にそのsvchost.exeがうまく動かなくなってしまうとみんな道連れになるからだよ
</p>
</div>