当前位置: 首页 > news >正文

第二章 Windows 核心概念通俗解析

第二章 Windows 核心概念通俗解析

    • 📑 目录
    • 1. 管理员权限与 UAC
    • 2. 进程、线程与作业
    • 3. 用户模式与内核模式
    • 4. 句柄(Handle)
    • 5. 应用隔离:MIC 与 App Container
    • 6. 受保护进程(Protected Processes)
    • 7. 调用栈与符号
    • 8. 会话、窗口站与桌面
    • 9. 窗口消息与 UIPI
    • ✨ 总结

Windows 核心概念通俗学习笔记

(基于《Sysinternals 工具使用指南》第 2 章)

学 Windows 工具,不只是会用命令,更要理解背后的原理。掌握操作系统核心概念,能让我们真正看懂 Sysinternals 工具展示的复杂数据。本文带你从「权限、进程、内核模式、句柄、应用隔离」等核心知识出发,用通俗语言理解 Windows 内核世界。


📑 目录

  1. 管理员权限与 UAC(User Account Control)
  2. 进程、线程与作业(Processes, Threads, Jobs)
  3. 用户模式与内核模式
  4. 句柄(Handle)与对象管理
  5. 应用隔离:MIC 与 App Container
  6. 受保护进程(Protected Processes)
  7. 调用栈与符号(Call Stack & Symbols)
  8. 会话、窗口站与桌面(Sessions & Window Stations)
  9. 窗口消息与 UIPI

1. 管理员权限与 UAC

  • 权限模型

    • Windows 账户有「用户权限」和「管理员权限」。
    • 管理员几乎无限制,普通用户则被限制修改系统设置和访问其他人数据。
  • UAC 的引入

    • Vista 开始,默认即使是管理员组的用户也只获得 过滤后的普通用户令牌
    • 真正的管理员操作需要 UAC 提示 → 点击确认
  • 常见场景

    • 右键 → 以管理员身份运行
    • 程序带有 清单文件(manifest) 声明需要提升。
    • 系统识别老旧安装程序时自动提示。

📌 记忆技巧
UAC 提示分三类:
👉 静默提升(系统默认命令)、
👉 确认提示(管理员 Yes/No)、
👉 输入密码(普通用户或非管理员账号)。


2. 进程、线程与作业

  • 程序 ≠ 进程

    • 程序是磁盘上的代码。
    • 进程是执行时的容器,包含内存、句柄、令牌等资源。
  • 线程(Thread)

    • 真正执行代码的单位。
    • 每个线程有自己的寄存器、堆栈,但共享进程的虚拟内存。
  • 作业(Job)

    • 一种进程分组机制。
    • 可以统一限制内存、执行时间,也可一键终止整个进程组。

📌 口诀
👉 程序是静的,进程是动的,线程是跑的。
👉 作业像「任务打包」,一次性管控一群进程。


3. 用户模式与内核模式

  • 用户模式(User Mode):应用程序运行的普通模式,权限有限。
  • 内核模式(Kernel Mode):驱动、核心系统服务运行的特权模式,可访问全部硬件资源。

切换场景:
调用 API(如 ReadFile) → 进入内核模式 → 完成磁盘读写 → 返回用户模式。

📌 理解比喻

  • 用户模式像「前台窗口」,用户点按钮。
  • 内核模式像「后台仓库」,负责真实搬运。
  • 前台必须找后台办事,否则会违规。

4. 句柄(Handle)

  • Windows 一切资源(文件、注册表、线程、事件等)都被抽象成对象。
  • 应用程序通过 句柄(handle) 操作这些对象。
  • 句柄本质是「对象表里的索引」。

📌 口诀
创建 → 得到句柄 → 用句柄操作 → 用完关闭。
忘记关闭 → 内存泄漏。


5. 应用隔离:MIC 与 App Container

  • MIC(强制完整性控制):Vista 引入,区分 低/中/高 完整性级别。

    • 低级进程(如 IE 保护模式)不能修改高级进程资源。
  • App Container(Win8 引入):

    • 每个 UWP 应用都有自己独立的容器。
    • 资源访问需明确声明「能力(Capability)」。
    • 文件、注册表、对象命名空间完全隔离。

📌 理解
MIC 解决「用户进程互相干扰」。
App Container 解决「应用互相越界」。


6. 受保护进程(Protected Processes)

  • 初衷:防止音视频 DRM 被破解。
  • 发展:保护 反病毒软件进程凭据管理进程(Lsass.exe)
  • 即使是管理员,也不能随意调试、注入或终止这些进程。

