Hal Berenson:为什么 Windows Phone 8 应该切换内核?
关于 Windows Phone 8 Apollo 的传言一直都没有停歇。最广为流传的说法是:WP8 将从底层代码开始改写,并融入 Windows 8 体系。
上周末,前微软工程师 Hal Berenson 写了一篇名为《Windows Phone 8 和 Windows 8:兄弟还是表亲?》的文章,从技术方面阐述了切换内核的好处,引发了广泛的讨论。
首先,外界有两种错误的说法是:“WP8 是基于 Windows 8 开发的。”“WP8 是基于 WinNTk 开发的。”事实上,严谨的表述应该是:WP8 的界面和用户体验尽量跟 Win8 保持统一,并且在小屏幕上做足够的优化。但是这些上层的东西跟底层的内核(不管是 WinCE 还是 WinNTk)都没有太多关系。
那么,有什么动力推动微软把 WP8 的 WinCE 内核切换到 WinNTk?恐怕对多核心芯片(SMP)的支持和优化是一个重要的考虑方向。在 x86 的世界里,多核心处理器已经成为了很常见的事情,而 ARM 未来发展的方向也是如此。WinCE 对多核心的支持程度远不如 WinNTk,如果想继续打磨 WinCE 则需要投入巨量的时间和资源。
很显然,微软不会有多余的精力了。因为自从 2008 年以来微软内部就在寻求削减成本的方法,所以不会给 WinCE 投入更多资源,一口气切换到 WinNTk 才是最佳解决方案。(来自 iOS 和 Android 的军备竞赛压力会越来越大)
另一个重要原因是市场考虑:
舆论普遍认为,Windows 有着臃肿的身材,WinCE 拥有极度精简的身材。但在过去的 6 年里,微软做了很多努力来清扫和重构代码,未来的 Windows 8 将会非常重视低功耗和低资源占用。树立这个形象是难能可贵的。
具体到数字上,用 WinNTk 做内核的 WP8 可以跑在 1GHz CPU 和 512 MB 内存上吗?当然可以!那么 800MHz 呢?几乎可以。 那么这就是 2012 年低端智能手机的硬件标准了。配置越往上走,对 WinNTk 内核就越有利。
总的来说,如果“切换内核”的传言是真实的,我们在 MIX 12’ 大会上应该能看到一些新东西,再等待四五个月吧。