新闻详情

新闻详情

首页 / 资讯中心 / 详情

从内存占用到端口关闭:Windows 与 Linux 系统排查实战指南

发布时间:2026/9/29 18:46:30来源:尧图网络
从内存占用到端口关闭:Windows 与 Linux 系统排查实战指南
简介《计算机十万个为什么.pdf》是一份面向计算机初学者与日常办公用户的实用问答型电子读物以一问一答的形式梳理入门阶段最容易遇到的软硬件概念与操作困惑。内容覆盖计算机发展简史、Windows各版本沿革、内存与硬盘的区别、内存容量对运行速度的影响、防火墙与PDA等术语解释以及窗口切换、系统文件编辑、复制粘贴快捷键等常用技巧还整理了初学者应安装和熟悉的编辑、词典、杀毒、解压缩、看图、邮件、下载等各类应用软件帮助读者建立对微机体系与常用工具的初步认知。资源包内共1个PDF文件压缩包约15.5MB单文件结构便于在电脑或移动设备上直接翻阅检索。目前已有60人学习适合刚接触计算机、希望用碎片时间补齐常识短板的读者作为案头速查手册使用。1. 从一份“计算机十万个为什么.pdf”说起为什么你搜到的答案总是差一口气你大概率遇到过这种场景电脑突然蓝屏重启任务管理器里 antimalware service executable 占内存飙到 800MB硬盘灯常亮不灭于是你打开搜索引擎翻到一份名为“计算机十万个为什么.pdf”的文档里面列了三百条问答每条两行字看完还是不知道从哪下手。这份 PDF 的价值不在“答案”而在它暴露了一个事实——绝大多数计算机问题卡住你的不是“不知道有这个知识点”而是不知道这个知识点落在系统哪一层、用什么工具看、参数改成多少、改完怎么验证。快捷键被什么程序占用了、物理内存分配到底怎么算、固态硬盘量产工具能不能救回掉盘、Windows 关闭端口号该走防火墙还是 netsh这些问题的答案分散在操作系统、硬件固件、驱动模型三个层面任何一份“十万个为什么”都只能给你一个切面。这篇笔记不打算复刻那份 PDF而是把它当成一个索引挑出热搜里反复出现的几类真实诉求——内存占用排查、硬盘识别与分区、快捷键冲突、端口与连接数限制——按“先看清现场、再动手改、最后验证”的顺序把每一步的命令、参数和翻车点写清楚。适合手里正压着一台出问题的机器、需要今晚就给出结论的运维和开发也适合刚学计算机组成原理、想把课本概念对到真实机器上的学生。下面从最容易被误判的内存问题开始。2. 内存与进程从 antimalware service executable 占内存到物理内存分配2.1 先分清“物理内存分配”和“任务管理器里的数字”很多人看到任务管理器里某个进程占了几百 MB第一反应是“内存泄漏”但 Windows 的内存管理里进程提交的内存Commit和实际驻留的物理页Working Set是两回事。物理内存分配的最小单位是页x64 系统默认 4KB 一页大页Large Page可以到 2MB。一个进程申请 1GB 内存不代表它立刻占掉 1GB 物理 RAM——只有被访问过的页才会触发缺页中断由内存管理器映射到物理页框。任务管理器“内存”列显示的是工作集包含私有工作集和共享部分所以多个进程读同一个 DLL 时数字会重复计算。理解这一点你才不会把 antimalware service executable 的正常扫描缓存当成故障。常见做法是先用性能监视器看“Memory\Available MBytes”和“Memory\Pages/sec”如果 Available 长期低于总内存的 10%且 Pages/sec 持续大于 1000才说明物理内存真的吃紧而不是某个进程数字大。2.2 用 PowerShell 抓出真正吃内存的进程和句柄图形界面给的信息太粗我一般直接用 PowerShell 拉工作集和私有内存排序再配合句柄数判断是不是句柄泄漏。下面这段在 Windows 10/11 自带 PowerShell 5.1 就能跑不需要装额外模块。# 取工作集和私有内存前 15 的进程按私有内存降序 Get-Process | Sort-Object -Property PrivateMemorySize64 -Descending | Select-Object -First 15 Name, Id, {NameWorkingSetMB;Expression{[math]::Round($_.WorkingSet64/1MB,1)}}, {NamePrivateMB;Expression{[math]::Round($_.PrivateMemorySize64/1MB,1)}}, {NameHandles;Expression{$_.HandleCount}} | Format-Table -AutoSize # 单独盯 antimalware service executable 的实时变化 $p Get-Process -Name MsMpEng -ErrorAction SilentlyContinue if ($p) { 1..10 | ForEach-Object { $p.Refresh() {0} WorkingSet{1}MB Private{2}MB Handles{3} -f (Get-Date -Format HH:mm:ss), [math]::Round($p.WorkingSet64/1MB,1), [math]::Round($p.PrivateMemorySize64/1MB,1), $p.HandleCount Start-Sleep -Seconds 2 } }逻辑说明第一段用PrivateMemorySize64排序而不是工作集是因为私有内存更能反映进程自己申请、不共享的部分句柄数HandleCount用来辅助判断是不是句柄泄漏。第二段每 2 秒刷新一次观察 20 秒如果 WorkingSet 持续上涨且 Handles 同步上涨基本可以判定是扫描任务在堆积而不是内存泄漏。参数上-First 15可以按机器内存调成 20 或 30Start-Sleep的秒数不要低于 1否则采样本身会干扰结果。如果确认是 Defender 的实时扫描导致可以在“Windows 安全中心 → 病毒和威胁防护 → 管理设置”里把常用开发目录加入排除项而不是直接关服务——关服务会触发系统告警且下次更新后可能被重置。2.3 物理内存不够时的三个真实选项当 Available MBytes 确实长期偏低你有三条路加内存、减负载、调页面文件。加内存最直接但要注意频率和通道热搜里“285h 加 32g 5600 频率内存 部署 ai”就是典型场景——AI 推理吃的是显存和系统内存带宽双通道 5600 比单通道 4800 在实际 token 生成速度上能差出 15% 到 25%。减负载优先查启动项和服务Get-CimInstance Win32_Service | Where-Object {$_.StartMode -eq Auto}能列出所有自动服务把明显不需要的改成手动。页面文件不要迷信“越大越好”SSD 时代把初始大小设成物理内存的 1 到 1.5 倍、最大值设成 2 倍足够关键是放在系统盘还是数据盘——如果系统盘是 NVMe放系统盘反而更快。这里没有后悔药页面文件设太小蓝屏时的转储文件写不下事后排查会变成黑匣子。3. 硬盘识别与分区从 /dev/nvme0n1p5 到 4T 盘挂载3.1 设备命名规则不是玄学是总线枚举顺序热搜里有人问“/dev/nvme0n1p5 表示第 1 个 nvme 硬盘的第 5 个分区吗”答案是nvme0表示第 0 个 NVMe 控制器n1表示该控制器下的第 1 个命名空间p5是第 5 个分区。注意nvme0n1整体是“设备”p5才是分区所以lsblk里你会看到nvme0n1下面挂nvme0n1p1、nvme0n1p2。SATA 盘则是sda、sdb分区是sda1、sda2没有p。这个差异在写 fstab 或做 PVE 直通时特别容易翻车——把nvme0n1p5写成nvme0n1p5p1就会导致开机挂载失败。先跑一条命令看清拓扑lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINT,MODEL # 只看 NVMe 控制器和命名空间 nvme list # 看分区表类型和起始扇区 sudo fdisk -l /dev/nvme0n1逻辑说明lsblk的TYPE列会明确标出disk和partMODEL列能帮你对上物理盘位nvme list输出的是控制器和命名空间对应关系比lsblk更底层。参数上fdisk -l需要 root输出里的Start扇区是排查 4K 对齐的依据——起始扇区能被 8 整除4096 字节 / 512 字节就是对齐的否则读写性能会掉。3.2 挂载一块 4T 新盘从分区到写入 fstabCentOS 4T 挂载硬盘、Dell R740 增加硬盘、NetApp 更换硬盘本质都是“识别 → 分区 → 格式化 → 挂载 → 持久化”五步。下面以一块新加的 4T SATA 盘/dev/sdb为例用 GPT 分区表因为 MBR 最大只支持 2T。# 1. 确认盘符别对着系统盘操作 lsblk -o NAME,SIZE,TYPE,MOUNTPOINT # 2. 建 GPT 分区表并分一个区 sudo parted /dev/sdb --script mklabel gpt sudo parted /dev/sdb --script mkpart primary xfs 0% 100% # 3. 格式化4T 盘用 xfs 比 ext4 更适合大文件 sudo mkfs.xfs -f /dev/sdb1 # 4. 取 UUID写 fstab 用 UUID 不用盘符 sudo blkid /dev/sdb1 # 5. 挂载并验证 sudo mkdir -p /data sudo mount /dev/sdb1 /data df -hT /data逻辑说明parted --script避免交互确认mkpart primary xfs 0% 100%从 0% 到 100% 自动对齐。mkfs.xfs -f的-f是强制覆盖已有文件系统新盘可以不加但复用盘必须加。blkid拿到的 UUID 写进/etc/fstab时格式是UUIDxxxx /data xfs defaults 0 0最后两个字段0 0分别是不 dump 和不 fsck数据盘建议保持 0 0。参数上如果盘是给数据库用defaults可以换成noatime,nodiratime减少元数据写入。验证阶段df -hT看容量和文件系统类型mount | grep sdb1看挂载参数是否生效。这里有个血泪经验写完 fstab 先跑sudo mount -a测试不要直接重启否则挂载失败会进 emergency mode远程机器就只能走带外管理了。3.3 固态硬盘量产工具和“掉盘”的边界热搜里“固态硬盘量产工具”出现频率很高但必须说清楚量产工具是给主控厂商或维修端用的能重新开卡、重建 FTL 映射表代价是数据全丢。普通用户遇到 SSD 不识别先换线、换接口、换机器排除供电和链路问题再用smartctl -a /dev/nvme0或smartctl -a /dev/sda看健康度和通电次数。如果 SMART 里Media and Data Integrity Errors或Available Spare低于阈值说明闪存颗粒已经到寿命量产也救不回来。只有主控固件损坏、掉盘但颗粒健康的情况量产才有意义而且需要对应主控型号的开卡工具型号对不上直接变砖。这一步没有通用命令我一般建议先备份能读出的数据再决定要不要送修。4. 快捷键与端口从“被什么程序占用”到“关闭端口号”4.1 查快捷键冲突Windows 和 IDE 两条线“如何查看快捷键被什么程序占用了”是个高频问题但 Windows 没有原生工具直接告诉你某个组合键被谁注册了。常见做法分两层系统级热键用RegisterHotKey注册可以用 PowerShell 调 Win32 API 枚举但更实际的是用第三方工具如 OpenArk 或 Spy 看窗口消息。IDE 层面VSCode 用CtrlK CtrlS打开快捷键面板搜索框输入组合键就能看到冲突项Qt 开发在QShortcut或QAction里设setShortcutContext冲突时后注册的会覆盖先注册的。ADAltium Designer和 Allegro 的快捷键冲突优先查Preferences → Shortcuts里有没有重复绑定再查输入法——中文输入法在英文状态下也会吞掉部分组合键这是最容易被忽略的玄学。4.2 关闭端口号防火墙和 netsh 的分工“Windows 关闭端口号”要看你目的是“不让外部连进来”还是“不让本机程序监听”。前者用防火墙入站规则后者要找到监听进程再处理。先看谁在听# 列出所有监听端口和对应进程 Get-NetTCPConnection -State Listen | Select-Object LocalAddress, LocalPort, OwningProcess, {NameProcess;Expression{(Get-Process -Id $_.OwningProcess).Name}} | Sort-Object LocalPort | Format-Table -AutoSize # 查某个端口比如 3306 Get-NetTCPConnection -LocalPort 3306 -State Listen | ForEach-Object { Get-Process -Id $_.OwningProcess }逻辑说明Get-NetTCPConnection是 PowerShell 自带 cmdletOwningProcess是 PID再反查进程名。参数上-State Listen只看监听态-LocalPort可以精确过滤。如果确认是某个服务在监听且不需要用Stop-Service停服务并Set-Service -StartupType Disabled禁用如果只是不想让外部访问用New-NetFirewallRule -DisplayName Block 3306 -Direction Inbound -LocalPort 3306 -Protocol TCP -Action Block加入站阻止规则。注意防火墙规则只挡入站本机 127.0.0.1 仍然能连这是设计如此不是规则没生效。4.3 “已达到计算机的连接数最大值”怎么破这个报错通常出现在共享访问或远程桌面场景根源是 Windows 客户端版本对并发 SMB 连接数有限制或者服务器端MaxUserPort、TcpNumConnections被改小。先看当前连接数# 统计 ESTABLISHED 状态的连接数 (Get-NetTCPConnection -State Established).Count # 看动态端口范围 netsh int ipv4 show dynamicport tcp逻辑说明Get-NetTCPConnection统计的是当前所有已建立连接如果接近动态端口范围上限就需要扩大范围。netsh int ipv4 set dynamicport tcp start10000 num55000可以把端口范围调到 10000 到 65000重启后生效。参数上num不要超过 64511否则会和保留端口冲突。如果是 SMB 共享检查Get-SmbServerConfiguration | Select MaxWorkitems, MaxMpxCt客户端版本限制改不了只能换服务器版系统或减少并发。5. 避坑与排查五条真实翻车记录5.1 现象改完 fstab 重启进 emergency mode原因UUID 写错或文件系统类型写错挂载失败后 systemd 进入紧急模式。 解决在 emergency 模式下mount -o remount,rw /然后vi /etc/fstab注释掉错误行重启后再用blkid核对 UUID。预防办法是每次改完先mount -a。5.2 现象PowerShell 查进程内存数字和任务管理器对不上原因任务管理器显示的是工作集PowerShell 的PrivateMemorySize64是私有内存两者口径不同。 解决统一用WorkingSet64对比任务管理器或者用性能监视器看Process\Working Set计数器。不要混用两个指标下结论。5.3 现象关闭端口后本机程序还能连原因防火墙规则只作用于入站流量本机回环流量不走防火墙。 解决如果目的是阻止本机程序连接需要在程序层禁用或改配置防火墙规则解决不了。先明确需求再选工具。5.4 现象4T 盘分区后只认到 2T原因用了 MBR 分区表MBR 最大寻址 2TiB。 解决parted /dev/sdb mklabel gpt重建为 GPT再重新分区。注意重建分区表会清空数据操作前确认盘是空的或已备份。5.5 现象SSD 用量产工具后彻底不识别原因开卡工具版本和主控型号不匹配固件写坏。 解决量产前必须用smartctl或主控厂商工具确认主控型号和固件版本型号对不上不要动手。数据无价能送修就送修。6. 把“十万个为什么”变成自己的排查清单那份 PDF 最大的问题是它只给答案不给路径而真实排查靠的是“先看现场、再改一个变量、再验证”的循环。我自己的习惯是维护一份 Markdown 清单每解决一个问题就记三行现象、命令、结论。比如内存问题记Get-Process排序加Available MBytes阈值硬盘问题记lsblk加blkid加mount -a端口问题记Get-NetTCPConnection加防火墙规则方向。这份清单不需要多漂亮关键是下次遇到同类问题时能直接抄命令而不是重新搜一遍。进阶一点的做法是把这些命令包成 PowerShell 函数或 bash alias比如function memtop { Get-Process | Sort PrivateMemorySize64 -Desc | Select -First 15 }放到$PROFILE里开机就能用。验证方法也很简单找一台测试机故意把 fstab 写错一次看自己能不能在 emergency mode 下救回来故意占满动态端口看netsh调参后是否恢复。这些操作在虚拟机里做成本几乎为零但真到线上出问题时肌肉记忆能省下大量时间。我自己踩过最深的坑是早年改服务器MaxUserPort没记原始值后来要回滚时只能凭记忆猜从那以后所有注册表改动前先reg export备份。希望帮到你。本文还有配套的精品资源点击获取
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

