C114门户论坛百科APPEN| 举报 切换到宽版

亚星游戏官网

 找回密码
 注册

只需一步,快速开始

短信验证,便捷登录

搜索
查看: 5339|回复: 6

热补丁技术先容 [复制链接]

军衔等级:

亚星游戏官网-yaxin222  大校

注册:2007-4-24
发表于 2009-7-15 21:48:37 |显示全部楼层
热补丁是一种快速、低成本修复产品App版本缺陷的方式。和升级App版本相比,热补丁的主要优势是不会使设备当前正在运行的业务中断,即在不重启设备的情况下,可以对设备当前App版本的缺陷进行修复。

补丁(又被称为补丁单元)是用来修复某个缺陷的程序包,通常以补丁文件的形式发布,一个补丁文件可能包含一个或多个补丁,不同的补丁具有不同的功能。当补丁文件被用户从存储介质加载到内存补丁区中时,补丁文件中的补丁将被分配一个在此内存补丁区中唯一的单元序号,用于标志、管理、操作各补丁,补丁的单元序号从1开始顺序编号,如某补丁文件中有3个补丁单元,那合法的补丁单元号为123

补丁文件中的补丁均为增量补丁。所谓增量补丁,是指各补丁单元对于在其前面的补丁单元有依赖性。也就是说,如果补丁文件中有3个补丁单元,则3号补丁必须在1号和2号补丁生效之后才能运行,而不能直接单独运行3号补丁。

补丁分为正式补丁和临时补丁两种:
l              正式补丁(Common patches)是通过版本发布流程发布的补丁。
l              临时补丁(Temporary patches)是未通过版本发布流程发布,用于临时解决紧急问题和需求的补丁。
正式补丁总会包含前面临时补丁的功能,从而替代前面的临时补丁。补丁的类型只对补丁加载(Load)过程产生影响——系统在加载正式补丁之前会先将系统中所有临时补丁删除。

每个补丁都有自身的状态,只有在用户命令行的干预下才能发生切换。补丁状态切换与命令操作关系如 1所示,其中IDLEDEACTIVEACTIVERUNNING表示补丁的不同状态,加载、临时运行、确认运行、停止运行、删除、安装、卸载表示补丁操作,分别对应命令patch loadpatch activepatch runpatch deactivepatch deletepatch installundo patch install,箭头方向表示状态的转变方向,比如对DEACTIVE状态的补丁实行patch active操作,补丁的状态就会变为ACTIVE

表示尚未加载补丁,无法进行安装、运行等补丁操作,如 2所示(假设系统补丁区中最多可以加载8个补丁)。
系统重启后,所有处于IDLE状态的补丁仍为IDLE状态。

表示补丁已经被加载到内存补丁区,但尚未运行。假设用户将加载的补丁文件包含7个补丁,则这7个补丁将在经过版本校验及CRC校验之后被加载到内存补丁区,加载成功的补丁处于DEACTIVE状态,此时系统中补丁状态如 3所示。
系统重启后,所有处于DEACTIVE状态的补丁仍为DEACTIVE状态。

表示补丁已经被临时运行,即该补丁在设备重启之后不再生效。对于 37个处于DEACTIVE状态的补丁,用户如果激活前5个补丁,则前5个补丁的状态将由DEACTIVE状态变成ACTIVE状态,此时系统中补丁状态如 4所示。
系统重启后,所有处于ACTIVE状态的补丁将变成DEACTIVE状态。

确认运行状态(RUNNING

表示补丁已经被永久运行,即该补丁在设备重启之后会继续生效。对于 45个处于ACTIVE状态的补丁,用户确认运行前3个补丁后,前3个补丁的状态将由ACTIVE状态变成RUNNING状态。


系统重启后,所有处于RUNNING状态的补丁将保持为RUNNING状态。

举报本楼

本帖有 6 个回帖,您需要登录后才能浏览 登录 | 注册
您需要登录后才可以回帖 登录 | 注册 |

手机版|C114 ( 沪ICP备12002291号-1 )|联系大家 |网站地图  

GMT+8, 2024-11-19 01:28 , Processed in 0.150649 second(s), 16 queries , Gzip On.

Copyright © 1999-2023 C114 All Rights Reserved

Discuz Licensed

回顶部
XML 地图 | Sitemap 地图