微软:新算法让Windows 11累积更新体积缩小40%

系统 Windows 算法
今天,Windows 11 系统获得了首个补丁星期二活动日发布的累积更新。

今天,Windows 11 系统获得了首个补丁星期二活动日发布的累积更新。考虑到 Windows 11 系统才在 10 月 5 日发布,因此该累积更新的幅度并不大,只是修复了一些兼容性问题,似乎也没有引入什么新的问题。但如果你仔细观察的话,你就会发现该累积更新的安装速度要比 Windows 10 快了很多。

Windows 是一个用于全球各种环境的操作系统,特别是在这个混合环境中,每个人可能无法获得最快的互联网连接,但仍然需要通过安全补丁保持保护。这就是为什么补丁必须是小尺寸的,尤其是每月的累积更新包含了所有以前发布的修复程序。

Windows 10 Version 1809 及以上功能更新采用了正向和反向差分压缩(forward and reverse differential compression)。它确保操作系统在服务时可以恢复到其基本版本作为中间状态。正如你可能注意到的,虽然正向和反向差分是对称的,但它们的特点是内容非常不同。

微软没有利用双向差分,因为一些转换和补丁可能会删除反向差分所需的数据。为了确保非破坏性的转换,反向 delta 首先需要存储由正向 delta 增加和删除的内容。

但由于内容上的不衔接,这个过程将不是很有效,至少与成对的正向和反向差分压缩相比是这样。你可以在这里的微软白皮书中找到关于这个过程的更多细节。

在 Windows 11 系统中,微软使用了反向更新数据生成(reverse update data generation)的方法,对这一过程进行了重大改变。这是一个看似简单和直观的方法,它观察 delta 指令,然后直接逆转它们,而不经过成对的 delta 反向通道。然而,在后端,这构成了一个重大的后端变化,它使用一个映射表来映射汇编代码功能中的结果变化。微软解释说。

映射的工作原理是对程序的汇编代码进行逐个字节的反汇编,并确定虚拟地址。虚拟地址在逻辑上对应于汇编代码功能的入口点,并在汇编代码被修复更新时发生转移。这些移动被 delta 引擎观察到,并被一个映射表所捕获。关于 delta 应用的映射过程使这些变化的地址正常化,这也是现代架构上开明的 delta 算法如此高效的很大一部分原因。

与基本的修补指令一样,这些转换可以被“观察”和逆转。由于不是所有的映射都是 1:1 的,所以有一点开销,当前向映射与观察到的反向映射冲突时,必须使用额外的修补指令来对齐映射。这可以在原地完成,反向映射将提供与反向 delta 几乎相同的性能,其直接映射来自服务器上完成的 delta 生成。

微软声称,其反向更新数据生成方法使 Windows 11 更新的大小减少了 40%。该公司表示,它在几个月前还为这种方法申请了专利。微软是否会将这种技术也回传到 Windows 10,还有待观察。

 

责任编辑:赵宁宁 来源: 今日头条
相关推荐

2021-09-26 09:48:09

Windows 11操作系统微软

2021-10-06 14:38:32

Windows 11Windows微软

2021-06-29 05:20:30

Windows 11操作系统微软

2021-02-19 23:44:27

Windows 10Windows微软

2021-02-19 18:10:06

微软WindowsWindows 10

2021-10-13 10:32:26

微软Windows 11Windows

2023-12-13 09:27:37

微软Windows 11

2023-04-12 08:25:46

2023-04-12 09:50:54

2021-06-28 05:25:26

Windows 11操作系统微软

2021-10-13 06:50:55

Windows 11操作系统微软

2022-09-14 08:28:31

微软Windows 11

2022-05-25 07:28:00

微软Windows 11

2023-08-09 07:46:13

微软Windows 11

2022-07-13 09:18:05

微软Windows11

2022-01-12 07:48:13

Windows 11操作系统微软

2023-01-11 20:53:50

微软Windows 11

2022-02-09 08:21:43

累积更新微软Windows 10

2021-10-31 12:46:28

微软Windows 11Windows

2023-07-26 15:12:26

WindowsWindows 11微软
点赞
收藏

51CTO技术栈公众号