HPA使用详解

HPA技术细节

前言

一、什么是HPA

二、目前采用HPA技术的恢复系统简介 三、DIY版一键恢复系统设计思路 四、附加资源 前言

为什么采用HPA技术呢?用Ghost、 Acronis True Image不是很好吗?你也许会问,是的,这也是首先我必须为大家解释的问题。 传统一键恢复系统介绍:

所谓的一键恢复,实际上原理都是类似的:修改硬盘的主引导记录(MBR),用自己的一段引导代码来代替默认的引导代码,这段引导代码的作用就是在启动时给用户一个提示“按某某键开始恢复系统”,在用户按下这个键后,激活硬盘上的一个隐藏的主分区(Primary Partition),然后从这个分区启动某个恢复软件来用事先备份好的系统恢复用户损坏的系统。早期的一键恢复最大的特点就是那个隐藏分区在分区软件(包括Windows的磁盘管理器)中是可见的,你随时可以删除它,这也是不安全因素之一。当然,这用来应付普通用户的情况已经足够了。 缺点:

1、隐藏分区可被破坏、删除,造成无法成功恢复系统。 2、隐藏分区必须为一个主分区,会对用户造成一些不便。 基于HPA技术的一键恢复系统的优势:

1、HPA技术可以提供用户级安全性保护,以全面保护HPA分区不被未授权用户访问、修改及删除。根据白皮书上提供的安全性对应表来看,在最高等级的安全性下,无法访问、看到、删除HPA分区,无法克隆,而最低的安全性设置下,可以在操作系统中看到该分区,可删除、可克隆、可更新数据。

2、不必占用一个主分区。 一、什么是HPA

Hidden protected area或Host protected area

HPA是在ATA/ATAPI-4里面定义的一个区域,在BIOS可见空间之后,所以通过BIOS访问不到。但是可以通过直接发送AT命令的方式访问。

通俗的理解就是设置读取的硬盘最大的扇区号,从而把高端的内容隐藏起来,这个最大的扇区号能够写在硬盘的某个地方,因此即使你把这个硬盘挂到其它机器上,正常情况下你也看不到隐藏的内容,Fdisk、PowerQuest PartitionMagic 之类的工具也把这个硬盘当做一个稍小容量的硬盘。现在HPA已经是用ATA-5的标准了,这个标准需要在HDD的 Firmware支持的。 phoenix开发的Core Managed Environment (cME)、IBM的Access IBM、联想主板上的recovery easy II,都是利用HPA的例子。

二、目前采用HPA技术的恢复系统简介 (一)系统集成商 1、IBM的Access IBM

在2003年以后推出的机型,IBM采用新的HPA技术取代以前的基于分区的产品恢复方案(Partition-based recovery solutions)。

HPA在启动过程中通过Enter键或Access Thinkpad键来中断启动过程并激活一个叫做Access IBM Predesktop Menu的程序,该程序可以提供诊断系统、操作系统恢复、BIOS升级/恢复等功能。而原来的D2D系统是通过在开机过程中按F11激活Service Partition,并进行操作系

统恢复。HPA技术可以集成Rapid Restore PC功能,可以在HPA分区中对用户数据进行备份。 网上对IBM的一键恢复系统研究的比较多,大家可以在我后面的相关资源中查找。 2、联想的一键恢复4.5及leos系统 (数据最后更新日期:2005年5月19日)

联想的一键恢复系统资料比较少,官方也只是简单的介绍,可下载leos安装光盘进行分析。 3、方正急救恢复系统

方正的急救恢复系统的相关资料太少了,在官方主页也没有找到任何资料,只是在网上下载了厂商部署急救中心工具盘,也没有安装成功。 (二)第三方厂商

1、phoenix的 Phoenix FirstWare Recover Pro 2、超未来资讯有限公司的PCClone v1.64 三、DIY版一键恢复系统设计思路 为什么要DIY?

其它软件臃肿、难以移植、速度不快等。

1、设计要求:通过我们手工改造,实现安装方便、使用稳定,简单、一键恢复系统必须健壮,不易损坏等特点。

2、设计思路:使用HPAtool创建一个(现在还不能确定准确数量,一个还是两个,或者更多)HPA分区,修改MBR代码,使其在启动过程中按某个热键实现从HPA区中启动自己加载的备份软件(从速度等方面考虑,采用Ghost 8.3),进行备份、还原操作。 3、目前存在的问题: (1)、HPA分区的创建

联想提供了一个工具,HPAtool,2005年4月20日的更新版本为v0.8D。 简单介绍一下该工具在创建一个HPA分区时的使用: HPATOOL [/TYPEID xxx(m)/(g)] [/HDDx]

