微软已加入Linaro生态,以推动Windows on ARM的发展

 微软已加入Linaro生态,以推动Windows on ARM的发展

微软目前已加入Linaro的Windows on Arm项目,以帮助加速ARM开源生态系统的发展,其中,ARM 是全球领先的半导体知识产权 (IP) 提供商ARM Holdings的简称,公司总部位于英国剑桥,老wu之前关于Nvidia与ARM的并购案的博文有介绍过ARM这家公司,当然,相信圈内的小伙伴们都非常熟悉了。

ARM的商业模式主要是基于半导体知识产权 (IP) 的设计和授权,ARM向其合作伙伴们授予 IP 许可证,这些合作伙伴可利用 ARM 的 IP 设计和生产片上系统 (SoC) 芯片,但需要向 ARM 支付原始 IP 的许可费用并为每块生产的芯片交纳版税。 除了处理器 IP 外,ARM还提供了一系列工具、系统来优化SoC的性能。

ARM 的 IP 种类繁多,以及支持基于 ARM 的解决方案的芯片和软件体系十分庞大,每年ARM的合作伙伴们都在各自投入巨量资源以改进他们的产品。为了解决ARM生态系统中,重复投资造成的资源浪费,2010年6月,由ARM、IBM、飞思卡尔(已被NXP并购)、三星(Samsung Electronics)、意法爱立信(ST-Ericsson)、德州仪器(TI) 这6家公司宣布合资成立英文名为Linaro的非营利性软件公司。

Linaro 是一间非营利性质的开放源代码软件工程公司,其通过会员捐赠资金和人员来支持公司的运营,其使命便是引领 Arm 生态系统的软件合作,帮助会员公司使用最新的开源技术,Linaro 在 Linux 内核、工具链、安全、固件等基础软件领域具有较强的业界影响力。

如今,Linaro迎来了微软的加入,其实,过去一年(2021年),Linaro、Arm和高通一直在紧密合作,通过建立一个原生开发的生态系统来推动在Arm上运行Windows系统的发展。

2021年4月,作为LLVM 12.0.0版本的一部分,提供了Windows 10 on Arm bot的支持和二进制支持,这是针对Windows 10 on Arm的第一个LLVM版本发布,标志着开发者在Windows 10 on Arm上使用LLVM进行本地构建的重要里程碑。该二进制包含编译器、链接器和编译库。

而LLVM是开源社区用来编译其代码的主要工具之一,它是一系列可重复使用的编译器和工具链技术,可用于开发任何编程语言的前端和任何指令架构的后端。

对于微软加入Linaro生态,微软Windows开发者副总裁Kevin Gallo说:”我们很高兴与Arm和高通公司一起加入Linaro,帮助推进Arm上的Windows生态系统的建设。”Arm上的Windows原生开发需要一个具有强大生态系统的端到端工具链。这使得开发者更容易为他们的客户创造和释放令人愉悦的体验。”

Arm公司客户业务线生态系统和工程合作伙伴关系高级总监Geraint North表示:”使世界各地的开发者能够在Arm技术上快速、无缝地进行创新至关重要,微软加入这个Linaro项目是在Arm上的Windows生态系统方面迈出的重要一步。”与微软、高通公司和Linaro合作,将有助于进一步扶持开源开发者社区,并推动Windows on Arm平台的更广泛采用。”

高通则提供了Snapdragon 骁龙计算平台,由Snapdragon创新驱动的Windows on Arm生态系统为轻薄和无风扇设计带来了AI加速、先进的摄像头和音频功能,提供了超越传统x86架构的下一代用户体验。

编译器方面LLVM已经就绪,而开发框架方面,2021年9月底发布的Qt 6.2版本已经以技术预览版的方式提供了对Windows on Arm的支持,在接下来的Qt 6.2的 patch 级别的发行版中,将提供Windows on Arm的全面支持。

Windows on ARM的应用体验

内置的Windows体验,如Edge、开始菜单、文件资源管理器等都是原生的,以ARM64的形式运行。这也包括所有设备驱动程序,如图形、网络或硬盘。这确保了你的设备以高通骁龙处理器的全原生速度运行,获得最佳的用户体验和电池寿命。

Windows on ARM可以运行Microsoft Store中的所有x86、ARM32和ARM64 UWP应用程序。ARM32和ARM64应用程序在没有任何仿真的情况下原生运行,而x86应用程序在仿真状态下运行。

Win32 应用程序

除了UWP应用程序,Windows on ARM还可以运行为ARM64原生编译的Win32桌面应用程序,以及您现有的x86 Win32应用程序,无需任何修改便具有了良好的性能和无缝的用户体验,就像任何PC一样。这些 x86 Win32 应用程序不必为 ARM 重新编译,甚至不会意识到它们正在 ARM 处理器上运行。

至于x64的应用程序

目前对 x64 应用程序提供了初步的支持,微软方面目前正在进一步开发中。

吴川斌

吴川斌

Leave a Reply