最大限度地减少 Windows Update 自动更新后的重新启动

Building Windows 8

来自 Windows 工程团队的内部视点

最大限度地减少 Windows Update 自动更新后的重新启动

Rate This
  • Comments 1

在 Internet 出现之前,获取服务包或“修补程序”等更新简直堪比登天。您必须订购升级“介质”或购买赠送 CD 的杂志才能获得这些更新。当然,Internet 的出现彻底改变了这种情况。事实上,在最初建立 ftp.microsoft.com 时,提供的首批服务中就包含了获取 MS-DOS 和 Windows 更新的功能。随着 Windows Update 的推出,我们不再仅仅满足于提供简单的软件交付服务,而是致力于打造一种能够及时为您提供高质量更新的 方式。这些自动更新功能逐渐赢得了用户的信任,我们对此颇感自豪。如今,Windows Update 在很多方面都已经成为了 Internet 上规模最大的服务之一,当然,我们也将充分利用开发 Windows 8 的机会,改善产品更新的体验。本博文的作者是 Windows Update 小组的 小组项目经理 Farzana Rahman。
–Steven

提到 Windows Update 时,关注度最高的话题之一就是自动更新过程中恼人的重新启动。理由很简单,重新启动有可能打断您正在进行的重要工作。

首当其冲的问题就是为什么安装更新一定需要重新启动?理想情况下,我们很希望能够在后台无缝地安装所有更新而无需重新启动。但在实际情况中,有时一些需要更新的文件正在使用,导致安装程序无法对其进行更新。在这种情况下,我们需要重新启动您的计算机以完成安装。因此, 自动更新体验需要进行重新启动,以便处理此类情况。

我们知道这一结构性难题令众多管理员和最终用户颇感沮丧,但这种技术代表了 Windows 的最新发展。各位需要了解一点,对于许多更新来说,即使您可以继续在内存中运行现有代码,这些代码也将成为潜在的安全漏洞(或存在其他风险),因此,在您重新启动计算机前,这些安全( 或可靠性)风险将继续存在。我们将继续致力于解决这个问题。同时,支持 Windows 重新启动管理器(在 Windows Vista 中引入)的应用程序将在重新启动后带您返回中断时的准确状态。

在本博客中,我希望向您介绍我们在 Windows 8 中对自动更新体验进行的一些改进,这些改进可以在一定程度上减少重新启动给您带来的烦恼。

首先,向您介绍 Windows Update 的一些背景知识

Windows Update(我们的团队中通常将其简称为 WU)目前负责更新超过 3.5 亿台运行 Windows 7 的 PC 和超过 8 亿台运行各种其他受支持 Windows 平台的 PC。如果您将 Windows 软件更新服务器和那些出于各种原因手动进行全部更新的计算机(或用户)考虑在内,事实上还有很多 PC 是间接通过 WU 进行更新的。

尽管距离 Windows Update 的推出已有十多年的时间,Windows Update 体验却近乎止步不前,因此越来越难以适应不断变化的生态系统,特别是不断变化的安全需求。Windows Update 在及时更新 PC 以防止针对 Windows 的大规模漏洞攻击方面取得了巨大的成 功。

引入自动更新功能以来,我们一直都在致力于缩短向所有 WU 用户提供最新更新的时间。下图(图 1)显示了更新发布后,Windows 7 将在多长时间后完成下载和安装。各用户的下载速度主要由 PC 的 Internet 连接决定,不受 WU 的控制,但有趣的是,您可以从下图中看到 ,大部分更新活动发生在发布后的最初三天内。三天这个数字是一个重要的线索,我将在稍候介绍 Windows 8 中相关改进时会再次提到这个数字。

一周内,全球 90% 需要更新的用户都成功完成了安装和重新启动,此后安装的数量开始趋于平稳。

柱状图显示,第 1 天 70% 的下载尚未安装,第 2 天为 35%,第 3 天为约 15%,此后逐渐减少。第 1 天完成的下载和安装均为 5-

10%,第 3 天达到 60-70%,并从第 7 天开始基本稳定在 90%。

图 1 – 从更新发布时起完成的下载和安装

接近 90% 的 Windows 7 用户选择了自动更新,这在很大程度上证明了作为一种后台维护机制(也理应如此),我们的更新功能在广度和速度方面的平衡为用户带来了诸多裨益。90% 的总用户群也让我们明确了应该自动安装更新,而无需显示通知或要求确认这一大方向。

 

