我们认为花一点时间介绍一下我们在设计 Windows 8 用户界面时的目标会有所帮助。

到目前为止,您已经看到两种不同的 Windows 8 设计元素:首先是 Metro 风格的用户界面,我们之前曾通过视频展示过这一界面,有数百万人观看了该视频。最近,我们在本博客中介绍了我们对熟悉的 Windows 桌面工具(如资源管理器和复制文件对话框)进行的一些改进。我们看到许多人在谈论这些变化。

有些读者可能想知道,这些部件如何协同工作来打造和谐的体验。是否存在两种用户界面?为什么不全都采用 Metro 风格的体验?另一方面,有些人表示 Metro 只适用于平板电脑和触摸屏电脑,而我们应避免使用这种设计风格,因为这会让 Windows 8 变得非常“弱智”。

这是一种寻求平衡的做法,在随后几个月里,我们会在本博客中就该主题展开大量讨论。让两种用户界面合谐共处是 Windows 8 的一个重要特点。作为讨论的切入点,下面介绍一开始我们是如何着手设计 Windows 8 的。

我们在 2009 年夏天就已经开始规划 Windows 8(在 Windows 7 发布之前)。从一开始,我们的意见就是颠覆 Windows,不加限制地重新审视我们支持的用户模型、平台和 API 以及体系结构的最基本元素。我们的目标是打造一种毫不迁就的设计。

这是一项雄心勃勃的任务,它涉及到工具、API、语言、用户界面惯例,甚至是有关 PC 的一些最基本假设。例如,如何将应用程序相互隔离,或如何防止应用程序耗尽所有电池电量?安装(和删除)应用程序如何才能像切换电视频道那样轻松快捷?如何吸引尽可能广泛的开发人员使用新平台?如何使用独特的视角构建触控优先界面?

在我们展示 Windows 8 的第一个演示时,我们介绍了新的 Metro 体验:快捷流畅、有沉浸感、美观并且以应用程序为中心。我们确信,随着随后几个月我们展示的内容的增多,您会发现我们对 Windows 的巅覆程度之深。Metro 风格远不止我们看到的直观设计那么简单。

6102.Metro_2D00_style_2D00_UI_5F00_thumb_5F00_783D9FFF

同时,我们意识到 Windows 7 取得了巨大的成功。这不仅体现在销售数字或用户数量上,还体现在使用深度上。每天有数亿人依赖于 Windows 7 用户界面及现有 Windows 应用程序和设备,这些人非常看重(并且希望)我们将这种体验的诸多方面带到他们的下一台 PC 上。

从这个角度看,Windows 桌面的作用非常清晰。它为人们如今依赖的数十万现有应用程序以及阵容庞大的商业软件提供支持,并提供某些任务所必需的准确度和控制级别。现在人们在 PC 上执行的任务不会仅仅因为有了新的 Metro 样式的应用程序而突然停止。人们如今所依赖的机制(鼠标、物理键盘、触控板)也不会仅仅因为触控被作为首要选项提供而突然变得没多大用处或“不合时宜”。对于许多任务来说,这些工具往往是最符合人体工程学、最快捷、最有效的方式。

在设计 Windows 8 用户界面时我们认识到,您不能像翻书那样,在一夜之间将所有事物抛诸于历史长河,全面迎接新的事物。事实上,有些人确实担心我们会这么做。有人曾说那是唯一行得通的方法。然而,即使是完全接受平板电脑的那些人也同时拥有笔记本电脑,以便在需要更精确的控制或需要使用某个任务关键型(仍在日新月异地发展)应用程序时使用。在人们不愿携带两台不同设备的愿望的驱动下,面向平板电脑和手机的“远程桌面”程序变得很热门,并以极其拙劣的方式试图在某种新尺寸设备中利用 Windows 7 桌面的有效性。

为什么不从头开始呢?为什么不删除所有桌面功能而只提供 Metro 体验?为什么不将所有内容都“转换”为 Metro?对于“推倒重来”的争论众所周知,无论是支持的一方还是反对的一方对此都不陌生。我们采取的做法是构建一种毫不迁就的设计。一种真正地使您能够畅游于我们今天看到的两个世界的设计。我们的设想以开放式 PC 体系结构为依托,硬件功能和软件模式的多次重大变革已证明该体系结构的高度灵活性和适应性;正是这种灵活性为用户界面、连接性、编程模型和硬件功能等的顺利过渡奠定了基础。

我们相信还有一定的空间可提升设计的优雅性,甚至是韵味。您将获取一个美观、快捷流畅的 Metro 风格的界面和大量可供使用的新应用程序。这些应用程序拥有远远超出图形设计范畴的新特性(一个平台)(在发布内部版本时还会出现更多特性)。正如我们所展示的那样,您将获得出色的触控体验,同时又可以使用鼠标、触控板和键盘工作。如果您希望永远沉浸在 Metro 界面中,那么您永远不会看到桌面,除非您刻意选择,否则我们甚至不会加载它(确切地说,根本不会加载代码)!Windows 将焕然一新。

但是,如果您需要桌面体验提供的精准控制、强大的窗口化和文件管理功能、与成千上万现有程序和设备的兼容性,以及对商业软件的支持,这些功能同样唾手可得。您不需要换用另一种设备就能够对照片或影片进行专业编辑,创建工作学习所需要的文档,管理规模庞大的媒体和数据,或者完成如今使用 PC 来完成的大量工作。如果您不想执行任何“PC”操作,则不必勉强自己,您不需要为了这些操作而浪费内存、电池使用时间或提高硬件要求。如果您确实需要这一功能,则可以轻松顺畅地切换过来,因为 Windows 就在那里。本质上,您可以将 Windows 桌面看作是另一个应用程序。

Windows 8 将如今 PC 的功能和灵活性整合起来,让您沉浸在 Metro 风格的体验中。您不必迁就!只需带一台设备,就可以完成所有任务。您可以将该设备连接到要使用的外设。可以使用设计用于连接大显示屏和其他外设的设备。还可以使用既可以是沉浸式平板电脑,也可以是灵活的笔记本电脑的平板笔电设备。

这让我们又回到了我们对桌面体验所做的改进:我们相信 Windows 桌面。它所提供的体验使 Windows 7 PC 成为当今世界上最受欢迎的设备。因此,即使我们相信随着时间的推移,Metro 风格的应用程序将会很好地满足许多应用场景的需要,在可预见的未来,桌面仍将在许多人的生活中发挥着举足轻重的作用。因此我们打算对其进行改进。我们正在就人们对我们的设计选择可能的看法开展讨论,但同时也想将这些选择放在无可匹敌的桌面实用工具的更广阔环境中进行考量。

我们的设计目标非常清晰:绝不迁就。如果需要,您可以在 Metro 风格的应用程序和改进的 Windows 桌面之间无缝切换。现有应用程序、设备和工具在 Windows 8 中仍然存在并有所改进。另一方面,如果您更愿意永远沉浸在 Metro 风格的应用程序(和平台)及新的用户体验中,也没有问题!开发人员可以设计适用于他们希望交付的软件的 API。人们可以争论他们在多大程度上需要或不需要产品的不同方面,但这些不同方面始终存在。Windows 的灵活性使这一切成为可能。

讨论才刚刚开始。随着我们对 Windows 8 用户界面研究的深入,还有许多内容可以讨论。我们将提供全新的体验,从核心技术到用户体验,全面颠覆传统,以实现新的应用场景、新的应用程序和新的 PC 使用方式。

–Steven

