什麼是 Windows Superfetch (SysMain) 以及如何禁用它
![什麼是 Windows Superfetch (SysMain) 以及如何禁用它](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/featured-image-what-is-superfetch-and-how-to-disable-it-640x375.webp)
Superfetch(在 Windows 10 和 Windows 11 中稱為 SysMain)是自 Windows Vista 以來就存在的程序優先級排序和加載服務。它靜靜地坐在後台,評估您最常使用的應用程序以及您使用的內存量。雖然它旨在讓您的計算機更快,但 SysMain 通常是不必要的,並且可以安全地禁用它以修復 PC 上的高內存使用率。
什麼是 Superfetch (SysMain) 及其用途?
Superfetch (SysMain) 是一個 Windows 服務主機進程(“svchost.exe”),其主要目的是將 RAM 分配給常用的應用程序和程序。您的 Windows 計算機上只有一個 SysMain 活動,您可以在任務管理器的“服務”選項卡中看到它。
![任務管理器服務中標識的 SysMain 實用程序 任務管理器服務中標識的 SysMain 實用程序](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmain-in-task-manager.webp)
為了快速啟動您最喜愛的應用程序,SysMain 通過稱為動態鏈接庫 (DLL) 的可重用代碼塊加載它們的可執行文件。
Superfetch (SysMain) 旨在使您的計算速度更快,因為它會隨著時間的推移保持和提高系統性能。它還減少了整體啟動時間。每次啟動 PC 時,所有必需的應用程序都會使用計算機未使用的內存預加載。
為什麼Superfetch(SysMain)會消耗這麼多內存?
由於 Superfetch (SysMain) 的目的是優先考慮您經常使用的程序,它可以輕鬆擴展到 100% 的內存消耗,尤其是瀏覽器選項卡和 Office 程序,因為它真的不知道您需要多少內存,所以額外的緩存數據是預先分配的。
儘管 SuperFetch 是一項有用的功能,但它會使您的計算機在後台更加努力地工作,這轉化為更高的 RAM 和 CPU 使用率。隨著時間的推移,未使用的內存會繼續增長,最終,您會消耗大量額外的空間。這通常會影響 RAM 容量非常低(~4 GB 或更少)的 Windows 系統。
如何在任務管理器和文件資源管理器中查看 SysMain
由於 SysMain 以 Windows 服務主機進程(“svchost.exe”)為中心,了解如何在任務管理器中訪問它並稍後在文件資源管理器窗口中查看它比您想像的要容易。
任務管理器中還有許多其他進程也名為“svchost.exe”,但它們與 SysMain 無關。您不想意外終止錯誤的“svchost.exe”任務。以下步驟將有助於確保您只關注主要的 SysMain 服務。
- Ctrl使用+ Shift+打開 Windows 任務管理器Esc。導航到“服務”選項卡。
- 識別 SysMain 程序並右鍵單擊它以選擇“轉到詳細信息”選項。
![在任務管理器中右鍵單擊以查看轉到 SysMain 的詳細信息 在任務管理器中右鍵單擊以查看轉到 SysMain 的詳細信息](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmaiin-task-manager-go-to-details.webp)
- 連接到 SysMain 的“svchost.exe”任務將在許多其他任務中突出顯示。
- 右鍵單擊突出顯示的“svchost.exe”任務以“轉到服務”。這將幫助您仔細檢查您沒有終止錯誤的進程。始終確保右擊正確的“svchost.exe”進程非常重要。
![轉到 SysMain 服務主機的任務管理器中的服務。 轉到 SysMain 服務主機的任務管理器中的服務。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmaiin-task-manager-go-to-services-right-click.webp)
- 在“詳細信息”窗口中,右鍵單擊突出顯示的“svchost.exe”任務,然後單擊“打開文件位置”。
![從 SysMain 服務主機進程的任務管理器打開文件位置。 從 SysMain 服務主機進程的任務管理器打開文件位置。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmaiin-task-manager-open-file-location-right-click.webp)
- 與 SysMain 相關的確切“svchost.exe”將在文件資源管理器窗口中突出顯示。
- 右鍵單擊它以查看其屬性。
![文件資源管理器中 SysMain 的服務主機及其屬性 文件資源管理器中 SysMain 的服務主機及其屬性](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmain-file-explorer-application-properties.webp)
- 您應該在 SysMain 中看到 Windows 服務的確切主機進程、其文件大小和其他屬性,// 例如共享數據。
![文件資源管理器中的 SysMain,其屬性和說明。 文件資源管理器中的 SysMain,其屬性和說明。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmain-file-explorer-properties-and-description.webp)
如何禁用 Superfetch (SysMain)
Superfetch (SysMain) 絕對有助於更快地加載一些程序。但是,如果您使用的是較新的 Windows PC,那可能是多餘的。完全禁用 SysMain 似乎更有效。由於它不是一項基本服務,您可以隨時繼續並禁用它。有四種方法可以做到這一點。
1. 使用 Windows 任務管理器服務
Windows 任務管理器是 SysMain 及其“svchost.exe”程序的標準實現。
- 轉到任務管理器中的“服務”選項卡。
- 確定 SysMain 任務並右鍵單擊以選擇“打開服務”選項。
![在任務管理器中右鍵單擊打開 SysMain 服務。 在任務管理器中右鍵單擊打開 SysMain 服務。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmain-right-click-open-services.webp)
- 找到 SysMain 服務並右鍵單擊它以打開其屬性。如果它正在運行,並且啟動類型設置為“自動”,您可以從此處輕鬆將其關閉。
![SysMain 在 Windows 服務管理器窗口中運行。 SysMain 在 Windows 服務管理器窗口中運行。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmain-in-services-window.webp)
- 在彈出窗口中,您應該在“常規”選項卡下看到“啟動類型”選項。單擊它以查看其他選項。
![在 SysMain 服務屬性中啟動為自動 在 SysMain 服務屬性中啟動為自動](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmain-properties-in-services-startup-automatic.webp)
- 選擇啟動類型為“已禁用”,應用更改並單擊“確定”。
![在 SysMain 屬性中禁用啟動類型的步驟。 在 SysMain 屬性中禁用啟動類型的步驟。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmain-properties-disabling-the-startup.webp)
- 重新啟動計算機以使更改生效。
2.使用註冊表編輯器
禁用 Superfetch (SysMain) 功能的一種更永久的方法是在註冊表編輯器中編輯其“開始”值。
- 創建一個還原點,以便在發生意外時可以在以後恢復。
- 在 Windows 搜索欄中輸入“創建還原點”,然後選擇下方的“最佳匹配”。
![在 Windows 搜索菜單中創建還原點。 在 Windows 搜索菜單中創建還原點。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-create-a-restore-point.webp)
- 當“系統屬性”窗口啟動時,導航到“系統保護”選項卡。單擊窗口底部的“創建”按鈕。
![在系統屬性中創建還原點。 在系統屬性中創建還原點。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-system-properties-create-a-restore-point.webp)
- 為還原點命名。添加任何可以在以後提供幫助的識別詳細信息。當前日期和時間會自動添加。
![為正在創建的還原點命名, 為正在創建的還原點命名,](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-system-properties-create-a-restore-point-name.webp)
- 還原點已創建成功,您可以自由編輯註冊表值,如下所示。
![系統還原點創建成功。 系統還原點創建成功。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-restore-point-created-successfully.webp)
- 使用 Windows 運行命令Win+ R,通過鍵入打開註冊表編輯器
regedit
。默認情況下,它將以管理員模式啟動。
![Regedit(註冊表編輯器)在 Windows 運行命令中打開。 Regedit(註冊表編輯器)在 Windows 運行命令中打開。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-regedit-run-command.webp)
- 在註冊表編輯器中導航到以下路徑:
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SysMain.
- 雙擊或右擊右側面板中的“開始”條目進行修改。
![在註冊表編輯器中修改 SysMain 的開始值。 在註冊表編輯器中修改 SysMain 的開始值。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-registry-editor-sysmain-start-value-modify-800x380-1.webp)
- 將“開始”條目的值數據設置為“4”。
![在註冊表編輯器中將 SysMain 的起始值數據設置為 4。 在註冊表編輯器中將 SysMain 的起始值數據設置為 4。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-registry-editor-sysmain-start-value-4.webp)
- 重新啟動 PC 以使更改生效。
3. 使用 PowerShell
PowerShell 窗口是禁用和啟用 SysMain 活動的最快方法之一。
- 通過在窗口中鍵入,從運行命令Win+打開 PowerShell窗口。R
powershell
- 不要點擊Enter或“確定”,而是在鍵盤上輸入Ctrl+ Shift+ 。Enter這將以管理員模式啟動 PowerShell。
![使用運行命令以管理員模式打開 PowerShell。 使用運行命令以管理員模式打開 PowerShell。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-powershell-run-command-admin-mode.webp)
- 輸入以下命令以根據需要禁用或啟用 SysMain。下面的窗口同時顯示了這兩個命令,但您需要一次使用一個。
Stop-Service -Force -Name "SysMain"; Set-Service -Name "SysMain"-StartupType Disabled
Set-Service -Name "SysMain"-StartupType Automatic -Status Running
![在 PowerShell 管理窗口中禁用和啟用 Superfetch。 在 PowerShell 管理窗口中禁用和啟用 Superfetch。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-powershell-stopping-and-starting-sysmain.webp)
- 鍵入
exit
PowerShell 以關閉窗口。重新啟動 PC 以使更改生效。
4.使用命令提示符
與 PowerShell 一樣,Windows 命令提示符是立即禁用或啟用 SysMain 的經典方法。
- 通過在窗口中鍵入,從運行命令Win+打開命令提示符窗口。R
cmd
- 不要輸入Enter或“確定”,而是在鍵盤上輸入Ctrl+ Shift+ 。Enter這將在管理員模式下啟動命令提示符。
![Windows Superfetch 命令提示符管理員模式打開使用運行 Windows Superfetch 命令提示符管理員模式打開使用運行](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-command-prompt-admin-mode-open-using-run.webp)
- 要在您的計算機上阻止 SysMain 或重新啟用它,請根據需要鍵入以下命令。
sc stop "SysMain"& sc config "SysMain"start=disabled
sc config "SysMain"start=auto & sc start "SysMain"
![SysMain 在命令提示符管理模式下禁用和啟用。 SysMain 在命令提示符管理模式下禁用和啟用。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-command-prompt-sysmain-stopped-and-started.webp)
- 鍵入
exit
命令提示符退出,然後重新啟動設備。
如果我禁用 Superfetch 會發生什麼?
在禁用 Superfetch 並強制 PC 重啟後,您會發現 Windows 任務管理器進程中不再提供 SysMain 任務。此外,當您導航到“服務”選項卡時,您會發現 SysMain 的狀態已更改。之前是“Running”,現在應該顯示“Stopped”。
![任務管理器服務中的 SysMain 停止狀態 任務管理器服務中的 SysMain 停止狀態](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmain-in-task-manager-stopped.webp)
如果您在“服務”選項卡中右鍵單擊 SysMain 任務,您將看到“轉到詳細信息”選項呈灰色並被禁用。
![在 SysMain 服務中禁用“轉到詳細信息”選項 在 SysMain 服務中禁用“轉到詳細信息”選項](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmaiin-task-manager-go-to-details-disabled.webp)
禁用 SysMain 會節省內存嗎?
由於無法進行客觀評估,我們嘗試了以下實驗。首先,在 Superfetch (SysMain) 自動運行時觀察任務管理器內存性能。許多瀏覽器選項卡和其他應用程序處於活動狀態(大約 15 個)。對於具有 12GB RAM 的設備,內存消耗高達 55%。
![Superfetch 運行時的 CPU 和內存消耗。 Superfetch 運行時的 CPU 和內存消耗。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmain-memory-cpu-task-manager-sysmain-running.webp)
後來,在 SysMain 停止後,同一組瀏覽器窗口和應用程序保持打開狀態。再次評估內存性能。內存使用率從 55% 急劇下降到 45%。
![禁用 Superfetch 時的 CPU 和內存消耗。 禁用 Superfetch 時的 CPU 和內存消耗。](https://cdn.thewindowsclub.blog/wp-content/uploads/2023/02/windows-superfetch-sysmain-memory-cpu-task-manager-sysmain-disabled.webp)
禁用 SysMain 可能會或可能不會影響設備的 RAM 性能,具體取決於您在設備上安裝的 RAM 容量。與硬盤驅動器 (HDD) 相比,固態驅動器 (SSD) 設備的影響可能沒有那麼大,但仍然很明顯。
經常問的問題
禁用 Superfetch 有什麼缺點嗎?
雖然 Superfetch (SysMain) 不是必不可少的 Windows 服務,但禁用它可能會稍微增加啟動時間和應用程序的啟動時間。對於 SSD 設備,延遲不是很明顯。但是,它對您的 Windows 系統來說是絕對安全的。沒有長期的性能問題。
如何修復由於 Superfetch 而導致的 100% 磁盤使用率問題?
如果您的 Superfetch (SysMain) 服務導致您的磁盤使用率上升到 100%,這意味著某些程序可能導致了峰值。導致 100% 磁盤使用率問題的最常見程序之一是 Windows 更新服務。
每次更新後,您可能會注意到問題再次出現。要解決它,請從“系統 -> 疑難解答 -> 其他疑難解答”運行 Windows 更新疑難解答。
還有其他技術,例如使用 Windows 實用程序檢查惡意軟件和磁盤清理。
如何增加虛擬內存?
增加虛擬 RAM 是在 Windows 設備上獲得內存提升的必經之路。有兩種可靠的方法可以做到這一點:使用註冊表黑客和第三方工具以及 RAM 磁盤。這些方法抵消了像 Superfetch 這樣的內存消耗程序的影響。
圖片來源:Unsplash。Sayak Boral 的所有屏幕截圖。
發佈留言