Windows 7

自动安装更新

89.30%

安装前通知我

2.38%

下载前通知我

3.44%

从不检查更新

4.88%

图 2 – 各种自动更新模式的使用情况

Windows 7 中的自动更新和重新启动

下一个合乎逻辑的问题就是选择自动安装更新的用户获得了怎样的安装体验?下图展示了从 WU 匿名收集的数据,我们可以从中了解到选择自动安装的用户使用的各种安装模式。

饼图显示:交互式安装占 31%;按计划时间安装占 30%;关机时安装占 39%。

您可以从上图中看到,自动安装更新一共有 3 种主要类别。以下是我们通过对各类别进行分析得出的结论。

关机时安装 – 大部分自动更新用户 (39%) 会在关闭系统时进行更新。对于这些用户,不存在自动重新启动的问题,因为系统会在关闭时完成所有安装步骤。这对用户来说是干扰性最小的体验,因此我们希望尽可能在用户自行关闭系统时“搭个便车”,从而避免单独的重 新启动,以便减少用户的麻烦。

按计划时间安装 - 对于按照计划自动更新的 30% 用户,安装将始于计划的时间(默认为 PC 所在时区的凌晨 3 点)或用户下次登录时(如果错过了凌晨 3 点的时间窗口)。WU 会自动进行完成安装所需的任何重新启动。为了确保您在重新启动前有机会保存所有重要 的文件和数据,我们会在重新启动前 15 分钟向您展示一个倒计时器。

Windows 7 对话框显示:重新启动计算机以完成重要更新的安装。Windows 无法更新系统正在使用的重

要文件和服务。请确保在重新启动之前保存文件。重新启动开始于: 14 分 37 秒。选项:请在以下时间段之后提醒我: 10 分钟。按钮:立即重新启动/推迟
提示重新启动的 15 分钟倒计时器
提示重新启动的 15 分钟倒计时器

无需用户交互即可重新启动可以帮助我们迅速将重要更新部署到 Windows 生态系统的大部分领域。平均来说,在发布重要更新的一周内,90% 的 PC 都已经安装了更新(请参见图 1)。另一方面,这种自动重新启动行为也可能为用户带来某些意料之外的后果。重新启动前您可能 不会获得通知,这种情况有可能一个月发生一次,如果存在带外更新,则发生频率可能会更高。这种不可测性可能会导致用户数据的损失。大部分自动安装及后续的重新启动发生在凌晨 3 点,此时用户大多不在计算机旁边,因此无法保存重要的事务。我们听说过很多令人心碎的故事,很多 用户一觉醒来回到 PC 跟前,发现计算机发生了重新启动,并因此丢失了某些重要数据。在另一些情况下,用户并未丢失数据,但需要重新开始中断的工作(例如,耗时较长的复制作业)。

互动式安装 - 我们惊讶地发现 31% 的用户采用互动方式安装更新;在这 31% 的用户中,大约 20% 选择了自动安装,但在中途采取某种方式进行了人工干预。如果您选择了自动安装,WU 将在出现可用更新时提供弹出式通知。这些通知显然吸引了人们的注意力,因此 他们单击了通知并通过交互的方式安装了这些更新。但事实上,这助长了一种并非出自本意的行为。如果您选择了自动更新,则完全没有必要在每次出现可用更新时进行繁琐的交互式安装。大部分安装应该在后台以静默方式完成,WU 只应在需要进行某些重要操作时(例如,等待重新启动) 通知您。来自用户的反馈也支持这种做法,很多用户都认为不断弹出的通知实在是很烦人。他们希望如果自己选择了自动更新,更新就确实能够自动进行。这种情况屡见不鲜,我们希望给予人们对 PC 体验的控制力,但事实上提供了过多的信息��最终导致用户感觉丧失了控制力。

吸取了这些经验后,我们开始着手为 Windows 8 设计一种更好的自动更新和重新启动体验。

解决有关更新和重新启动的难题

WU 团队始终面对的一个问题就是“如何能在不打扰用户的情况下,用最佳的方式快速更新 PC?”事实证明,这是最难回答的问题,而且这个问题并没有一个简单的答案。

我们所面临的难题是如何在快速更新和通知用户即将到来的重新启动之间进行权衡。显然,在漏洞遭到攻击前进行更新并保护 PC 的重要性一如既往。但是,我们还希望在处理重新启动时提供更好的体验,并力求在确保满足及时更新这一目标的同时避免数据损失。