其中,空间将按TypeID先后顺序,从最高扇区向下划分;HDDx为目标硬盘序号。

关于这个TypeID字段,我还是不太理解,依次察看leos安装光盘家悦D机型安装文件 jiayue.bat、 天骄A-X机型安装文件 TJA.bat、天骄E-X机型安装文件 TJE.bat发现 其一、它们都创建了多个分区,然后向相应模块加入到相应分区中。 其二、它们的TypeID字段含义不能理解。

为什么创建多个HPA分区呢?难道多个分区中也存在一个类似“主分区”以实现启动功能的分区吗?在察看了IBM HPA的相关资料后,我发现在HPA分区中确实存在一个类似于硬盘MBR的部分,里面记录了各HPA分区的相关内容,就和分区表相似。但是,在“类似于硬盘MBR的部分”中,“可引导代码”部分和“第一个80分区”是由分区软件创建的?还是后来加入进去的?如果是后来加入进去的,具体的某个数据位代表什么含义呢?联想的已经做成bin模块向进加了。

(2)、如何访问、管理HPA分区

如果是系统集成商的,比如IBM、lenovo,则几乎不是什么问题,采用原装程序即可。但是,我们是DIY的,就必须考虑一下了。

既然int 13不能访问HPA分区,如果才能从该分区启动,并运行Ghost呢?方正提供了一个工具,UlockHPA,该工具运行于DOS环境,可打开HPA分区,进行操作,这只是一个方向。如果按照这个方向进行思考,则:运行该工具所需要的DOS环境从何而来,难道还需要在创建一个主分区安装DOS吗?可以在MBR或者在接下来的几个扇区(前63个扇区)中添加代码,实现相应功能吗?如果这样可以,那最好不过了。当按下热键时,自动打开HPA分区,当备份软件操作完成时,自动关闭该分区(这可能需要本分区其他脚本的支持了)。

(3)、当MBR遭到破坏时,可否手动快速恢复MBR,可否从光盘启动,从HPA分区提取镜像文

件,进行恢复呢?

(4)、如何快速、方便的安装一键恢复系统(此为后话,暂且不论) 四、附加资源

Access IBM 技术支持页面

http://www-3.ibm.com/pc/support/ ... S.html#APPLYCOUNTRY 超未来资讯有限公司的PCClone v1.64

http://www.gotofnet.com/Big5/lin ... s/PCClone/index.htm

PCClone硬碟規格測試程式(该工具主要检测你的硬盘是否支持HPA) http://www.gotofnet.com/Big5/lin ... d/utility/index.htm 联想扬天一键恢复4.0隐藏分区结构

http://faq.lenovo.com.cn:81/docs ... Er77zN1z8dbHoI.html 联想家用电脑新版(v3.0)一键恢复软件说明手册

http://faq.lenovo.com.cn:81/docs ... pa44HJdBCMCctR.html LEOS系统光盘

http://www.znpc.net/bbs/viewthre ... &extra=page=1 备份IBM笔记本隐藏系统分区

http://article.pchome.net/00/01/13/06/index.phtml?40,0 实践高于理论,实践中存在创新。 再唠叨两句:

1、虚拟机不支持HPA分区。

2、请在不重要的硬盘上进行试验。

3、Access IBM HPA header 标准文档 ANSI+NCITS+346-2001。

相关链接地址:http://webstore.ansi.org/ansidoc ... NSI+INCITS+346-2001 遗憾的是,需要$30,哪位有这个标准文档,分享一下,共同研究。

4、我们应以IBM的为原型研究可能比较省力,网上关于IBM的讨论还是有一些的,虽然重复的比较多,ThinkPad 系统恢复光盘可能会对你有用。

注意事项:本人的以上论述参考了本友会论坛和Sysoft 时空论坛以及其他网站的部分文章,对此表示感谢。

本人对HPA技术只是初步研究,以上论述如有不妥之处,敬请各位不吝指教。本篇文章可自由转载,但请保留文件原样,注明出处,并保留注意事项,谢谢。 于200608022028再次更新: 看来有必要介绍一些基础知识了

ATA/ATAPI-4 revision 18 (final draft)

http://t13.org/project/d1153r18-ATA-ATAPI-4.pdf ATA/ATAPI-5 revision 3 (final draft)

http://t13.org/project/d1321r3-ATA-ATAPI-5.pdf

当然还有ATA/ATAPI-6、ATA/ATAPI-7、ATA/ATAPI-8等其他资料,需要的同志可以从http://www.t13.org/ 下载。

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4