通过 PowerShell 命令查看 Win11 预读取级别 (EnablePrefetcher)
预读取级别的核心控制项是注册表中的EnablePrefetcher值(路径:HKLM:SYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters),PowerShell 可直接读取该值,也可辅助查看相关服务状态,具体方法如下:
一、核心命令:读取 EnablePrefetcher 值(精确查看级别)
步骤 1:以管理员身份打开 PowerShell
-
右键点击开始菜单,选择 “Windows 终端(管理员)”(或 “Windows PowerShell(管理员)”);
-
若弹出 UAC 提示,点击 “是” 获取管理员权限。
步骤 2:执行读取命令
输入以下命令并回车,直接读取EnablePrefetcher的数值:
powershell
# 方法1:直接读取注册表项(推荐)Get-ItemProperty-Path"HKLM:SYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters"-Name"EnablePrefetcher"
命令解释:
-
Get-ItemProperty:PowerShell 中读取注册表项属性的核心命令;
-
-Path:指定注册表路径(需用双引号包裹,路径中的反斜杠需保留);
-
-Name:指定要读取的键值名称(此处为EnablePrefetcher)。
返回结果解读:
命令执行后会显示类似如下结果:
plaintext
EnablePrefetcher : 3
PSPath : Microsoft.PowerShell.CoreRegistry::HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters
PSParentPath : Microsoft.PowerShell.CoreRegistry::HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory Management
PSChildName : PrefetchParameters
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.CoreRegistry
其中EnablePrefetcher后的数值对应预读取级别:
-
0:禁用所有预读取;
-
1:仅预读取应用程序;
-
2:仅预读取系统启动文件;
-
3:同时预读取系统和应用(默认值)。
简化命令(仅显示数值)
若只需快速查看数值,可使用以下命令(直接返回数字,更简洁):
powershell
# 方法2:仅提取EnablePrefetcher数值(Get-ItemProperty-Path"HKLM:SYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters").EnablePrefetcher
二、辅助命令:查看预读取相关服务 / 功能状态
1. 查看 SysMain 服务状态(预读取依赖的核心服务)
SysMain 服务(原 Superfetch)是预读取功能的载体,可通过以下命令查看其运行状态:
powershell
# 查看SysMain服务详细状态Get-Service-Name SysMain|Select-ObjectName,Status,StartType
返回结果解读:
-
Status:Running表示服务正在运行(预读取功能可正常工作),Stopped表示服务已停止;
-
StartType:Automatic(自动)或AutomaticDelayedStart(自动延迟启动)为默认配置,Disabled表示服务被禁用(预读取功能通常关闭)。
2. 查看 MMAgent 中的预读取配置
MMAgent(内存管理代理)包含预读取相关开关,可通过以下命令查看:
powershell
# 查看内存管理代理的预读取设置Get-MMAgent|Select-ObjectApplicationLaunchPrefetching,OperationAPIPrefetching
返回结果解读:
-
ApplicationLaunchPrefetching:Enabled表示应用预读取开启,Disabled表示关闭;
-
OperationAPIPrefetching:Enabled表示系统 API 预读取开启,Disabled表示关闭。
三、注意事项
-
必须使用管理员权限:读取注册表HKLM路径(系统级注册表)需要管理员权限,普通权限执行命令会提示 “权限不足”;
-
路径准确性:注册表路径需严格匹配,若拼写错误(如少写文件夹、大小写错误),会提示 “找不到指定路径”;
-
数值与功能的关联:EnablePrefetcher数值仅代表预读取级别,需结合 SysMain 服务状态确认功能是否实际生效(例如服务禁用时,即使数值为 3,预读取也无法运行);
-
修改后需重启:若通过 PowerShell 修改预读取级别,需重启电脑才能生效,查看命令仅读取当前注册表配置。
总结
通过 PowerShell 查看 Win11 预读取级别,核心是用Get-ItemProperty读取注册表中的EnablePrefetcher值(0-3),辅助查看 SysMain 服务状态可确认功能是否运行。推荐使用简化命令快速获取数值,管理员权限是执行命令的必要前提。
|