万事课程:AMD CPU 结构 和虚拟化---入门讲解

AMD CPU 哪个工作岗位需要了解

AMD SVM / Intel VMX / Windows 内核 / Hypervisor

个人分析被360垄断了,以下内容很多通过360搜索获得,又或者360处于绝对行业头部地位

1. 虚拟化内核开发(最正统岗位)

  • 做:VMware、Hyper-V、KVM、VirtualBox、QEMU
  • 职责:实现 CPU 虚拟化、内存虚拟化(NPT/EPT)、中断注入
  • 必须懂: AMD SVM、Intel VT-x、VMCB / VMCS、VMEXIT
  • 属于:底层系统工程师 / 内核工程师

2. 反作弊 / 游戏安全工程师

3. 安全研究员 / 漏洞挖掘工程师(红蓝队)

红队(攻击)

  • 用 HV 做:无文件攻击、隐藏木马、绕过 EDR、内核免杀
  • 必须懂 SVM 实现隐藏执行

蓝队(防守)

  • 检测恶意 hypervisor
  • 识别 rootkit、VM 逃逸漏洞
  • 同样要精通 SVM / VMX

4. 内核驱动开发工程师

  • 做:杀毒引擎、沙盘、系统增强工具

5. 固件 / BIOS / 底层安全工程师

  • 做:SEV、TSME、PSP 相关安全
  • AMD 安全虚拟化技术(非常高端)

6. 模拟器 / 主机逆向工程师(游戏机方向)

哪些岗位反而不需要懂这么深

  • 普通应用开发(Java/Go/Python/ 前端)
  • 游戏业务逻辑开发(Unity/UE 业务)
  • 测试、运维、网络工程师
  • 普通逆向工程师(只懂脱壳、内存修改)

一、先明确:你要学的是 AMD SVM (AMD-V) 硬件虚拟化

不是:

  • GPU 共享内存 SVM(Shared Virtual Memory)❌
  • 机器学习支持向量机 SVM❌
  • 其他任何 SVM ❌

AMD SVM = 双层模式 + 一个控制块(VMCB) + 硬件拦截(VMEXIT) + 硬件内存虚拟化(NPT)

  • Host Mode:Hypervisor(SimpleSvm),最高权限*(Ring -1)
  • Guest Mode:Windows / 游戏 / 反作弊,被监控(Ring 0~3)
  • VMCB:保存 Guest 状态、控制拦截规则
  • VMEXIT:Guest 碰敏感指令 → 硬件切回 Host
  • NPT:硬件加速二级页表,不卡

权限:Host > Guest Ring 0 > Guest Ring 3

万事代码一份(伪代码)

1)simleSVM = simple + SVB

  1. 一段代码如下,只是稍微阅读一下看是否能理解。。。

3)我的结果是:代码好理解,有什么理解不了的;反而是各种水图,PPT,结构图理解不了;

4)还有各种莫名的比喻和排比:"想象一下,在一个大型物流中心,CPU和GPU分别是两个独立的仓库管理员。"懒得吐槽

cpp 复制代码
// 1. 检查 SVM 支持
Cpuid(0x80000001, &eax, &ebx, &ecx, &edx);
if (!(ecx & (1 << 2))) return 不支持;

// 2. 开启 SVME
__readmsr(MSR_EFER, &efer);
efer |= EFER_SVME;
__writemsr(MSR_EFER, efer);

// 3. 分配 VMCB
vmcb = AllocatePage(4KB 对齐);

// 4. 初始化 VMCB
vmcb->control.intercepts = 拦截 CR/MSR/异常;
vmcb->control.msrpm_base_pa = msrpm;
vmcb->control.n_cr3 = npt_cr3; // NPT

// 5. VMRUN 进入 Guest
VMRUN(vmcb_phys);

// 6. VMEXIT 处理(反作弊欺骗)
switch (exit_code) {
  case VMEXIT_CPUID: 伪造 CPUID 返回;
  case VMEXIT_MSR:    伪造 MSR 值;
  case VMEXIT_CR0:    伪造 CR0;
}

参考资料链接

AMD64 Architecture Programmer's Manual Volume 3: General-Purpose and System Instructions

https://docs.amd.com/v/u/en-US/24594_3.37

水文

https://zhuanlan.zhihu.com/p/654394824​​​​​​

Qemu KVM(Kernel Virtual Machine)学习笔记

https://yifengyou.github.io/learn-kvm/docs/%E8%99%9A%E6%8B%9F%E5%8C%96%E5%AE%9E%E7%8E%B0%E6%8A%80%E6%9C%AF/%E8%99%9A%E6%8B%9F%E5%8C%96%E5%AE%9E%E7%8E%B0%E6%8A%80%E6%9C%AF.html

相关推荐
谷公子的藏经阁10 天前
聊点老古董: Arm Cortex-M v6/v7架构及其CPU
arm·cpu·armv7·cortex-m·armv6
’长谷深风‘11 天前
嵌入式 ARM 开发入门解析
汇编·arm开发·cpu·cortex
MaXiaoTiao110513 天前
Triton-CPU 部署实录(Ubuntu + Conda + 自编译 LLVM)
cpu·编译器
程序员一点13 天前
第22章:openEuler 与云计算集成
云计算·cpu
mzhan01714 天前
Linux:intel:Cache Allocation tech
linux·cpu
放逐者-保持本心,方可放逐19 天前
地图 热力图核心封装
javascript·cpu·gpu·热力图·cesium·核心渲染判断·渲染管线优化
HyperAI超神经20 天前
AI驱动量子精修,卡内基梅隆大学等提出AQuaRef,首次用量子力学约束精修蛋白质全原子模型
人工智能·深度学习·机器学习·架构·机器人·cpu·量子计算
HyperAI超神经20 天前
基于2.5万临床数据,斯坦福大学发布首个原生3D腹部CT视觉语言模型,Merlin在752类任务中全面领先
人工智能·深度学习·神经网络·机器学习·3d·语言模型·cpu
HyperAI超神经24 天前
物理信息机器学习新突破!新型GNN架构可对复杂多体动力系统进行准确预测,赋能机器人/航空航天/材料科学
人工智能·深度学习·机器学习·架构·机器人·cpu·物理