天高地厚

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

我看Windows 8 RT

Posted on 2013-05-28 10:49  天高地厚-GNU  阅读(109)  评论(1编辑  收藏  举报

Windows 8 RT是Windows runtime的简称,要理解WinRT先要了解一个问题,Windows NT开发时,实际上是支持很多CPU类型的,事实上他的确量产了某些CPU(例如安腾)的版本,只不过他的使用群体太少,很多人不知道而已。 所以Windows 8支持多种ARM CPU其实是不难的事情,编写一堆的驱动就可以了。

  真的那么简单吗?

  当然不是,如果你的程序是本地应用程序,即那些程序直接使用特定CPU指令的程序,是不可以在各种CPU版本的Windows上运行的,很不幸,众多的C、C++编写的程序基本上都是这种。所以你现在玩的魔兽是不可以运行在ARM版的Windows 8上的。但有一点,.NET、Java或者一些脚本语言的程序是可以做到的,他们都是在运行时才转换CPU指令的。

  讲了这么多,问题来了,微软既然很容易设计出ARM版的Windows,已经早就有.NET了,为什么还要折腾什么Windows RT,还有那个奇怪的Metro样式程序。

  一切回归商业!

  苹果的iPhone火的不用说了,本来微软靠Windows CE打塞班和黑莓,日子过得很好,结果iPhone让他的日子很难过,后来的安卓更是不省心。

  平板市场虽然没有手机市场那么火,但是潜力巨大。

  还有一个还没有点燃的市场,电视,广义上来说是家庭娱乐中心,苹果也搞了,还没有太火,但同样市场巨大。

  那微软怎么办?

  所有的手机、平板和电视都跑Windows那肯定是目标,所以需要打通各个环节实现这个目标。

  所有的手机、平板和电视都运行同一个版本的Windows,现在还做不到,但至少Windows核心要同一个,这就是Windows RT的使命,大家看到的Windows Phone 8和Windows 8公用一个核心就是这个道理了,下一代的Xbox虽然没有任何技术方面的消息,但我可以非常肯定,他也使用相同的Windows RT核心。

  第二步,需要提供统一的编程界面和用户界面,.NET或Javascript仅完成了基本面,函数库和UI库才是关键,Windows RT提供了这些支持,关键是UI库,他选择了Metro风格,为什么不是大家熟悉的窗口呢?我认为,你总不能在电视机上让用户点鼠标吧,所以你不管怎么分析,Metro风格的界面是相对能统一的风格,至少手机、平板和电视看起来效果不错。

  还缺少一步,.NET或Javascript的程序,编写一些商业应用程序或者简单的小游戏还没有问题,但如果要开发游戏就很困难了,这可是一个大市场,所以他还要移植DirectX,使其可以运行这些CPU上。

  理想的商业模式算是打通了,可是,问个问题?

  让手机、平板或者电视都用X86的CPU,仅替换成Metro风格不行吗?至少成本低很多,是吧?

  我想,有些人会说,X86的CPU耗电量太大,我不认为这是问题,技术是不断发展的,Intel早就推出了手机使用的X86 CPU,更何况现在的ARM CPU性能一个比一个高,耗电量也直线上升,耗电量真的不是问题,问题在于大量的竞争对手不会选择Intel的CPU,苹果和谷歌等一票的竞争对手很清楚,千万不能在Intel上玩,微软太有优势了。用其他的CPU指令至少可以和微软平起平坐,自己发展成为另外一个“微软帝国”。

  微软,我只能说,你太厉害了,微软花那么大的精力支持ARM CPU就是要动竞争对手的根基,当苹果和谷歌们辛辛苦苦打下一片江山,微软的Windows却安装到他们的设备上,苹果和谷歌的市场迅速瓦解,重新沦为买硬件的。(微软语:小声点,不能说啊)

  你可能会质疑,凭什么最终用户会将他的设备原先的安卓甚至iOS废掉,选择安装Windows呢?我的答案是:应用。

  其实苹果和谷歌非常的清楚这点,所以他们大力的发展应用商店,使用分成等各种方法吸引开发人员。思路是对的,但我认为,很难。众多的开发商是极其追逐利益的,这是非常合理的,就像大家看见iPhone超赚钱,就一窝蜂开发iPhone应用一样,反过来一个道理,当Windows又重新赚钱后,大家又会迅速抛弃iPhone或减少投入。

  当Windows 8 上市后,摆在众多开发商面前的一个问题是,要不要设计Windows 8的应用?废话,Windows全世界那么大的市场份额,我难道会不去支持。

  好,第二个问题,你需要选型使用什么方式开发,一部分厂商会选择他们之前熟悉的开发工具继续开发,完全不理会WinRT(学习和开发成本问题),只要能在X86版的Windows 8下跑就可以了,诸如大型的CAD、ERP等应用在此列。

  另外一部分厂商,是做“小”应用的,这里的小是指动用的基础研究比较少的,例如一个Facebook的应用,一个小游戏等等,他一定会想,我试试看使用WinRT吧,至少开发后可以运行在手机、平板、电视和PC上,这些本来我就是要开发的,一次编写到处运行当然好了,特别是游戏市场。虽然不会所有厂商都这么想,但至少会慢慢的一部分一部分的往这方面走。

  Windows就开始慢慢的侵蚀苹果和安卓的市场,反之,苹果和安卓不存在这种场景,小应用大家在安卓和苹果上照样还是开发,但绝对不会开发大应用,你会在平板上设计一个CAD软件吗?没有市场,也没有配套的基础研究。

  最终用户是什么感受呢?起初,他们购买了iPhone或者安卓的设备,因为他们现在比Windows好,慢慢的,他们发现Windows下也有这些应用,会有一小部分人安装Windows到他们的旧设备中。而苹果不可以这么干,他不允许你将iOS安装到你的旧电视上,安卓有这个潜能,但安卓现在还远做不到,因为他没有微软那么多年来在各种硬件和操作系统上的积累。

  是的,没错,积累是微软最大的资本,只要微软在这个策略上不要犯大错误,微软很快就可以利用竞争对手创建的嫁衣(硬件)打倒对手,这就是我对Windows RT的见解