解读Windows RT
夏昆冈 于 2012.11.08 16:08:21 | 源自:www.soomal.com | 版权:原创 | 平均/总评分:09.84/246
  • 有读者在催问何时发布Surface的相关测试,但我们并不着急,短时间把玩就写完测评也不是Soomal的一贯作风,在测评之前,我们还是有必要深入的了解一下,这样也能让读者更清楚Surface到底是什么样子的产品。

    Surface 基于Windows RT[下文中简称WinRT],而WinRT内有乾坤,看点甚多,在发表Surface相关文章之前,我们有必要更详细的解读一下WinRT。

    WinRT是Windows 8 家族中一个比较特殊的版本,相比同期发布桌面版Windows8以及针对手机Windows Phone 8,WinRT有何技术方面的变化,媒体没有过多的提及,大家对WinRT的印象基本上是,有新的Windows UI界面,其针对平板设计,它基于ARM处理器开发。

    微软独占的Windows RT桌面环境

  • Surface是截稿之前唯一上市的WinRT设备,我们也是借助这台机器来了解的WinRT。在《解读Windows 8 》[作者:夏昆冈 ] 一文中有一段文字提及WinRT,它具有新的WUI[Windows UI]界面之外,也保留了传统的桌面模式,而且可以调用Windows8的几乎一样的系统功能,包括多用户/多账号管理、硬件管理、系统设置、文件资源管理、各种联网操作[远程控制/Windows网络共享/网络映射]、注册表修改、服务管理、进程和多任务管理等等,它在使用上,与Windows8完全一样。对于WinRT,完全可以理解为Windows 8的ARM版本。如果类比其他平板设备的操作系统,例如iOS和Android,WinRT在系统功能上明显更强悍。可以这么认为,基于WinRT的平板设备是平板化的笔记本,而其他平板设备是平板化的掌机,除了都有平板的相同形态以外,设计理念完全不同,或者可以暂且认为这是在差异化竞争或殊途同归、条条大道通罗马什么的。这也将是我们在评估Surface时需要考虑的因素。

    桌面环境的建立,有赖于Win32 APIs。微软在广为推广Windows UI以及其底层的Windows Runtime APIs可以实现跨平台编程之时,也悄悄的让Win32 APIs跨了平台。对于普通消费者这个APIs不太熟悉,这里简单介绍一下,所谓APIs,就是应用程序接口的集合,是应用程序和系统通讯的渠道。而Win32 APIs是传统的编程接口,Windows桌面程序都依赖这个APIs开发,通过Win32 APIs开发的程序数量多到无法统计,而且有非常多重量级的软件,这也是Windows生态最吸引人的地方。

    只要Win32 APIs能保持兼容,也就意味着大量的软件资源可以移植到WinRT环境当中。理论上,这种想法也是合乎逻辑的。但微软却对此实施了限制,微软没有对开发者开放编译器。

    编译器是什么?简单说,就是将源代码转换成机器码的工具,也就是变成了可执行的应用程序。没有这个编译器,源代码只是代码而已。微软只公开了X86/X64的编译器,没有提供ARM编译器,所以想象中的大规模程序移植不会实现。而WinRT的桌面模式变成了微软独占的环境,WinRT下的所有桌面程序都必须微软开发,这实际上阻断了这个模式下的第三方开发者。

    对此微软此举,传统程序的开发者怨言颇多,因为基于Win32 APIs开发,编程自由度高很多,也有知名软件开发商指责微软垄断桌面环境有悖公平竞争,但微软毫无妥协之意,其中原因,我们之前简单分析过,不外乎几点。

    • 阻断了桌面程序的开发,同时也可以让开发者全力投入WUI程序的设计当中。
      如果开放桌面编程,可能会导致程序失去监管,此举可以限制不良程序的流氓行为。
      开放ARM编译器会威胁到英特尔。

    特别注释:在某些技术文档中指出微软真正禁止的不是编译器,而是Win32 APIs的使用权限。但结果都一样,即目前WinRT桌面开发环境是微软独占,第三方不但无法开发桌面程序,还将无法开发驱动、服务程序[例如FTP/HTTP]等等。

    为什么Windows RT要有桌面?

    Surface上市之后,有人批评其革新不彻底,两套界面,搞得不伦不类,桌面版这么设计也就罢了,针对平板的操作系统还如此,就显得不可理解,而且桌面环境还无法移植X86平台的桌面程序,则更无法理解。

    从技术角度来说,去掉桌面环境,对微软来说不是难事,Windows Phone就是如此,且系统维护会变得更加简单。但没有这么做的根源还在于设计理念的差异,微软希望平板是平板化的笔记本,一个系统功能齐全的笔记本。

    既然如此,为什么要开发成ARM版的,直接选择英特尔或者AMD的处理器不就行了?

    选择ARM的原因?

    选择ARM,然后搞一个和X86版本几乎一样的Windows,做出这样的选择,必然是有原因的。众所周知,ARM处理器要相对省电、而X86/X64处理器的性能要更好,但对于移动设备来说,处理器的耗电量问题显得更加突出,也增加了ARM处理器的竞争力,基于此考虑,开发ARM版本的WinRT也显得理所当然。

    有人会想认为,X86里也有低功耗的处理器可以选择,英特尔的Atom就是。我们也确实这么认为过,于是我们攒了一台基于Atom D2700的电脑,4G内存和64G SSD,安装了Windows 8 Pro,用来和Surface做对比,但结果却是大大出乎意料的,采用了Tegra 3的Surface要更为流畅。为什么会出现这种现象?不严谨的分析是集成显卡导致的效率低下,在Windows 8这一代系统支持DirectX全界面加速,这大大的增加了系统流畅度,Tegar3的集成显卡可以支持加速,但D2700的集成显卡尚不给力,或者驱动存在很大问题……[注:最新的Atom Z2760 的显核已经可以支持Windows 8 DX加速]

    我们似乎瞬间就明白了为什么要微软要开发ARM版本的原因。微软已经没耐心等待英特尔的低功耗高性能处理器了。而在硬件支持方面,nVIDIA这样的伙伴跟进得还更快,在未来,ARM还有提高的空间,流畅运行大部分应用变得越来越现实。

    最新的消息显示,ARM公司在配合微软开发WinRT 64位版本,WinRT还有更长远规划。

    英特尔会很受伤?

  • Wintel是一个用于描述微软+英特尔战略联盟的专用词汇,这种模式形成了软硬件相互推动的模式,成就了个人电脑的辉煌。但目前这个联盟的却面临着抉择。

    微软只要开放WinRT Win32编程,大量的程序就会被移植过来,这是显而易见的事情,WinRT 下的生态会立刻变得丰富多彩起来,WinRT和Windows 8的用户体验的差异性会越来越小,即便ARM在很长时间内无法追上X86的性能,也足以满足轻量应用,而且待机方面的表现更好,更加便携。显然,英特尔会很受伤。这也许是微软坚持不开放编译器的最重要原因。

    桌面编程环境何时开放?开发者施加的压力、WinRT设备的销量、英特尔是否能及时的拿出真正有竞争力的处理器、PC是否会继续整体性下滑等等都会成为变量。目前微软还有选择权。

    Windows RT是什么

    再来看看WinRT是一个什么性质的操作系统,它真的是用来和iOS、Android竞争的?显然不是,它是一个将Windows 移植于ARM的计划的开始,微软称之为WOA[Windows on ARM],微软寄希望WOA与 Windows on X86能实现两条腿走路,关键的原因是英特尔跟不上市场的变化,而ARM处理器突飞猛进。将ARM作为低功耗且性能合适的便携型PC已经时机成熟。WinRT有突破的一面,敢于和Wintel进行割裂,这一步迈得很大。但也有迟疑的一面,例如不开放桌面编程环境,让生态无法短时间内建立。

    不管怎样,WinRT终于来了,摆在我们面前的Surface首先是一台ARM PC,不管是从广义上还是狭义上的定义,这是一台不折不扣的PC,而其次才是平板电脑,这是它的形态。

    不管成败,基于WinRT的Surface都会成为PC发展史中的“关键先生”,因此我们也对它额外关注,不以“颠覆性的设计”或者“这玩意太二”来评估它。我们计划出一系列相关的文章,与大家分享我们的看法和新了解到的知识,欢迎关注。

    请评分
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    125.039.030.***
    125.039.030.***
    发表于2014.02.25 11:33:49
    73
    221.176.033.***
    221.176.033.***
    发表于2013.01.10 10:49:37
    72
    123.127.211.***
    123.127.211.***
    发表于2013.01.07 20:39:56
    71
    114.247.056.***
    114.247.056.***
    发表于2012.11.15 23:11:51
    70
    134.130.116.***
    134.130.116.***
    发表于2012.11.13 06:43:08
    69
    03
    发表于2012.11.11 03:19:57
    68
    03

    此帖使用Android提交
    发表于2012.11.11 00:11:33
    67
    094.194.***.***
    094.194.***.***
    66
    03
    发表于2012.11.10 11:18:18
    65
    03
    移植依旧浪费资源,所以更希望微软能给力地构建一个泛用虚拟硬件层,真正的统一ARM及X86平台。——至少应该让所有基于win8开发的软件能自由地再ARM与X86使用,毕竟没有人会愿意为了同一套软件购买两个许可吧?
    另外想说的就是,微软依旧没有改掉十几年的老毛病,系统贼大,功能虽然全面但是及其臃肿。面对这样的系统,本来就没多少的空间更加拥挤了。——毕竟在移动设备上每一寸空间都是宝贵的。
    发表于2012.11.10 11:03:20
    64
    061.148.***.***
    061.148.***.***

    此帖使用Android提交
    发表于2012.11.10 10:04:17
    63
    061.148.244.***
    061.148.244.***
    发表于2012.11.10 10:03:32
    62
    03
    发表于2012.11.10 02:15:04
    61
    111.161.046.***
    111.161.046.***
    发表于2012.11.10 00:04:15
    60
    220.187.014.***
    220.187.014.***
    发表于2012.11.09 23:48:12
    59
    123.118.174.***
    123.118.174.***
    发表于2012.11.09 23:18:56
    58
    175.160.196.***
    175.160.196.***
    发表于2012.11.09 23:07:22
    57
    116.022.135.***
    116.022.135.***
    发表于2012.11.09 23:07:08
    56
    123.138.207.***
    123.138.207.***
    发表于2012.11.09 19:45:41
    55
    113.097.***.***
    113.097.***.***
    RW:基于Windows RT的平板设备是平板化的笔记本,而其他平板设备是平板化的网络MP4。卖个骚(Microsoft)很快就要普及高帅富和白富美,接着就是普罗大众。
    发表于2012.11.09 18:20:00
    54
    提示
    本贴不可匿名回复,回复等级为:1 ,您现在正处在潜水状态
    回复
    验证码
    1322 为防止广告机贴垃圾,不得已而为之
    表情
    正文