今天,我透過從本機安裝的 ISO 執行安裝程式升級到 Creators Update。當我回到電腦時,我打開任務管理器,發現記憶體使用量比以前高很多(登入後空閒時的記憶體使用量幾乎為 6GB,而不是之前 Windows 版本的 2-3GB) - 進程標籤顯示有以上60不同的運行實例svchost.exe
。這個 6GB 數字僅用於進程記憶體 - 不包括用於快取或「備用」的記憶體。
我跑去tasklist /svc
獲取哪些服務位於哪些進程中的列表,它列出了幾乎每個 svchost.exe 實例,其中只包含一個正在運行的服務(除了少數正在運行一些系統服務的實例)。
這是我的輸出:
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
連續幾個小時消耗 100% CPU - 這不是進程隔離可以解決的問題)。
(我剛剛注意到:他們終於在登錄編輯器中新增了網址列!)
答案1
是的,這個如果您使用 RAM 超過 3.5GB 的電腦,則創意者更新會發生變化。這裡,所有服務都在自己的 svchost.exe 中運行,以便更好地查看哪個服務導致問題,或在某個服務使 svchost.exe 崩潰時防止其他服務崩潰。
如果您的電腦有 3.5+ GB 內存,您可能會注意到任務管理器中的進程數量增加。雖然這項變革乍看之下可能令人擔憂,但許多人會很高興找出這項變化背後的動機。隨著預安裝服務數量的成長,它們開始在 Windows 2000 中分組為稱為服務主機 (svchost.exe) 的進程。由於這些年來可用記憶體的急劇增加,服務主機節省記憶體的優勢已經減弱。因此,在運行 Windows 的記憶體豐富(3.5+ GB RAM)的 PC 上取消服務分組現在為我們提供了執行以下操作的機會:
所以,不用擔心,這是 v1703 中的一個很好的改變,一切都很好。
但有一種方法可以恢復它。這是被用戶發現一個處理 Windows 調整的網站。
因此,運行regedit.exe
,轉到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
並建立 32 位元 DWORDSvcHostSplitThresholdInKB
並將其設定為較大的數字(與您的安裝 RAM 相比更大)。