Windows 资源管理器是 Windows 桌面用户体验的基础,其界面多年来已历经数次更改,但已经很久未做实质性改变了。Windows 8 是对 Windows 的一次颠覆性改造,因此我们接受了对 Windows 中最常用的桌面工具进行改进(或许只有纸牌游戏不再改进之列)的挑战。项目管理团队的 Alex Simons 撰写了这篇博文,详细回顾了资源管理器的发展历程,并详细介绍了对 Windows 8 的界面和功能所做的主要改进。看到大家对文件操作和用户界面设计的热切关注,我们认识到这是一个非常重要的主题,我们希望就该主题与大家进行广泛对话。本博文囊括了有关该主题的所有内容,可能会比较长。我们会认真观看所有评论和对话内容,并会在以后择机就该主题继续与大家探讨。
— Steven

很高兴有机会与大家分享我们正在进行的对 Windows 资源管理器的文件管理功能进行改进的有关情况。资源管理器是 Windows 最重要的组成部分之一,最早可追溯至 Windows 1.0 中的“MS-DOS Executive”!

4380.Figure-1-_2D00_-MS_2D00_DOS-Executive_5F00_thumb
Windows 1.0 中的 MS-DOS Executive

多年来,资源管理器及之前的相似功能组件已进行过多次重大更迭:

2727.Figure-2-_2D00_-3Dot1-File-Explorer_5F00_thumb
Windows 3.1 中的 File Manager

2543.Figure-3-_2D00_-XP-Explorer_5F00_thumb
Windows XP 中的资源管理器

6443.Figure-4-_2D00_-Win7-Explorer_5F00_thumb
Windows 7 中的资源管理器

有机会再次参与这一基础组件的开发并对其进行重构,心中不免有点忐忑,不过也非常兴奋。阅读本博文的许多读者(包括我们开发团队的大多数人)都是资源管理器中的文件管理工具的最极端“高级用户”,与大多数普通用户相比,这些用户可能对文件管理工具的功能具有更苛刻的要求。在我们着手对 Windows 中的文件管理功能进行改进时,我们了解到许多用户早就已经“抛弃”了资源管理器,而是选择使用各种附加工具或替代软件。

正如我们在介绍对复制功能的改进的博文中所述,遥测数据表明,使用这些附加工具和替代软件用户大多数都是高级用户,数量虽然不多,但其影响力却不可忽视。大约有 0.45% 的 PC 安装了(注意,这并不意味着在使用)最流行的附加工具和替代软件(诸如 TeraCopy、FastCopy、xplorer2 和 QTTabBar 之类的程序)。我们认识到,这些附加工具和替代软件已经存在很久了,它们提供了各种深层次的文件管理功能,我们不可能满足所有人对文件管理功能的要求,我们的目标是改进大多数用户的使用体验。我们预计,在未来很长一段时间内,第三方附加工具都会有活跃的市场。Windows 8 提供了一个对所有用户的使用体验进行实质性改进的机会。

资源管理器的使用现状

多年来,资源管理器在不断增加对各种不同功能的支持,许多功能都与文件管理无关,例如,启动程序、查看照片、播放视频以及播放音乐等。我们很想知道,到底有多少用户真正在使用这些功能。通过分析我们的遥测数据,我们可以了解众多用户对资源管理器的总体使用情况。注意,遥测数据收集计划是一项用户自愿选择加入的计划,数据的收集采用匿名方式,不会收集用户的隐私数据。遥测数据代表了各种类型用户数亿次的操作会话。

3113.Figure-5-_2D00_-Command-use_5F00_thumb_5F00_1

这一数据很有意思。首先,该数据表明,尽管资源管理器中提供的命令数量多达 200 多个,但用户真正频繁使用的命令数量却非常少:位列前 10 位的命令在总命令使用量的 81.8%。此外,该数据还表明,绝大部分人在使用资源管理器时都是在执行文件管理任务,位列前 7 位的命令(占命令使用量的 72.2%)都是用于管理/操作文件。

这一数据代表了资源管理器的总体使用情况,涵盖用户安装了第三方附加工具并使用我们的内置命令(例如,“播放”、“打开”、“编辑”、“电子邮件”等)的情况。例如,用户可能安装了第三方音乐播放应用程序并将其设置为所有音乐格式的默认播放器。通过资源管理器使用这一第三方加载项的命令也计入以上数据中。还有一类附加工具会添加自己的自定义命令(例如,“旋转”),尽管我们知道这些附加工具的安装和调用频率(不到用户会话的 2%),但我们不会收集这些附加工具的遥测数据。这一数据相当可靠,包含数亿个的数据点,非常清晰地为我们呈现了用户的总体使用情况,同时还呈现了各种使用模式(深度和宽度、频率等)的分布情况。

我们还想知道用户在资源管理器中最喜欢通过哪种方式来调用命令。

0576.Figure-6-_2D00_-Command-entrypoint_5F00_thumb

上述遥测数据表明,54.5% 的命令是通过点击右键出现的上下文菜单调用的,另外还有 32.2% 的命令是通过键盘快捷方式(上图中的“热键”)调用的,只有 10.9% 的命令通过命令栏调用,而在 Windows 7 和 Vista 中,命令栏是资源管理器中最显眼的用户界面元素。由于超过 85% 的命令是通过主要用户界面之外的方法调用的,显然,有必要对资源管理器的用户体验进行改进,提高操作效率,将命令放置在更显眼的位置并提供统一的访问方式。通过上下文菜单访问命令已经很便捷了,只要您不向其中添加过多的命令,就不必对上下文菜单中的命令进行改进。如果上下文菜单中的命令过多,以至于需要通过“搜索”才能找到所需功能,这种形式也违背了上下文菜单的设计初衷。

我们还对客户使用的命令进行了分析,看看有哪些命令出现在命令栏中:

2146.Figure-7-_2D00_-Command-use-with-Command-bar_5F00_thumb

在客户通过资源管理器调用的位列前 10 位的命令中,只有 2 个命令出现在命令栏(用于调用命令的主要用户界面元素)上。这进一步增强了我们信心:通过将最常用的命令放置在最便于访问的位置,我们可以对资源管理器进行改进。我们制订了清晰的用户界面设计原则:最常用的命令应始终位于最便于访问的位置。显然,在现有的设计方案中,我们并未做到这一点。

接下来,我们征求用户和社区的反馈意见。用户对如何改进资源管理器提出了大量建议。许多建议提出希望增加一些附加工具(例如,TeraCopy、QTTabBar、DMEXBar 和 StExBar)或资源管理器替代软件(例如,xplorer2、XYplorer 或 FreeCommander)所提供的功能。

数量最多的一类反馈是请求恢复 Windows Vista 中删除的 Windows XP 的一些功能,特别是恢复 Windows XP 中的“向上”按钮,将剪切、复制、粘贴功能添加回顶层用户界面,并提供更多可自定义的命令表面。呼声很高的另一项请求是希望提供更多的键盘快捷方式。如下所述,在经过重新设计的资源管理器中,我们已经采纳了呼声最高的许多请求。对于“删除”的每一个命令,都有其历史根源,可能源自 Windows 体系结构的更改,也可能源自设计理念的变化。

全新 Windows 资源管理器的目标

在新版本的资源管理器中,我们要完成三个主要目标。

  1. 针对文件管理任务优化资源管理器。将资源管理器回归到其作为高效文件管理器的根本功能,并公开一些隐藏的功能,这些文件管理命令在资源管理器中早已存在,但许可用户可能尚不知道而已。

  2. 创建更流畅的用户体验。将最常用的命令放置在用户界面上最显眼、最合理的可靠位置,以方便查找。根据上下文将命令组织到可预测的位置并按逻辑进行分组,根据用户需要显示正确的相关信息。

  3. 继承资源管理器的优质传统资源。保持资源管理器丰富的强大功能,在 Windows 当前的体系结构和安全模式允许的情况下,恢复呼声最高的、与贴合当前系统要求的 Windows XP 功能。

