【计算机硬件】硬盘的 HPA 和 DOC

HPA 与 DCO

二者是ATA/SATA硬盘固件层面的两种隐藏区域机制,普通Windows、磁盘管理器、DiskGenius默认看不到,只能通过底层ATA命令访问,早年大量用于OEM笔记本恢复分区、固件工具存储,取证、工控硬盘经常遇到。

1、HPA Host Protected Area 主机保护区域

ATA‑4标准定义,位于硬盘LBA地址的尾部

  • 原理:SET MAX ADDRESS 修改硬盘对外报告的最大LBA地址。硬盘真实总容量不变,对外只暴露前面一部分;尾部剩下的扇区就是HPA,普通OS/BIOS无法寻址。
  • 关键特点
    1. 不修改SMART原生总容量 ,用READ NATIVE MAX ADDRESS可以读出硬盘真实物理容量,可以直接用ATA命令解除HPA,恢复全部容量。
    2. 可以挂到别的电脑上,HPA配置保留。
    3. 典型用途:联想/戴尔老笔记本系统恢复镜像、硬盘厂商诊断工具、预桌面环境。
    4. 临时属性:清除HPA相对简单,hdparm、PC3000都可以重置。

Linux检测命令:hdparm -N /dev/sda,对比max sectorsnative max sectors是否一致。

2、DCO Device Configuration Overlay 设备配置覆盖(你说的DOC)

ATA‑6引入,比HPA层级更深,硬盘固件内部配置

  • 原理:修改硬盘IDENTIFY DEVICE返回的全部参数:不仅改报告容量,还可以屏蔽硬盘硬件特性(关闭NCQ、关闭缓存等),SMART也会上报修改后的虚假容量
  • 关键特点
    1. 优先级高于HPA:DCO开启后,甚至可以把HPA本身也隐藏掉。
    2. 固化在硬盘固件配置,部分硬盘DCO有签名锁,普通命令无法直接清除,恢复难度远大于HPA。
    3. 原始用途:OEM工厂,不同物理容量硬盘统一伪装成同一规格出货;二手盘市场会遇到人为DCO篡改容量。
    4. 普通分区软件完全无法识别真实磁盘大小。

HPA vs DCO对比简表

项目 HPA DCO
标准 ATA‑4 ATA‑6
作用层级 ATA接口层 硬盘固件层
SMART真实容量 不变,可读取原生最大值 SMART返回虚假容量
恢复难度 低,标准ATA命令即可清除 高,部分硬盘锁死,需要专业工具
能否屏蔽硬件功能 不能 可以关闭硬盘特性(缓存、NCQ)
典型场景 OEM系统恢复分区 工厂统一规格、二手盘篡改容量

现实场景注意

  1. Windows XP时代工控硬盘、老笔记本经常存在HPA;DCO家用盘很少,多见于翻新盘、OEM工厂流出盘。
  2. 普通格式化、重分区无法清除HPA/DCO,只是操作可见部分;尾部隐藏扇区数据依然保留。
  3. 做磁盘镜像、数据销毁时,必须专门解除HPA/DCO,否则镜像会漏掉尾部隐藏区域。

通俗理解

  • HPA:告诉系统"硬盘到此结束",尾巴一截藏起来,硬盘自己知道真实大小,钥匙公开。
  • DCO:硬盘固件自己骗自己,对外全盘谎报参数,部分硬盘钥匙锁死。
相关推荐
Industio_触觉智能3 天前
瑞芯微ISP内核驱动深度解析|RKISP39从架构到Probe初始化全流程(上篇)
linux·嵌入式硬件·硬件架构·摄像头·isp·瑞芯微·rk3576
智者知已应修善业6 天前
【用D触发器组成000-001-010-011-100】2025-6-7
驱动开发·经验分享·笔记·硬件架构·硬件工程
硅农程序猿6 天前
芯片设计中的门级仿真(GLS):从零延迟验证到 SDF 时序反标
嵌入式硬件·硬件架构·risc-v·芯片
某林2129 天前
ros从底层硬件到 Web 端部署
python·机器人·硬件架构·ros2
电子科技圈11 天前
第二代无线平台历久弥新,赋能物联网创新迭代
人工智能·嵌入式硬件·mcu·物联网·设计模式·硬件架构·iot
某林21215 天前
ROS2 + WebRTC + MQTT 异构系统架构
架构·系统架构·机器人·硬件架构·webrtc·ros2
Industio_触觉智能15 天前
RK3576开发板UART驱动实战教程(下),基于触觉智能开发板演示
嵌入式硬件·硬件架构·串口·uart·智能硬件·rs232·rs485
a44931536215 天前
iPhone 充电故障的全链路诊断——从 Lightning/USB-C 接口到 Tristar 充电 IC
c语言·macos·ios·电脑·硬件架构·iphone
hai31524754316 天前
芯片设计的空间框架:以电流步距与相位为核心
硬件架构·硬件工程·材料工程