开源软件正在重塑现代IT行业。从初期的个人贡献者、学校组织到社区逐步形成,再到基金会的运营日趋成熟,OpenStack、Kubernetes、TensorFlow……这些名词与几乎每一个当下火热的前沿技术都有着直接联系,而这些开源技术背后则离不开英特尔、谷歌等企业长期以来的推动。
“全新硬件架构的每一个数量级的性能提升潜力,软件能带来两个数量级的性能提升。” 英特尔中国区软件业务总经理冯晓焰非常认可英特尔软件在市场中的独特优势,并认为在目前半导体行业所处的环境中,英特尔不仅借助硬件,更通过发挥软件的优势,为用户带来最大化价值,稳步迈向“以数据为中心”的世界。
作为英特尔内部开始做Linux和开源软件最早的一批人,冯晓焰与开源软件推进联盟等开源组织始终保持着密切联系,在中国帮助很多开源软件进行推广工作。冯晓焰在英特尔开源软件中心工作超过了18年的时间,该部门也是英特尔开源开发的核心。目前他除了负责软件事业部的工作,还带领开发团队做Android项目相关的系统集成。所以也能从冯晓焰在Android相关的软件工作过程中,可以管中窥豹,英特尔在软件领域的建树。
开源落地的重要桥梁
开源的重要性不言而喻,但并不是所有开源、原生的框架或工具都可以拿来即用,就像社区版Linux如自来水一样不能直接饮用,需要红帽这样的软件公司去专门进行“过滤优化”,变得更容易让开发者使用。再比如像TensorFlow这样流行的机器学习开发框架,其前后端并没有提供丰富的工具集成,使得实际开发过程中需要不断的迭代测试,要在大规模数据量的情况下完成快速开发上线,传统的办法耗时耗力。因此,软件优化对于开源有着关键作用。
时至今日,Android在移动平台、物联网场景中的应用已十分广泛,成熟的生态使得开发者不断在Android上开发着各种软件,谷歌也在大力推进着开源软件项目AOSP。不过在OS和主板硬件之间,BSP在嵌入式系统中对硬件设备的表现却有着不小的影响。“Android会定义一些硬件抽象层,为不同的硬件做适配。一个真正的Android,无论是在手机或者任何设备上去跑,它还需要一个层次,也是板级的支持套件或者支持软件,叫做BSP。”冯晓焰说。
英特尔要做的,就是构建一个开放的BSP,并为此成立了名为“Celadon”的开源Android项目——可用于英特尔架构的开源Android软件参考软件栈。Celadon基于标准的Android软件栈,构建在Linux内核之上,包括丰富的Android库和框架,以及针对硬件优化的组件。同时,英特尔还为Celadon开发了很多不同的硬件抽象层(HAL)接口和驱动程序,以实现功能扩展和硬件加速。由于 Celadon与AOSP、kernel.org有着紧密联系,并且通过Android的CTS(兼容性测试套件)和VTS(供应商测试套件)运行堆栈,这就让用户得以在最新的英特尔硬件平台上能够最快使用到最新的Android稳定版本进行开发。