我们对多种不同的用户界面命令显示模式进行了评估,包括展开式的 Vista/Windows 7 命令栏、Windows 95/Windows XP 样式的工具栏和菜单、一些全新的用户界面显示方式以及 Office 样式的功能区。在诸多显示模式中,功能区模式所展现的优点更为符合我们的目标:

  • 可以在最显眼的中央位置显示最重要的命令,并始终显示在最前面。

  • 便于查找命令,可预知所需的命令并在可靠位置显示。每一个重要的文件管理命令在功能区中都具有固定的显示位置,用户始终能够知道到哪里查找这些命令。

  • 采用便于用户访问的一致方式呈现大量命令(约 200 个),按操作情景对命令进行分组,而不再使用嵌套菜单、弹出窗口、对话框和右键菜单。

  • 提供分组支持并提供多样化的按钮尺寸和图标,便于命令识别;提供实时预览功能并扩展工具提示所包含的信息量,便于执行更深入的考证。

  • 采用与 Office、Microsoft 画图程序和 Windows Live Essentials 相似的命令显示模式,这意味着许多用户很熟悉这一模式,不需要重新学习相关操作方式。

  • 提供一致的可靠用户界面,而不像传统的基于工具栏和菜单的用户界面那样会随着时间的推移而变得不稳定。请参阅 Jensen 之前在开发功能区时就这一主题所发表的博客

这些优点契合我们的三大目标 – 借助功能区,我们可以创建更加优化的文件管理器,各个命令都具有可靠的逻辑位置,操作体验更加流畅。功能区提供了更多的图标选项、选项卡、灵活的布局和分组模式,在设计上具有更高的灵活性,确保我们可以继承资源管理器的优质传统资源。我们可以在不删除以前的顶级命令的情况下显示更丰富的命令集,我们知道,保留这些顶级命令对我们的客户来说真的非常重要。尽管功能区并不是主要针对触控界面而设计,但与下拉菜单和上下文菜单相比,功能区仍然具有更加可靠、更加实用的触控操作性能(对于触控主题,我们也有大量信息要告诉大家,提醒大家观看 Windows 8 视频,我们当然很清楚大家对触控功能极为关注,但是需要说明的是,我们同样知道,键盘和鼠标模式对于高级用户执行文件管理任务是多么重要)。

2553.Figure_2D00_8_2D002D002D00_Win8_2D00_Hero_5F00_thumb_5F00_2B3376FC
“Windows 8”中的资源管理器

我们知道,在资源管理器中使用功能区可能会遭到像我一样的高级用户的质疑,但是功能区确实在许多方面具有明显的优势:

  • 显示隐藏的功能,高级用户可能已经使用了这些功能,但是在当前的资源管理器中使用这些功能需要安装第三方的附加工具。
  • 在功能区中为每个命令提供键盘快捷方式,许多用户已要求这样做。
  • 通过快速访问工具栏提供用户界面自定义功能,我们可以提供与 Windows XP 基本相当的自定义能力。

我们也知道,与将功能区引入 Office 时一样,这会带来屏幕的实际工作区变小的问题。我们正在努力消减这一问题所带来的影响,我们将在本博文后面的部分中介绍我们所采取的措施。

最后,在当前的资源管理器中,一些高级用户使用了许多第三方附加工具。在 Windows 8 的右键上下文菜单中,这些附加工具仍然可以正常工作,对于运行这些加载项的高级用户来说,到目前为止,右键上下文菜单是最常用的访问点(这些附加工具并不是主要针对探索性使用或偶尔使用而设计的)。不过,这些加载项将无法插入功能区用户界面中。对于我们来说,这是一项非常困难的工程选择,我们预计到,许多人在知道这一消息时会建议我们增加这项功能,当然,如果我们现在能够解决这一问题,我们早就这样做了。在本博文中,相当大的篇幅就是在讲述在我们如何在新功能和添加所梦想的功能并予以实现之间做出选择(权衡利弊)。我们认为,这一次能够对资源管理器进行改进并引入自定义功能已经相当了不起了。

另一方面,重新设计期间我们收到的最常见请求之一就是,用户希望我们在提供新用户界面的同时,也同时提供原用户界面。有时,这也被建议为“过渡性”好处,有时也可以称作“兼容性模式”。通过许多产品周期的工作我们也了解到,提供此功能极大地影响了产品的演变和发展。最直接的难度就是添加到功能区的任何新命令需要添加到原 UI 中,尽管已经没有这些命令的逻辑位置。当然,由于新的 UI 也在不断地优化,实现向后兼容性被证实确实是一种双重的挑战。每次我们改变 UI 时,我们获得的“先前”经验都是双倍的。我们希望那些仍然保有软件的用户可以理解,这是我们在深思熟虑后做出的权衡,我们不希望以任何方式进行强制或令用户感觉不快。我们已经深刻意识到更改拥有如此众多使用者的用户界面所肩负的责任。

功能区为用户提供了许多布局选项,我们可以探索许多种不同的选项卡和分组的方式。我们决定主要讨论三个主要的选项卡:[Home](主页)、[Share](共享)和 (视图),再加上一个 [File](文件)菜单以及众多相关选项卡。

新功能区

[Home](主页)选项卡主要用于执行核心文件管理任务,我们已经将所有主要文件管理命令排放在一个显眼的位置:[Copy](复制)、[Paste](粘贴)、[Delete](删除)、[Rename](重命名)、[Cut](剪切)和 [Properties](属性)。我们还将两个常用的继承功能([Move to](移动到)和 [Copy to](复制到))安排到更加明显的位置,同时还将一以前隐藏的功能 [Copy path](复制路径)显示出来,当您需要将一个文件路径复制到一个文件对话框时,或者当您希望在电子邮件中向某人发送指向服务器上某个文件的链接时,这个功能非常有用。

4300.Figure-9-_2D00_-Home-tab-crop_5F00_thumb
新的 [Home](主页)选项卡

[Home](主页)选项卡是我们新的更加流畅的资源管理器体验的核心。用户在资源管理器中执行操作用到的 84% 的命令现在全部集中在一个选项卡内:

5775.Figure-10-_2D00_-Home-tab-usage-heatmap_5F00_thumb
叠加部分显示新 [Home](主页)选项卡每个按钮的命令使用 %

[Share](共享)选项卡用于通过常规方法共享文件,这些常用方法包括将文件压缩然后将其通过电子邮件发送给朋友,或者将其刻录到光盘中。您也可以与您的家庭组或您的网络域中的其他人快速共享文件。它还对当前高亮的文件提供一键式访问。

7848.Figure-11-_2D00_-Share-tab-crop_5F00_thumb
新的 [Share](共享)选项卡

(视图)选项卡提供可用于查看自定义项的选项。我们实现了一键式打开/关闭 [Navigation](导航)窗格、[Preview](预览)窗格和 [Details](详细信息)窗格,可以利用实时预览库查看不同图标显示大小,可以快速按列进行排序和分组,可以快速添加列,还可以轻松访问三个隐藏功能:显示文件扩展名、显示隐藏的项目以及隐藏选定的项目。

3113.Figure-12-_2D00_-View-tab-crop_5F00_thumb
(视图)选项卡

[Navigation](导航)窗格的自定义项选项也非常便于访问 — 在下拉菜单中,您可以一键式访问这些选项,包括用于显示或隐藏收藏夹的一个新选项。

6763.Figure-13-_2D00_-Nav-Pane-options_5F00_thumb
[Navigation](导航)窗格选项

文件菜单和其他工具

