今日、私はローカルにマウントされたISOからセットアップを実行して、Creators Updateにアップグレードしました。コンピュータに戻ってタスクマネージャーを開くと、メモリ使用量が以前よりも大幅に増加していることがわかりました(以前のWindowsビルドでは2〜3GBでしたが、ログイン後のアイドル時のメモリ使用量は6GB近くになりました)。プロセスタブには、60実行中のさまざまなインスタンスsvchost.exe
。この 6 GB の数字はプロセス メモリのみを対象としており、キャッシュや「スタンバイ」に使用されるメモリは含まれていません。
どのサービスがどのプロセスに含まれているかの一覧を取得しようとしたところ、ほぼすべての svchost.exe インスタンスに、実行中のサービスが 1 つだけ含まれていることが一覧表示されましtasklist /svc
た (いくつかのシステム サービスを実行している少数のインスタンスを除く)。
これが私の出力です:
Image Name PID Services
========================= ======== ============================================
System Idle Process 0 N/A
System 4 N/A
smss.exe 440 N/A
csrss.exe 612 N/A
wininit.exe 700 N/A
csrss.exe 708 N/A
services.exe 776 N/A
lsass.exe 784 KeyIso, Netlogon, SamSs, VaultSvc
svchost.exe 888 PlugPlay
svchost.exe 908 BrokerInfrastructure, DcomLaunch, Power,
SystemEventsBroker
fontdrvhost.exe 936 N/A
svchost.exe 1000 RpcEptMapper, RpcSs
svchost.exe 104 LSM
winlogon.exe 544 N/A
fontdrvhost.exe 420 N/A
svchost.exe 1072 DeviceInstall
dwm.exe 1136 N/A
svchost.exe 1164 BFE, CoreMessagingRegistrar, MpsSvc
svchost.exe 1424 lmhosts
svchost.exe 1432 W32Time
svchost.exe 1440 nsi
svchost.exe 1448 wudfsvc
svchost.exe 1528 hidserv
svchost.exe 1628 Dhcp
svchost.exe 1716 Dnscache
svchost.exe 1748 EventLog
WUDFHost.exe 1792 N/A
svchost.exe 1908 TimeBrokerSvc
svchost.exe 1952 NlaSvc
NVDisplay.Container.exe 1968 NVDisplay.ContainerLocalSystem
svchost.exe 1324 Themes
svchost.exe 1596 ProfSvc
svchost.exe 1944 EventSystem
svchost.exe 1052 netprofm
svchost.exe 2116 StateRepository
svchost.exe 2256 SENS
svchost.exe 2296 AudioEndpointBuilder
svchost.exe 2304 FontCache
(etc)...
コマンドを使用して、個々のサービスを独自の svc インスタンスで実行するように構成できることは知っていますsc config <serviceName> type= own
が、私が知る限り、このコマンドを実行したことはありません。
ざっと調べてみたComputer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
ところ、これらのサービスのほとんどのキー値に、サービスが独自のインスタンスで実行されるかどうかを制御するType
フラグ ビットが欠落しているようです。何がこの変更に影響を与えたのか疑問に思います。0x10
svchost.exe
Windows 10 Creators Update のインストール前またはインストール後にこの動作を観察した人はいますか? これがデフォルトの構成変更である場合、システムのパフォーマンスや安定性に何らかの影響がありますか?
サービスがクラッシュしても他のサービスがダウンしないので、システムの安定性が向上するのではないかと思いますが、これには RAM の大きなコストがかかります。ただし、サービスがクラッシュしたことはありません (少なくともそれに気づいたことはありません) (代わりに、私が経験した最悪の問題は、wuauserv
何時間も CPU を 100% 消費することでした。これはプロセス分離では解決できない問題です)。
(今気づいたのですが、ついにレジストリ エディターにアドレス バーが追加されました!)
答え1
はい、これ3.5GB以上のRAMを搭載したPCを使用している場合、Creators Updateで変更されます。ここでは、すべてのサービスが独自の svchost.exe で実行されるため、どのサービスが問題を引き起こしているかをより適切に把握したり、サービスが svchost.exe をクラッシュさせた場合に他のサービスのクラッシュを防いだりできます。
PC に 3.5 GB 以上のメモリが搭載されている場合、タスク マネージャーでプロセスの数が増えていることに気付くかもしれません。この変更は一見すると心配に思えますが、この変更の背後にある動機を知ると多くの人が喜ぶでしょう。プレインストールされたサービスの数が増えるにつれて、Windows 2000 ではサービス ホスト (svchost.exe) と呼ばれるプロセスにグループ化されるようになりました。このリリースの PC の推奨 RAM は 256 MB でしたが、最小 RAM は 64 MB でした。ここ数年で使用可能なメモリが大幅に増加したため、サービス ホストのメモリ節約の利点は減少しました。したがって、Windows を実行しているメモリが豊富な (3.5 GB 以上の RAM) PC でサービスをグループ化解除すると、次の操作を実行できるようになります。
ですから、心配しないでください。これは v1703 でのよい変更であり、すべて問題ありません。
しかし、元に戻す方法があります。これはユーザーによって発見されたWindows の調整を扱う Web サイトの。
したがって、 を実行しregedit.exe
、 に移動してHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
32 ビット DWORD を作成しSvcHostSplitThresholdInKB
、それを大きな数値 (インストール RAM に比べて大きい数値) に設定します。