为此,我们在设计该体验时遵循了以下指导原则:

  • 自动更新体验不得打扰用户,但要保证用户获知重要操作
  • 尽量避免重新启动,并避免重新启动的不可测性
  • 持续、及时地确保 PC 和生态系统处于最新状态并获得保护

Windows 8 中的 Windows Update 和重新启动处理

根据这些原则,我们对 Windows 8 更新体验进行了以下改进。

WU 将合并一个月中的所有重新启动,与月度安全发布保持一致。这意味着您的 PC 将仅在安装了安全更新并需要重新启动时才会重新启动。借助这一改进,一个月中发布多个需要重新启动的更新也不会产生影响,因为这些重新启动会随着安全发布一次性完成。由于安全更 新只会在每月的第二个星期二发布一个补丁,因此您每个月将只需进行一次重新启动。这一简化带来了以下三方面的好处:及时确保系统安全、减少重新启动次数并增加重新启动的可预测性。

等待月度安全发布的规则有一个例外,那就是修复蠕虫类漏洞(例如,冲击波蠕虫)的重要安全更新。在这种情况下,WU 将不会等待,而是直接自动进行下载、安装和重新启动。这种情况也只是在该安全威胁已经相当严重时才会发生。

WU 会通知您任何即将到来的自动更新。假设 WU 已经检测到、下载并安装了安全更新并需要进行重新启动。Windows Update 将在登录屏幕上通过一条持续 3 天消息,通知您即将到来的自动重新启动。由于大部分更新活动发生在每次更新发布后的 3 天内 [请参 见图 1],因此我们会给您 3 天的时间,以允许您在方便时进行重新启动。您可以通过在登录屏幕上选择 [Update and shutdown](更新并关机)或 [Update and restart](更新并重新启动)或在控制面板中访问 Windows Update 来进行重新启动。您将不会再看到关 于等待重新启动的任何弹出通知或对话框。这些消息将改在更加直观和恰当的位置(登录屏幕)显示。随着便携式计算机的日益普及,即使在家庭环境中,登录屏幕的使用也无处不在。

以下是该体验的时间线视图:

1.  一条关于即将到来的重新启动的消息将在登录屏幕上显示 3 天,直到 PC 进行重新启动为止(二者中的较短者)。这表示现在您将有三天的时间在方便时重新启动 PC。您只需在 3 天内看到登录屏幕一次以接收有关即将到来的重新启动的消息, 默认情况下,只要出现 15 分钟的闲置,就会显示锁定屏幕。

电源按钮附近的消息内容:[Windows Update, Your PC will restart in 2 days to finish installing updates.](Windows Update,您的 PC 将在 2 天内重新启动以完成更新的

安装。)

2.  除了登录屏幕上的重新启动通知,锁定屏幕上的电源选项也会在更新发生后立即变为 [Update and restart](更新并重新启动),并在第 2 天或第 3 天加入 [Update and shutdown](更新并关机)选项,以便确保您不会轻易忽略该 消息。这样您就可以在方便时自行重新启动 PC。

电源选项:[Sleep](睡眠)、[Shut down](关机)、[Update and restart](更新并重新启动)。

电源选项:[Sleep](睡眠)、[Update and shut down](更新并关机)、[Update and restart](更新并重新启动)。

3.如果 3 天后仍未进行重新启动,WU 将自动为您重新启动 PC。在这种情况下,自动重新启动将在 3 天缓冲期结束时进行,但如果 WU 在 3 天的缓冲期结束时检测到正在运行的重要应用程序,则将在您下次登录时自动重新启动。我将在下一节中 为您深入介绍此行为。

[Your PC will restart in 13 minutes, 28 seconds.Restart / Close](您的 PC 将在 13 分 

28 秒后重新启动。重新启动 / 关闭)

4.重新启动完成后,登录屏幕上的消息将消失,同时电源选项将恢复为原始选项。我们了解到人们希望 Windows 在重新启动后自动登录,但我们强烈建议您不要这样做,因为此配置会引发潜在的安全问题。

[Sleep](睡眠)、[Shut down](关机)、[Restart](重新启动)

如果存在丢失用户数据的可能性,则推迟自动重新启动。如果当 3 天的缓冲期结束时 PC 仍需要进行自动重新启动,则 WU 仅会在确保不丢失用户数据的情况下重新启动计算机。这表示,如果您没在 PC 跟前(即 PC 已锁定),如果还有应用程序在后台运行,或如果仍 有潜在的未保存工作,则 WU 会将自动重新启动推迟到您下次返回到计算机跟前并进行登录时。登录时,系统将要求您保存当前的工作,并会看到一条计算机将在 15 分钟内关闭的提示。