利用文件菜单,用户可以快速打开新的资源管理器窗口、访问您的快捷方式以及更改文件夹和搜索选项。它还包括一个受欢迎的以前隐藏的功能 [Open command prompt](打开命令提示)以及一个非常有用的新命令 [Open command prompt as administrator](以管理员身份打开命令提示),这两个选项都会启动一个命令提示,其中显示的路径会设置为当前选定的文件夹。

4212.Figure-14-_2D00_-File-menu-crop_5F00_thumb
[File](文件)菜单

我们提供了众多上下文选项卡,这些选项卡会在特定文件和文件夹的上下文中激活,适用于类似搜索、管理库、查看图片以及播放音乐这样的任务。新的 [Search Tools](搜索工具)上下文选项卡是最好的示例,当您在搜索框中单击时,将会启动该选项卡。

2642.Figure-15-_2D00_-Search-tab-crop_5F00_thumb
[Search](搜索)选项卡

[Search](搜索)选项卡增加了一些以前隐藏的功能,大多数用户可能没有意识到,但是这些功能可以解决他们的常见问题。您可以快速调整任意搜索的范围,按常见日期范围、文件类型、文件大小以及诸如作者或名称这样的属性来进行筛选。您还可以保存这些搜索以便将来使用。

下面是其他资源管理器上下文选项卡的几个示例:

1050.Figure-16-_2D00_-Library-tab-crop_5F00_thumb
[Library Tools](库工具)

5775.Figure-17-_2D00_-Picture-tab-crop_5F00_thumb
[Picture Tools](图片工具)

5861.Figure-18-_2D00_-Disk-tab-crop_5F00_thumb
[Disk Tools](磁盘工具)

适用于宽屏幕的设计

在考虑功能区 UI 时,我们知道必须要关注我们了解到的客户关心的主要问题:屏幕可用空间。我们一直在努力改进这个问题,我们希望挖掘出 Windows 7 的更多遥测数据:

2742.Figure_2D00_19_2D002D002D00_Screen_2D00_resolutions_5F00_thumb_5F00_0ADA71FE

根据这组数据显示,宽屏幕格式(分辨率比 > 1.3 的屏幕)逐渐成为标准。在前 20 种最常使用的屏幕分辨率中,有 17 种是宽屏幕格式,占到了所有 Windows 7 PC 使用量的 83%。这也很容易为大家所理解,因为现在使用的大部分 PC 是便携式计算机,而所有便携式计算机都是宽屏幕。两种常用的标准分辨率几乎全部都是桌面 PC 所使用。我们在 Engineering Windows 7 中对显示分辨率进行了大量有益的讨论,现在看起来,这再次成为大家感兴趣的话题。

了解到这一点后,我们研究了便于更高效使用宽屏幕格式的若干选项,目标是在我们添加功能区后所有的可用垂直空间能够与 Windows 7 中的可用空间一样。我们删除了主视图顶部的标题,将 [Details](详细信息)窗格添加到右侧(另外还对该窗格进行了外观调整),同时将在线状态栏保留在窗口底部,向您显示重要信息。

0576.Figure-20-_2D00_-Details-pane-crop_5F00_thumb
图片的 [Details](详细信息)窗格

此方法为您提供了一个新 [Details](详细信息)窗格,更便于查看、可以更好地利用宽屏幕格式,并且为主文件/文件夹窗格保留了屏幕的可用空间。不同的 PC 可能确切的行数会有所不同,具体取决于您拥有哪些加载项,但是如果采用以 1366 X 768 分辨率运行全屏幕的出厂配置,您可以比在 Windows 7 中在屏幕上增加两行。

4377.Figure-21-_2D00_-Real-Estate-comparison_5F00_thumb

此比较的前提是假设您已经打开了功能区。如果您折叠起功能区(双击该选项卡或单击功能区右侧的最小化箭头),您可以利用我们的新方法获得更多的垂直可用空间。

设计同时兼顾了高级用户

最后,尽管我们做得大多数工作都是集中在令资源管理器适合所有用户使用,不过,我们同时也希望为高级用户提供良好的体验。

从高级用户那里收到的最多请求之一就是希望有更多的键盘快捷方式。所有现有 Windows 资源管理器快捷方式在本版本的资源管理器中也同样有效,但是有了我们的新方法,功能区中有大约 200 个命令有了自己的快捷方式。(注:我们还没有最终统计出功能区的确切命令数,完成后,可能会有 198 至 203 个。)

3113.Figure-22-_2D00_-Keytips-crop_5F00_thumb
键盘快捷方式

高级客户通常会要求具有自定义资源管理器的更多能力和选项。Windows XP 中的资源管理器可能是目前为止可自定义程度最高的版本(您可以从工具栏中添加或删除预先指定的一组按钮,并自定义布局),但是 Windows 7 和 Vista 中的资源管理器 UI 除了安装第三方加载项之外具有非常有限的自定义项选项。

资源管理器中的新快速访问工具栏 (QAT) 提供了许多自定义机会。与 Office 类似,右键单击功能区中的任意按钮,您可以将其添加到 QAT。另外,您可以选择将 QAT 显示在功能区的上面或者下面,是处于打开状态还是最小化状态。资源管理器中可自定义程度有很大的提高(您可以选择将大约 200 个命令添加到 QAT),可以将其重新设置为与 Windows XP 中的自定义化程度相当或低于该程度。

7838.Figure-23-_2D00_-QAT-crop_5F00_thumb
QAT 自定义项选项

1641.Figure-24-_2D00_-Alex_2700_s-customizations_5F00_thumb
具有最小化功能区的自定义 QAT

最后,正如您在上面的屏幕截图所看到的那样,我们已经令“向上”按钮重新回归。

6443.Figure-25-_2D00_-Up-button-crop_5F00_thumb
“向上”按钮的回归!

这无疑是改进资源管理器方面最常收到的请求,是令某些 Windows 资源管理器的继承功能重新回归的好时机。

下面请观看这个快速演示视频,我将带您浏览新的 Windows 资源管理器的主要功能。


请下载此视频在您常用的媒体播放器中进行观看:
高质量 MP4 | 低质量 MP4

–Alex Simons

非常感谢您的建议,这对于我们改进文件管理基础操作十分有帮助。我们做出的改变击中了公众的兴奋点,大家热情关注的讨论之声如潮水涌来。这是为什么 Windows 8 相关工作充满趣味的原因。尽管评论和建议涉及我们讨论的众多议题, 然而到目前为止,交锋最激烈的讨论来自文件名冲突对话框(仅一个对话框!),因此这个话题的讨论可以说相当深入和充分。通过回顾开发过程中的设计存档,向您展示我们的设计思路和实现这些思路的方式 — 我们认为这很有意义。在这个问题上,我 们还会回来继续讨论我们所做的所有变更,不过我们认为花一些精力来了解我们的设计方向也大有裨益。此博文是由研发该功能的相关人员(包括 Ben Truelove(设计人员)、Matt Duignan(UX 研发人员)、Jon Class 和 Ilana Smith(项目经理))撰写,他们同时也参与了 Windows 8 其他部分的工作。–Steven

我们上一篇关于 Windows 8 中新的复制体验的博文引发了关于新 [Choose Files](选择文件 )对话框(用于解决文件名冲突)的大量问题和评论。看到大家如此关注这个问题,我们觉得有必要与大家分享我们的设计迭代和引导设计方向的可用性测试。

在已实施的设计中,对于文件名冲突(或简称“冲突”)有两种控制级别。

  • 主要体验是只需单击一次即可批��管理所有冲突,提供 [Replace all](全部替换)或 [Skip all](全部跳过)选项。我们将其称为“简单冲突解决”对话框。
  • 还有一种选项,就是进入次要体验,提供更多信息和更多精细控制。这是“详细冲突解决”对话框。