三菱iQ-R MC协议底层排雷:0xC0FF链路诊断指令解析 2026/9/29 21:11:22

三菱iQ-R MC协议底层排雷:0xC0FF链路诊断指令解析

1. 为什么是“0xC0FF”——这个十六进制代码不是Bug,而是排雷指令的起点你第一次在三菱iQ-R系列PLC的MC协议文档里看到0xC0FF,大概率会愣一下:这既不是标准TCP端口,也不是常见错误码(比如0x0001表示地址非法&#xff0…

阅读更多 →
学科专业AI写作工具怎么选?TaoToken统一Key接入Cline的settings.json配置骨架 2026/9/29 21:11:22

学科专业AI写作工具怎么选?TaoToken统一Key接入Cline的settings.json配置骨架

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
OpenHarmony I2C排障全链路解析:从设备树到示波器诊断 2026/9/29 21:11:21

OpenHarmony I2C排障全链路解析:从设备树到示波器诊断

1. I2C不是“接上线就能通”的总线,它是需要被“读懂”的通信语言I2C总线在OpenHarmony开发中常被新手当作一个“插上设备、调用API、读出数据”的黑盒接口——结果是:设备挂载成功但读不到有效值,示波器上波形规整却始终返回0xFF&#xff0c…

阅读更多 →
MindSpore Transformer训练在线监控回调设计 2026/9/29 21:11:07

MindSpore Transformer训练在线监控回调设计

1. 项目概述:为什么训练过程不能“黑箱”运行?在MindSpore生态里做Transformer模型训练,最常被低估的不是显存占用,也不是学习率调参,而是训练过程本身的可观测性。我见过太多团队——包括我自己早期踩过的坑——把训练…

阅读更多 →
Superpowers:一套让AI从问答模式升级为协作编程的提示词工作流 2026/9/29 21:11:07

Superpowers:一套让AI从问答模式升级为协作编程的提示词工作流

先说结论:Superpowers不是一个能直接装进IDE的插件,也不是OpenAI或者Anthropic官方出的东西。它是一个开源项目,核心资产是一整套经过大量实战打磨的系统提示词、技能文件和工作流约定。你把它接入ChatGPT、Claude或者Codex之后,A…

阅读更多 →
从“看全局“到“评成效“:央国企穿透式监管六步链路,哪些厂商能真正闭环 2026/9/29 21:11:01

从“看全局“到“评成效“:央国企穿透式监管六步链路,哪些厂商能真正闭环

央国企做穿透式监管,最常见的困境不是"看不到数据",而是"看到了问题,却改不掉"。很多集团已经建了领导驾驶舱,大屏上指标齐全、态势尽收眼底。但真到了监管问询、风险暴露的时候,问题就来了&#…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