📌 记忆点
保护链:父进程受保护 → 子进程自动继承保护。


7. 调用栈与符号

  • 调用栈(Call Stack):记录函数调用路径,帮助开发者找到「程序怎么走到这里的」。
  • 符号(Symbols):函数名、变量名、源代码行号。没有符号只能看到内存地址。

👉 配置符号服务器(https://msdl.microsoft.com/download/symbols
即可让 Sysinternals 工具显示更易读的函数名。

📌 口诀
没有符号 → 看不懂;
有符号 → 找根因。


8. 会话、窗口站与桌面

  • 会话(Session):支持多用户并发(远程桌面)。
  • 窗口站(Window Station):包含剪贴板、桌面等对象。
  • 桌面(Desktop):实际显示窗口的逻辑表面,如 Default、Winlogon。

📌 重点
Vista 以后,服务进程跑在 Session 0,用户进程跑在 Session 1+,避免安全攻击(Shatter Attack)。


9. 窗口消息与 UIPI

  • Windows GUI 应用通过消息循环(Message Loop)驱动。
  • 风险:低权限进程可伪造消息攻击高权限进程。
  • UIPI(用户界面权限隔离):阻止低完整性进程向高完整性进程发危险消息。

📌 例子
普通进程不能模拟「点击管理员确认按钮」。


✨ 总结

这章的核心目标是帮我们理解 Sysinternals 工具背后的数据语义

  • 为什么有些功能要管理员权限?
  • 为什么进程树里有些进程不能操作?
  • 为什么某些应用必须在独立容器里跑?
  • 为什么调试时必须加载符号?

学会这些概念后,用 Sysinternals 工具(Process Explorer、Process Monitor、AccessChk…)时就能更快定位问题,真正理解 Windows 的底层逻辑。


📌 学习技巧

  • 口诀记忆法(如「程序是静的,进程是动的,线程是跑的」)。
  • 类比生活场景(前台 vs 后台,仓库 vs 窗口)。
  • 多结合 Sysinternals 工具实际演示 → 理论 + 实践更牢固。
http://www.dtcms.com/a/365512.html

相关文章:

  • 03 - HTML常用标签
  • 【学Python自动化】 9.1 Python 与 Rust 类机制对比学习笔记
  • PyTorch 和 Transformer的区别与联系
  • Linux 入门到精通,真的不用背命令!零基础小白靠「场景化学习法」,3 个月拿下运维 offer,第二十五天
  • 农业XR数字融合工作站,赋能农业专业实践学习
  • Qt为什么要引入QML语言?
  • 八、算法设计与分析
  • 瑞芯微rv1126 linux内核使用spidev驱动
  • 【Unity基础】两个关于UGUI中Text对非英文字体支持的问题
  • 在线性代数里聊聊word embedding
  • 在Excel和WPS表格中隔多行插入一个空白行
  • 【Linux 内存管理】2 进程地址空间 - vm_area_struct 数据结构
  • 【Zotero】插入中文参考文献遇到的问题
  • 【数据处理工具】依据图层批量分割要素,并自动处理碎图斑
  • Zynq中级开发七项必修课-第七课:AXI DMA (PL→PS) 数据上传
  • 深入掌握sed:Linux文本处理的流式编辑器利器
  • 权威认证!华宇TAS应用中间件获得商用密码产品认证证书
  • MongoDB 性能调优:十大实战经验总结 详细介绍
  • (Me)Adobe Media Encoder 2025音视频格式转码软件及视频编码软件,全新版免激活,安装即永久使用!
  • 面经分享二:Kafka、RabbitMQ 、RocketMQ 这三中消息中间件实现原理、区别与适用场景
  • windows server2008R2 远程提示用户名密码错误
  • 往届生还有机会进入计算机这个行业吗?还能找见好工作吗
  • 软件测试基础知识(数据库篇)
  • [光学原理与应用-377]:ZEMAX - 优化 - ZEMAX中的评价函数、类型、优化算法及其关系解析
  • Coze源码分析-资源库-创建提示词-前端源码
  • 聚焦诊断管理(DM)的传输层设计、诊断服务器实现、事件与通信管理、生命周期与报告五大核心模块
  • 集成学习算法简介
  • 水资源论证方法与报告编制技术及实际案例分析
  • ruoyi vue element 实现点击、返回首页收起已经展开的菜单栏
  • CI/CD流水线驱动自动化流程深度解析:选型、竞品、成本与资源消耗