7416.Figure_2D00_1_2D002D002D00_Final_2D00_dialogs_5F00_thumb_5F00_7F2D4AAE

Windows 7 及以前版本

解决文件名冲突是一个固有的棘手任务,因为它涉及在两个非常相似的内容之间做出明智选择。

下面是我们在 Windows 3.1 中的处理方式:

0878.Figure_2D00_2_2D002D002D00_Windows31Conflict_5F00_thumb_5F00_6559147F

到 Windows 7 时,我们确实进行了一些改进:

5658.Figure_2D00_3_2D002D002D00_Win7_2D00_conflict_5F00_thumb_5F00_4465A1D8

在 Windows 7 中,有大量的信息可以帮助用户进行选择,同时提供了更多操作选项。对于 Windows 8,我们认为可以更进一步改进这个功能,便于用户高效地做出正确选择,更快速地完成文件传输任务。正如我们之前提到的,针对现有对话 框的反馈和请求支持的电话非常清楚明朗,在一个非常复杂的对话框中做出正确选择需要哪些信息,团队成员非常费劲才有了一些眉目。尽管我们已经做了大量的工作,但有时还是会出现不妥之处,需要花费相当多时间来处理。考虑到有数百万人使用的 是早先发布的 Windows 7 版本,并且在我们的论坛中这并非讨论热点(不是说不会出现相关问题,而是并非被广泛提起)。

针对 Windows 7 体验的改进

首先,我们力图保持应用体验的前后一致性,与此同时通过优化进行决策所必需的关键信息,来不断改进该功能。

4456.Figure_2D00_4_2D002D002D00_Win7_2D00_iterations_5F00_thumb_5F00_4CD90B35

这些设计引入了一些非常切题的思路:

  • 去除不必要的标签(类似“修改日期”),明显的说明性文本令我们可以快速一览即可提供重要的详细信息。
  • 元数据形容词会被重点强调。而不会要求用户比较诸如文件大小(使用类似“较大”这样的字词向用户提供正确的摘要)等值。
  • 智能默认值是预先选定的,可以减少用户的工作。
快速而流畅:更好地进行冲突的批量管理

对于 Windows 8 而言,我们希望用户能更快速更高效地完成处理 — 快速而流畅,这是贯穿 Windows 8 所有设计方面的关键词(无论是触摸操作,还是鼠标/键盘操作,均是如此)。下一主要设计迭代,意在紧跟密切的复制进度体验,将排队 的冲突排放在一个单一对话框中,以提供更流畅管理冲突的能力。

引入了优化 [Replace all](全部替换)或 [Skip all](全部跳过)选项的想法。大多数时间里,您确切地知道您正在复制的内容以及发生冲突的原因,您可以对要采取的操作有一个简单明了的选择。

0486.Figure_2D00_5_2D002D002D00_Adding_2D00_Bulk_2D00_Management_5F00_thumb_5F00_25CBB12F

对于您需要更多信息或更精细控制的情况,我们决定会以“层”的形式披露更详细的信息。

我们先从两层开始:

8726.Figure_2D00_6_2D002D002D00_First_2D00_two_2D00_tier_5F00_thumb_5F00_5927748B

然后我们来尝试三层:

8233.Figure_2D00_7_2D002D002D00_Three_2D00_tier_5F00_thumb_5F00_630C65F6

在一层结束:

4201.Figure_2D00_8_2D002D002D00_One_2D00_tier_5F00_thumb_5F00_7725827F

此设计有很多优势。它提供了很多信息。由于单击标题会选择一个列中的所有内容,它提供了管理冲突的更多实际能力。不过,在最初的体验中,这个 UI 表现出相当的复杂性。

我们将这些最佳选项合并,如下:

6354.Figure_2D00_9_2D002D002D00_One_2D00_dialog_2D00_two_2D00_tier_5F00_thumb_5F00_20B94DB3

简单而详细的冲突解决

此设计的目标是在简化性和适合用户模式的能力之间达到一个平衡,这一点非常清楚。

不幸的是,我们在此设计方面遇到了一个真正的挑战:当您选择 [Let me pick](我来选择)时,结果令人非常困惑,并且非常复杂,因为简单和高级的选项同时都可用。这会导致一个这样的设计,“简单冲突解决”对话框和“详细冲突解决”对话 框是独立的体验。

4213.Figure_2D00_10_2D002D002D00_Basic_2D00_structure_5F00_thumb_5F00_3B8573BF

有了这项决定,我们的基本结构已经就位。

精调

对用户测试进行准备的过程中,我们对设计进行迭代。

  • 我们清除了由单一缩略图引起的混淆。
  • 我们令源和目标(及其列)更加明显。
  • 我们的用户辅助团队(撰写用户在产品、帮助和 Web 中使用的文本的技术专家)帮助我们编写更流畅的文本。

3443.Figure_2D00_11_2D002D002D00_Pre_2D00_test_5F00_thumb_5F00_0BE75533

有趣的是,“简单冲突解决”对话框和一些用于处理单一文件冲突的初期设计之间具有相似性。这两个设计与该对话框的最终设计之间也非常相似。

第一轮可用性调研

在我们的可用性测试中,我们的调研人员寻找了一组目标对象,他们不在 Microsoft 环境中工作,技能水平和经验也大相径庭。我们向他们展示了该软件,并让他们完成一组任务。他们描述思路时我们仔细倾听,仔细观察他们查看 UI 的方式 并评定是否成功完成任务,我们可以获取对该设计的有价值的洞见。

理解可用性测试是我们使用的一个工具,这一点至关重要。曾经使用过该工具的人会知道您本人不仅要是这个领域的专家,还要是设计测试方面的专家,因为,观察者的偏见和测试结构会很容易导致您对优化存在固有缺陷的解决方案的安全和努力 有一个错误的认识。为了在这方面辅助我们,我们的测试是由那些理解测试所受限制的客观研究者所设计,同时还确保从这些测试中得出来的结论要与测试意欲评定事项相吻合。最终,设计选项要求使用许多不同的输入(定性和定量以及经验和直观)。

我们知道,我们在第一轮的可用性测试中学习了很多东西,做了很多的更改,所以我们使用了 RITE 方法作为我们的协议。大多数可用性研究对所有用户测试同一 UI,但是有了 RITE,我们会基于我们所了解的内容在参与者之间进行持续更改。(在这个环节,我们是使用 PowerPoint 幻灯片进行测试,所以 进行更改很方便。)

我们不需要对“简单冲突解决”对话框进行很多更改,因为它测试结果良好,但是我们对“详细冲突解决”对话框测试了很多不同的内容:

6507.Figure_2D00_12_2D002D002D00_First_2D00_RITE_5F00_thumb_5F00_72BEC98A

我们的主要经验总结:

  • 复选框是必要的。尽管我们倾向于没有复选框的更为清晰的外观,它在测试中的表现却不是很好。当随 UI 呈现时,用户不知道如何操作。在提供适当的选择线索方面,复选框非常有效。我们保留了一个大的单击目标区域,以便用户可以单击复 选框、缩略图或文本以选择一个文件。

6675.Figure_2D00_13_2D002D002D00_Hit_2D00_target_5F00_thumb_5F00_36DF4338

单击目标区域以便进行文件选择

  • 将形容词(如“较新”或“较大”)与元数据混合可能会导致混淆。用户将它们解释为两个不同的概念。形容词尤其容易出现问题 — 人们会认为他们是标题,或是在描述文件位置(例如,“较旧”会被理解成在描述目标中的文件,因为“较旧的文件” 就是指当前文件拷贝的前身)。
  • 列需要更为明显突出。初看起来,它像 Explorer 中的“平铺”视图,而不是一个表。
