图2 WPF带来全新的表现形式
云计算
虽然大家都还在“云里雾里”,但是毫无疑问,“云计算”已经来到了我们身边。在互联网时代,微软输给了Google,面对即将到来的“云计算”时代,微软没有理由再次错过机会。所以早在年初“云计算”的概念刚刚兴起的时候,就有传言微软将进军“云计算”,将旗下的软件业务纳入“云计算”。而现在,随着Visual Studio 2010 CTP和Windows Azure的发布,这一切成为了事实。“云计算”的基本原理,是通过使计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中,企业数据中心的运行将更与互联网相似。这使得企业能够将资源切换到需要的应用上,根据需求访问计算机和存储系统。Windows Azure是一个托管服务套件,它包括虚拟计算,可扩展存储以及自动化服务管理系统等。这些工具将会用来为微软的服务提供支持,其中包括MSN,Xbox Live,以及Office Online等等,实现服务的网络化。
图3 Windows Azure平台架构
对于开发者而言,Windows Azure已经建立起一个简单而快速的系统,最重要的是它拥有着标准的模型,是我们步入“云计算”时代的捷径。开发者可以根据自己的需要选择第二层功能来使用,比如数据库,业务工具,甚至是第三方软件提供的功能。Windows Azure云计算平台为开发者提供了灵活性和可开发性,同时还需要考虑利用目前现有的技能、工具和技术,比如微软.NET框架和Visual Studio。使用Windows Azure Tools for Visual Studio,我们可以为Windows Azure创建,调试和部署服务和应用程序。Visual Studio 2010为Windows Azure提供了专门的项目模型,同时,我们也可以利于Visual Studio 2010对我们的服务和应用程序进行调试。另外,我们可以利用Visual Studio 2010将我们创建的服务打包,然后通过Windows Live Developer Portal部署到Windows Azure。
总之,有了Visual Studio 2010的帮助,我们就可以拔得“云计算”的头筹。
并行计算
在以往的计算机发展历史中,硬件技术的发展总是给软件带来免费的性能提升,从386到586,从赛扬到奔腾,每次硬件的升级,都带来软件性能的大幅提升,而软件无需做任何变动,只需要坐等硬件升级就可以了。
图4 多核时代
但是进入多核时代后,这种“免费的午餐”再也没有了。这其中最主要的原因就是当前的应用程序几乎都是针对一个运算核心而设计的,当硬件通过增加运算核心来提高性能时,由于受到其架构的影响,软件并不能充分地利于多个运算核心所带来的性能提升,甚至有的时候性能还有所下降。