确保尽可能减少对用户活动的干扰。在重要的演示、游戏或电影进行中弹出有关重新启动的通知或对话框,即使客气点说,也是不太愉快的经历。在尝试重新启动您的 PC 时,如果您正处于演示模式下、进行游戏或以全屏模式观看电影,WU 会检测到此状态,并将自动重新启 动推迟到下次适当的时机或下次登录 PC 时。

针对商业用户的体验。对于采用企业设置的 PC,如果 IT 管理员未设置任何策略,则更新体验将与家庭用户完全相同。但是,IT 管理员可以设置策略,以防止自动安装后进行重新启动(与 Windows 7 中相同)。如果设置了此策略,则将不会出现 3 天的倒计时和自动 重新启动。取而代之,用户将在登录屏幕上看到一条消息,指示 PC 需要进行重新启动,重新启动前,该消息将持续显示。这样,用户将获知需要重新启动,并可自行控制何时重新启动。

[Windows Update, Your PC needs to restart to finish installing security updates.](Windows Update,您的 

PC 需要重新启动以完成安全更新的安装。)

“通知模式”下的用户体验。我还想介绍一下选择在下载或安装更新前获得通知的用户(根据图 2,这些用户约为 WU 用户群的 5.82%)的体验。对于此“通知模式”下的用户,登录屏幕上将显示一条消息。如果选择在下载更新前获得通知,则当可用更新出现时,您将在登录 屏幕上看到一条内容为 [Important updates are ready to be installed](已准备好安装重要更新)的消息。如果选择在安装前获得通知,则当更新下载完成并等待安装时,您将在登录屏幕上看到同一条消息。在这两种情况下,由于安装并未自动进行,您将不会在登录屏 幕上看到有关准备重新启动的消息。

[Windows Update, Important updates are ready to be installed.](Windows Update,已准备好安装重要更新。)

这些改进加在一起帮助我们实现了 Windows Update 的完美平衡,即在不影响用户体验的情况下,确保 PC(和 PC 生态系统)保持最新。

能否对第三方应用程序进行更新?

最后还有很重要的一点需要强调,许多用户反馈中提到希望 WU 能够更新第三方应用程序。显然,人们发现系统中同时存在多个升级程序并不是最理想的解决方案(我们也同意这一点!)每种应用程序升级程序都会带给您不同的体验,您必须经常访问各升级程序来安装更新,并且您永 远都无法预料更新何时会发布,更新的内容是什么等等。人们希望系统中有一个统一的更新程序。另一方面,用户告诉我们他们信任 WU 所提供更新的质量,因此可以放心地选择自动更新系统。我们不希望 WU 中存在任何降低系统可靠性的成分,这样就会促使人们选择手动管理更新,从 而导致 PC 可能在短时间内暴露在潜在漏洞之中。

我们也通过 WU 和“Microsoft Update”选项(选择加入)提供 Microsoft 产品及第三方设备驱动的更新,以及各自的常用设置工具集。所有这些更新都经过仔细的筛选,必须符合 Windows 对有关回滚和恢复以及整体系统影响的约束。举例来说,我们通过 Windows Update 发布的驱动需要通过 Windows 硬件徽标计划的测试,该计划会在验证更新后对其进行签名认证。此外,我们还在不断努力改进验证 系统,以便提供更加出色和优质的驱动。各种应用程序所采用的传输机制、安装工具和整体更新方法多种多样,因此我们无法通过这一种机制来推送所有更新。虽然可能有些令人失望,但在整个生态系统中,无法重新访问所有软件的安装基础也是不争的事实。  

但是,如同我们在 Build 大会上所说,新的 Windows Store 将提供针对 Metro 风格应用程序(包括免费和收费应用程序)的一站式商店,并将提供集成的更新服务以确保应用程序获 得持续的维护。基于这些应用程序的审核过程,以及开发人员对为客户提供价值所作出的承诺,我们将有能力在此项目上为您提供改进。当 Windows Store 进入公开测试阶段后,我们将在后续博文中就该主题展开更加深入的讨论。

我们热切地期待各位提供的反馈。

Farzana

  • Loading...
Leave a Comment
  • Please add 8 and 2 and type the answer here:
  • Post