更多精调

对于形容词和列问题,没有一个简单的解决方案,这就需要更为复杂的设计思路:

1488.Figure_2D00_14_2D002D002D00_Intra_2D00_test_2D00_refinement_5F00_thumb_5F00_470B0B31

在如何最好地定义层级以及源/目标与冲突行的重要性方面,我们确实很纠结。我们尝试了竖线,这会造成源和目标分隔得太远。我们最终采用了水平线,与文件名组合成为标题,可以明显地显示冲突之间的差异。复选框用于区别源和目标之间的选 项,而不会干扰这些区别。

我们最初的一些想法在这时被放弃了:

  • 没有默认选项。随着冲突在页面上向下滚动,默认值会造成太多的数据丢失风险。一行中没有选择会导致复制被跳过的文件,所以不会丢失数据。
  • 没有形容词。我们喜欢“较新”和“较大”,但是他们会造成混淆,用户更喜欢具体的数据。
    为了帮助用户进行选择,我们选择了更为细微的建议 — 较新和较大的元数据值在 UI 中为粗体。这已经被证实为特别有效,无需引入 新概念或增加混乱。
更多可用性调研

我们下一轮的可用性测试,将与最终设计非常接近,出现在测试中备选项目将很少:

2061.Figure_2D00_15_2D002D002D00_Second_2D00_usability_2D00_test_5F00_thumb_5F00_0B6AFC71

无疑第三个选项是赢家。两列的视图是使用空间的最有效方式,可以将复选框移动到离问题更近一些。日期和时间需要在同一行上,因为一般来说它们是单一值。

“详细冲突解决”对话框还提供了以下功能,以便在需要更多信息进行选择时提供帮助:

  • 双击缩略图会打开文件。
  • 右键单击缩略图会打开标准上下文菜单。
  • 蓝色的源和目标文本是可单击的,可在 Explorer 中打开这些位置。
  • 在缩略图或链接上悬停将会显示一个工具提示,带有全文件路径。
继续迭代

我们已经不断进行更多研究,自初次调研后进行了一些细小的变更,但是基本的核心设计还保持不变。看到用户轻松地完成可用性测试,令人非常欣慰。解决文件名冲突是一个很棘手的问题,但用户非常高效且成功完成。

3566.Figure_2D00_16_2D002D002D00_Final_2D00_hero_2D00_shot_5F00_thumb_5F00_0A266392

请查看我们上一篇关于文件管理基础操作的博文中的视频,以查看动态的设计过程。

我们热切需要您的反馈,并愿意充分利用之以期达成最佳设计,因此对所有评论意见,我们都在认真对待。我们还热切期望您能参与到实际设计工作中来。

– Ben Truelove、Matt Duignan、Jon Class 和 Ilana Smith

(如果您没有找到上述几位,那么还有几位团队成员在上篇博文中就引发的问题发表了一些观点,他们是:AlexMattJordiJon)。

我们想针对一项最常用的功能提前发布一篇 Windows 8 博文,这项功能已经有很长时间都没有实质性的改进了。随着本地数据存储量以 TB 为单位迅猛增长,存储内容包含大量照片(采用多种格式,且文件都非常庞大)、音乐和视频,这些常见操作正在以新的方式被过度使用。由于应用环境发生了变化,并且我们也不断收到要求对这些操作予以改进的反馈意见,因此决定重新审视这些操作并进行重新设计。当然这只是众多功能中的其中一项,但我们想先从一项与我们每个人都息息相关的功能开始。Alex Simons 是 Windows 工程团队的项目管理总监,他撰写了这篇博文来介绍有关重新设计某些 Windows 文件管理基础操作的情况。(备注:许多人的问题都与 Building Windows 8 视频 #1 有关,这是一个用户体验演示视频,可访问 http://win8.ms/uxpreview1 进行观看。这种编号方式似乎很容易让人造成误解,因此我们决定在今后的视频中不再使用编号。)–Steven

复制、移动、重命名和删除无疑是 Windows 资源管理器中最常使用的功能,占命令总使用量的 50%(基于 Windows 7 遥测数据)。对于 Windows 8,我们想要确保用户在使用这些核心文件管理命令(我们将其统称为“复制作业”)时能够具有良好的使用体��。

从遥测数据(从数亿名选择提供有关产品使用情况的匿名数据的用户那里收集)可以看出,尽管 50% 的作业可以在 10 秒钟内完成,但是许多人也会执行大型作业,其中 20% 的作业需要两分钟以上的时间才能完成。以前版本的 Windows 资源管理器也可以处理这些类型的作业,但资源管理器没有针对大批量作业或并行执行多个复制作业进行优化。

可用性研究证实了我们大多数人都知道的一项事实,那就是 Windows 7 复制体验中存在一些非常混乱、容易让人迷惑的操作选项。当人们需要处理具有相同名称的文件和文件夹(我们称之为文件名冲突)时,这种情况尤其明显。最后,我们的遥测数据表明,5.61% 的复制作业无法完成,原因多种多样,可能是网络中断,也可能是用户取消了操作。

我们显然可以在大批量复制、文件名冲突处理和确保成功完成复制作业方面对用户体验进行改进。

阅读本博文的许多人可能对这一问题的看法有所不同。您可能像我一样已经拥有了第三方复制管理工具来处理这些大批量复制作业。我们的遥测数据表明,只有不到 0.45% 的 Windows 7 PC 在运行这些最流行的附加工具(如 TeraCopy、FastCopy 和 Copy Handler)。尽管鉴于 Windows 7 客户群的规模,使用这些工具的用户的绝对数量可能已相当庞大,但这一数据仍然在告诉我们,大多数人并不具备适合大批量复制作业的出色工具。

我们的目标不是要在功能上与这些附加工具展开竞争。我们预计,在很长一段时间内第三方附加工具都会有活跃的市场。我们的工作重点是改善当前正在使用资源管理器执行大批量复制的用户的体验,这些用户希望对复制过程加强控制,并希望更深入地了解复制过程中所发生的事情,以及获得更简洁、更直接的用户体验。

在 Windows 8 中,我们针对改善复制体验设定了三个主要目标:

  • 在一个位置管理所有复制作业:为管理和监视当前正在执行的复制作业打造一种统一的体验。
  • 清晰、简洁:消除让人分心的因素,为用户提供所需的关键信息。
  • 由用户来控制:让用户控制其复制操作。

基于上述目标,我们对复制体验进行了四项重大改进。下面是介绍这些改进的简短视频演示,但请继续阅读本博文以获取更详细的说明。


如果您在此处看不到视频或者视频无法播放,请从以下地址下载:高质量 MP4 | 低质量 MP4

首先,我们整合了复制体验。现在,您可以在一个组合用户界面中查看和控制当前正在执行的所有资源管理器复制作业。Windows 8 在此对话框中显示了所有等待执行的复制作业,使您无需在多个浮动对话框中导航,即可找到所需的作业。

4454.Figure_2D00_1_2D002D002D00_Consolidated_2D00_copy_2D00_fewer_2D00_details_2D00_view_5F00_thumb_5F00_0F05CB7D

接下来,我们添加了暂停、恢复和停止当前正在执行的每项复制操作的功能。这样您就可以控制要首先完成哪些复制作业。在复制操作正在进行时,您还可以单击任何源文件夹或目标文件夹以打开这些文件夹。

7510.Figure_2D00_2_2D002D002D00_Pause_2D00_fewer_2D00_details_2D00_view_5F00_thumb_5F00_272935D8

为了支持用于设置优先级和作出决定的这一新功能,我们添加了包含实时吞吐量图表的详细视图。现在,每项复制作业都显示有数据传输速度、传输速度趋势以及要传输的剩余数据量。尽管设计初衷并不是为了进行基准测试,但在许多情况下,它还是能够提供一种快速轻松的方法来评估特定作业的进展情况。

下面是三项正在执行中的复制作业:

8171.Figure_2D00_3_2D002D002D00_Consolidated_2D00_copy_2D00_more_2D00_details_2D00_view_5F00_thumb_5F00_181256FE

从下图中可以看出,当其中的两项复制作业暂停时,文件传输速度有大幅提升:

8156.Figure_2D00_4_2D002D002D00_Pause_2D00_more_2D00_details_2D00_view_5F00_thumb_5F00_5DB6E11C

我们猜想许多人都想知道,在提高完成复制所需的估计剩余时间的准确性方面,我们都做了哪些工作。(很多年以来,一些非常搞笑的笑话就是以此为笑料的。)

估计完成复制所需的剩余时间几乎不可能做到非常精确,因为存在许多无法预知和不可控制的因素,例如,在复制作业的过程中,将有多少网络带宽可用?您的防病毒软件是否突然启动并开始扫描文件?其他应用程序是否需要访问硬盘?用户是否开始另一项复制作业?

我们没有花大量时间来改进剩余时间的估算方法(因为即便改进后的估算值能够比现在更准确一些,但该估算值的可信度仍然非常低),而是将工作重点放在采用一种直观、实用的方式向用户呈现可信度更高的信息。这样,我们就可以向您提供最可靠的信息,以便您可以做出更明智的决策。

我们的最后一组主要改进简化并消除了解决文件名冲突的体验(也称为“冲突解决”)。现在,我们应该承认当前的体验可能很容易让人迷惑。人们不知道如何区分文件,并且他们发现很难找到作出决策所需的信息。

3858.Figure_2D00_5_2D002D002D00_Windows_2D00_7_2D00_conflict_5F00_thumb_5F00_2E18C290

Windows 7“冲突解决”对话框

我们的新设计更清晰、简洁、高效,提供了一种更加直观、更便于操作的冲突解决方法。来自源文件夹的所有文件都位于左侧。目标文件夹中存在文件名冲突的所有文件都位于右侧。屏幕布局很容易理解,并在一个对话框中集中显示所有冲突的关键信息。

0310.Figure_2D00_6_2D002D002D00_Conflict_2D00_more_2D00_details_5F00_thumb_5F00_285DA8EA
新增的 Windows 8“冲突解决”对话框

如果需要了解有关冲突文件的更多信息,可以将光标悬停在缩略图图像上以查看文件路径,也可以双击缩略图图像在当前位置打开该文件。

最后,除了这些重大改进,我们还进行了一次彻底的大扫除,删除了许多您认为很烦人或多余的确认对话框(即,“确实要把此文件放入回收站吗?”或“确实要合并这些文件夹吗?”),以打造更安静、更少打扰的体验。

所有这些改进共同打造了有明显改善的复制体验,一种统一、简洁、清晰并且一切在您掌控的体验。

–Alex Simons

在涉及行业广泛的 IT 生态系统中,Windows 扮演的重要角色之一是开发对新硬件的支持。这是一个非常复杂的过程,因此,在本帖中,我们想讨论一下 USB 3.0 支持。我们知道,每个人都渴望使用 USB 3.0,因为它带来了巨大的改进。这也是我们的第一篇视频贴 – 我们只是按部就班地“制作”视频,并不奢求能够达到很高的制作水准,不过我想我们已经清晰地阐述了我们所要表达的意思(注意:视频以 HTML5 的格式嵌入,可供下载)。在观看该视频时,您可能会觉得这些文件副本的进度指示器看起来有点过时了,我也有同感…我们正在予以改进,敬请期待。本贴由设备和网络组的项目管理总监 Dennis Flanagan 撰写。–Steven

USB 3.0 的数据传输速度比 USB 2.0 要快 10 倍,改进后的电源管理功能可延长电池的使用时间,基于上述优点,USB 3.0 势必将推动世界上最流行的 PC 接口的变革。预计到 2015 年,所有新的 PC 都将提供 USB 3.0 端口,仅 2015 年这一年内就将销售超过 20 亿的新“超高速”USB 设备。

2500.Figure_2D00_1_2D002D002D00_USB_2D00_3_2D00_PC_2D00_Market_2D00_Forecast_5F00_thumb_5F00_3EDFE22F
In-Stat,2011 年 6 月

4555.Figure_2D00_2_2D002D002D00_USB_2D00_Device_2D00_Market_2D00_Forecast_2D00_June_2D00_2011_5F00_thumb_5F00_250BAC00
In-Stat,2011 年 6 月

决定支持 USB 3.0 并不难,但是要在不影响现有的 USB 生态系统的前提下支持 USB 3.0 却是要克服的一个巨大挑战。我们的设计必须严格遵循修订后的 3.0 规范以便支持新兴的 USB 3.0 硬件。但 Windows 还必须与数十亿台旧 USB 设备保持兼容。如何编写一个软件,在新硬件上支持最新技术,同时确保可与全球 100 亿现有的家庭和办公设备兼容?

首先,让我们来回顾一下 USB 的发展史

1996 年,USB 标准组织发布了第一个 USB 规范,该规范为 USB 设备定义了两种速度:低速 (1.5 Mbps) 和全速 (12 Mbps)。在当时,“热插入”设备(插入和拔出时无需重新启动)是一项革命性的理念。USB 还支持不同的数据传输方式:批量传输,适用于发送大量数据之后不需要保存的设备,如打印机;同步传输,适用于以特定顺序不断接收数据的设备,如扬声器;以及中断传输,适用于偶尔发送数据的设备,如键盘。

1996 年的规范还将 USB 设备的复杂性转嫁到 PC,降低了设备的成本且更容易实施。这些特点使 USB 成为最具吸引力的外部设备连接器。最终,设备制造商采纳了 USB 标准并加入了该标准组织,为不同类型的设备定义软件和硬件之间的通用接口。这些通用接口允许单一软件驱动程序、类驱动程序支持各种类型的设备。从 Microsoft 采纳 USB 技术并加入该标准组织开始,多年来我们一致在为许多规范贡献自己的力量。我们在 Windows 95 OSR 2 中引入了 USB 1.1 支持。

2000 年,USB 2.0 规范出台,该规范提供了全新的高速 (480 Mbps) 数据传输模式。但遗憾的是,用于将 PC 连接到设备的硬件(主控制器)与早期版本不兼容。高速设备与所有控制器兼容,但低速和全速设备与 USB 2.0 控制器不兼容。PC 需要附带两个不同的控制器或嵌入一个 USB 2.0 集线器,才能支持所有类型的设备。在 Windows XP SP1 中,我们通过增加 USB 2.0 功能增强了现有的软件驱动程序堆栈。

USB 3 之路:从促进规范的标准化入手

通过积极参与 USB 标准组织,我们帮助建立了一个可兼顾高性能和互操作性的规范。与 USB 实施者论坛的其他成员一样,我们希望看到一个更快、更节能的 USB 版本,与 USB 2.0 不同,在该版本中,硬件和软件的单一组合可以与所有的 USB 设备兼容。

2008 年,USB 标准组织发布了新的 USB 3.0 规范,其中包括新的主控制器并定义了新的“超高速”USB 设备 (5 Gbps)。结合使用新的主控制器和“超高速”USB 设备,控制器和设备的理论运行速度要比 USB 2.0 快 10 倍。使用这一新标准,您只需大约 80 秒钟即可从 USB 存储驱动器中复制一部高清电影,而 USB 2.0 需要 15 分钟时间。该规范还引入了一种新的传输类型“流式传输”,它使存储驱动器能够更有效地处理读取和写入操作。

与 USB 2.0 相比,新规范的供电功率提高了 80%。这意味着充电速度更快,外部 DVD 驱动器和其他高功率设备不再需要使用造型古怪的“Y”形电缆。不过,在考虑电源设计时,提供更快的充电速度并不是唯一的考虑因素。随着移动计算的普及,人们希望延长 PC 的电池使用时间。而 USB 3.0 还引入了新的低功耗状态,可以更迅速地完成任务并在不需要时随时关闭电源,比上一代更省电。从而使笔记本的电池使用时间更长,台式机的电源功耗更低。

最重要的是,该规范承诺在支持新一代 USB 的同时保持与全速、低速和高速设备兼容。甚至插头都是向后兼容的。

与硬件产业建立密切的合作关系

随着规范的标准化,我们开始着手 Windows 的设计,此时碰到了第一个困难的抉择。是更新我们现有的 USB 软件(从 Windows95 OSR2 开始,我们不断地对该软件进行修改),还是遵循现代的设计原则编写新的软件?不计其数的设备及其驱动程序依赖于我们现有的软件的行为,因此,我们不能简单地转换到全新的设计。如何解决这一问题?我们决定不转换到新的设计,而是为新控制器精心设计一个新的 USB 软件协议堆栈,同时保留现有的接口和行为,确保每一台设备及其驱动程序都能正常工作。对于较早的控制器,我们保留现有的软件堆栈。

为创建全新的 USB 软件堆栈,我们不得不提前开始工作。如果我们等待硬件上市,在为处于萌芽状态的 USB 3.0 生态系统提供支持方面,我们的行动就太晚了。我们决定通过建立“虚拟”设备,在没有任何 USB 3.0 设备上市之前开始工作。虚拟设备是真实的下列物理 USB 硬件的软件表示形式:端口、集线器和其他设备。

在开发虚拟设备的同时,我们开始设计并建立原型。USB 软件非常复杂,因为它必须管理集线器和设备,同时还要处理任何错误。为了创建可供长期使用的产品,我们需要对产品的工作流程进行可视化并予以归档。我们设计了三个庞大的流程图和一个代码生成器,用于将 Visio 图表自动转换到软件中。我们与 Microsoft Research(微软研究院)合作,对名为 Zing 的工具进行了改进,该工具可以验证此软件模型的各个方面。

6242.Figure_2D00_3_2D002D002D00_Flow_2D00_Chart_2D00_with_2D00_its_2D00_Architects_2D00_Randy_2D00_Aull_2D00_and_2D00_Vivek_2D00_Gupta_5F00_6C2359AD
流程图与其架构师 Randy Aull 和 Vivek Gupta

在我们完成了一些初步的开发工作之后,我们收到了第一个 USB 主控制器。我们认识到,尽管模拟提供了一个很好的切入点,但还是不能满足要求。在硬件方面,我们发现一些假设是错误的,存在时序问题和现实世界独有的其他问题。前方的路还需要我们帮助培育新的生态系统,这需要与我们的硬件合作伙伴紧密协作。我们需要共同努力建立原型、互相交流思想、进行深入的技术讨论以及报告错误。我们必须共同承诺展开密切合作,以便在设计完成前找出问题。

随着 USB 3.0 开发工作的不断推进,逐渐形成了社区意识。只有当所支持的硬件取得成功时软件才能取得成功。与我们的硬件产业合作伙伴合作,我们不断地发现问题、制定解决方案并建立新 USB 生态系统的基础。

严密的测试是良好支持性的有力保障

我们在关注为 PC 内的 USB 3.0 芯片提供支持的同时,也不能忽视设备领域。我们必须跳出固有的思维模式。全球有超过 100 亿的 USB 设备。一些设备每日都在使用,一些设备已被丢弃在角落中落满灰尘,但所有设备的设计初衷都是与 Windows PC 配合使用。兼容性是 Windows 的承诺。我们的客户已习惯于期待 Windows 的新版本与他们现有的设备和驱动程序兼容。在 Windows 8 的产品开发过程中,这一兼容性承诺仍然是需要优先考虑的事项。

对于 USB 兼容性测试来说,对每一种设备“逐一”进行测试很不现实,因为设备如此之多,每天都会出现大量的新设备,而许多旧设备已无处购买。我们需要开发一种智能化的设备测试策略。在分析设备统计信息之后,我们将设备分为三大类:

  1. 设备知名度
    在对自动搜集的信息进行分析查找最知名的设备时,我们注意到一种现象。每个类设备(键盘、网络摄像头、打印机、存储器等)都仅有数个知名制造商,并且主要产品系列也屈指可数。在分析这些研究成果后,我们可以用几百种设备来代表 70-80% 的设备。测试人员使用数学术语“等价类”来形容这项工作。
  2. 芯片组
    如果只是考虑知名度数据,则仍然有相当大比例的设备未能进行测试,因此,我们进一步分析实际的电路设计。就像人一样,外观差异很大的设备内在却非常相似。如果我们确保所有 USB 芯片组均能兼容,那么包含这些芯片组的设备极有可能也可正常工作。在设备中嵌入芯片组的芯片组制造商数量相对较少,因此,我们选择用开发板来代表芯片组制造商的 USB IP。
  3. 关注度较高和兼容性不佳的设备
    通常,这些设备并不是兼容呼声最高的 USB 设备。如果这些设备的兼容呼声很高,我们希望确保 Windows 在未来将与之兼容。

我们有 10 年的 USB 开发经验和十几种自动信息搜集途经,在进行了大量的研究和集体讨论之后,我们将 USB 的兼容性测试工作量缩减为大约 1000 种可定期在 Windows 实验室中测试的唯一设备。我们确保设备在连接到 PC 时得到正确识别,适时睡眠和恢复以降低功耗,而且设备能够适应各种复杂条件。我们自动搜集的数据表明,超过 90% 的设备依赖于 Windows 中的 16 类驱动程序,但对于更多的定制设备,我们确认用户可以从 Windows Update 无缝下载这些设备的驱动程序(如提供,需要设备制造商的协作支持)。USB 3.0 提供全面的向后兼容性,旧驱动程序仍然可以正常工作,不需要进行任何更改。

我们还投巨资开发了一款定制工具“Microsoft USB Test Tool”(MUTT),该工具可模拟我们多年来观察到的各种设备行为。MUTT 完全由 Microsoft 自主开发。我们的软件测试工程师利用专业的设计工具(MS Paint)绘制出电路设计。然后,他们开发固件并生成新的测试内容在内部运行。MUTT 诞生了 – 想象一下,一个 USB 拇指驱动器存储了 1000 种设备。随着时间的推移,我们与硬件合作伙伴共享 MUTT,他们利用该工具在其设备上市前发现和解决设备问题。

0434.Figure_2D00_4_2D002D002D00_MUTT_2D00_Designer_2D00_David_2D00_Hargrove_2D00_with_2D00_MUTT_2D00_device_5F00_thumb_5F00_033FD36F
MUTT 设计师 David Hargrove 以及 MUTT 设备

演示视频

对于 USB 3.0 来说,其最重要的优点或许就是充分满足了用户对 USB 的期望:USB3 可提供最强大的功能和最全面的兼容性,可以这么理解吧?低速、全速、高速和超高速的每个 USB 设备都可以在 Windows 8 上运行。这就是我们的工作重点,同时提供最强大和最可靠的 USB 堆栈。

我们看一下 USB 3.0 在执行某些非常繁重的复制任务时的表现以及相比 USB 2.0 的超凡速度。

如果您在此处看不到视频或者视频无法播放,请从以下地址下载:高质量 MP4 | 低质量 MP4

–Dennis