电子发烧友网报道(文/周凯扬)我们看到随着更多RISC-V内核具备运行Linux系统的高性能,加之开源社区的不懈努力,RISC-V对于各种Linux发行版系统的支持已经越来越完善,RISC-V的平板、笔记本、SBC也陆续推出。然而在安卓这一用户量最大的移动端OS上,这么多年以来,RISC-V的适配进展都相对有限。
对于任何一个OS而言,完成新架构硬件的移植都不是一件易事。安卓作为一个开源操作系统,移植自由度极高,但如果有谷歌官方的开发支持自然更容易实现。好在谷歌已经参与到RISC-V的适配工作中来,提供AOSP支持并接受适配RISC-V设备的补丁。正当大家以为基于RISC-V的安卓手机近在咫尺之际,谷歌却在近日“停止”了对RISC-V的支持。
谷歌停止ACK通用内核对RISC-V的支持
近日,开发者社区发现,在AOSP项目中,一名谷歌开发者提交了一系列补丁,说明为删除ACK对risc64的支持。在详情页面中,可以看到这些补丁已经通过了审查,并将更新至Android-mainline分支中。这意味着如果想要编译RISC-V版本的安卓,将无法继续使用谷歌的ACK内核,而是要借助自己创建或开源社区的分支。
ACK(安卓通用内核)旨在提供一个统一的Linux内核版本,支持安卓设备开发的同时,解决内核碎片化的问题,减少安卓OEM在内核方面进行定制开发的工作。其中较新的版本也被称为GKI(通用内核映像),将与硬件无关的通用核心内核代码与GKI模块、硬件专用供应商模块分离开来。
可以说ACK是所有安卓产品内核的基础,缺乏这一官方支持无疑会使得RISC-V安卓的适配工作大受打击。不少人推测此举可能是谷歌打算停止对RISC-V支持的前奏,然而根据谷歌自己的说法,由于迭代速度较快,他们尚不能为所有供应商提供一个单一通用的映像。
事实上,根据开发者社区的回复,Android/riscv64在AOSP项目的工作其实并没有变化,只不过目前官方的GKI内核停止对RISC-V支持而已,他们正在转向Android/riscv64团队维护的非GKI内核,未来的目标依然是将做出的变更并入官方内核中。
谷歌对RISC-V的看法是否发生转变
随着RISC-V在嵌入式和MCU领域的飞速爆发,以及近几年开始在加速器、服务器和移动计算上的扩张,谷歌也意识到了RISC-V这一架构在行业合作下的潜力。在2022年11月举办的RISC-V国际峰会上,谷歌正式宣布接受为RISC-V准备的补丁。
谷歌深知RISC-V是一个模块化的ISA,这也意味着该架构存在大量拓展,会使得OS的适配变得极为复杂。所以谷歌确定了他们第一步支持的配置,即RVA22加上矢量和矢量加密拓展。
去年10月,高通也宣布和谷歌合作,高通将开发基于RISC-V的可穿戴硬件平台,双方合作提供Wear OS的支持,并将基于RISC-V的可穿戴设备解决方案商业化,推广至全球市场,这也就意味着下一代Pixel Watch很可能就会用上高通的RISC-V芯片。
对于谷歌来说,他们对增加新的ISA支持相当谨慎,因为这意味着需要更多的工程师,并花费更多的时间参与维护和代码审查工作,尤其是在安全补丁更新上。所以宣布对RISC-V的支持是一个不小的承诺,他们并不会轻易放弃。
从android-riscv64的项目页中也可以看到,在实际的开源代码贡献上,谷歌仍在继续支持RISC-V的安卓开发。目前开发团队使用cuttlefish虚拟安卓设备运行ART(并启用JIT)来完成启动,相关的shell和命令行工具(以及依赖库)都能够正常运行。
目前RISC-V的应用二进制接口(Android NDK ABI)还未定义,但开发团队仍在继续推进这一工作,不过用户倒是可以下载NDK的测试版本r27beta1,该版本已经对risc64做了临时支持,不过编译的代码并未充分利用RISC-V硬件性能,只是对其做了兼容而已,提前让用户下载只是为了方便找到需要修正的严重错误。而去年谷歌宣称这一工作将在2023年末完成,虽然谷歌并未放弃对RISC-V的支持,但相关的支持工作进展并不如预期。
开发社区所做的努力
对于安卓软件栈来说,主要包含系统内核、硬件抽象、运行时、框架层和应用五个层次近千个软件包,即便完成了内核支持,也还有不少的软件移植适配工作需要完成,单靠谷歌自己的开发团队是很难完成的,这也是谷歌选择开放接收补丁的原因,只有依靠开源社区的共同开发努力,才有可能实现Android on RISC-V的落地。
早在2020年,平头哥就开始了Android 10的适配工作,开发硬件为基于28nm工艺的双核玄铁C910处理器。这也是RISC-V开发社区中最早的一个安卓Demo项目,但公布初还是一个相对初级的版本,比如一开始进入启动器界面需要20分钟的时间,在改用Mterp解释器后,将启动时间缩短至10分钟,结合编译器、JIT&AOT等一系列优化工作,平头哥团队将启动时间缩短至1分钟。
2022年,平头哥又开始了Android 12的适配支持工作,而此次这是基于全新的硬件平台TH1520,并合作推出了BeagleV Ahead、Lichee Pi 4A EVB两大生态开发板。平头哥率先完成了TH1520的内核与驱动准备工作,同时将Clang12升级至针对玄铁优化的Clang15版本,并对Bionic进行了更新。
ART方面,平头哥在2023年把解释器从Mterp换成了Nterp,减少了方法调用的链路,提高频繁方法调用场景下的性能。而且Clang15增加了对玄铁扩展指令集的支持,在一系列优化下,Android 12在TH1520上开启更多服务的前提下,启动器的启动时间改善至47秒。
对于任何一个OS而言,完成新架构硬件的移植都不是一件易事。安卓作为一个开源操作系统,移植自由度极高,但如果有谷歌官方的开发支持自然更容易实现。好在谷歌已经参与到RISC-V的适配工作中来,提供AOSP支持并接受适配RISC-V设备的补丁。正当大家以为基于RISC-V的安卓手机近在咫尺之际,谷歌却在近日“停止”了对RISC-V的支持。
谷歌停止ACK通用内核对RISC-V的支持
近日,开发者社区发现,在AOSP项目中,一名谷歌开发者提交了一系列补丁,说明为删除ACK对risc64的支持。在详情页面中,可以看到这些补丁已经通过了审查,并将更新至Android-mainline分支中。这意味着如果想要编译RISC-V版本的安卓,将无法继续使用谷歌的ACK内核,而是要借助自己创建或开源社区的分支。
ACK(安卓通用内核)旨在提供一个统一的Linux内核版本,支持安卓设备开发的同时,解决内核碎片化的问题,减少安卓OEM在内核方面进行定制开发的工作。其中较新的版本也被称为GKI(通用内核映像),将与硬件无关的通用核心内核代码与GKI模块、硬件专用供应商模块分离开来。
可以说ACK是所有安卓产品内核的基础,缺乏这一官方支持无疑会使得RISC-V安卓的适配工作大受打击。不少人推测此举可能是谷歌打算停止对RISC-V支持的前奏,然而根据谷歌自己的说法,由于迭代速度较快,他们尚不能为所有供应商提供一个单一通用的映像。
事实上,根据开发者社区的回复,Android/riscv64在AOSP项目的工作其实并没有变化,只不过目前官方的GKI内核停止对RISC-V支持而已,他们正在转向Android/riscv64团队维护的非GKI内核,未来的目标依然是将做出的变更并入官方内核中。
谷歌对RISC-V的看法是否发生转变
随着RISC-V在嵌入式和MCU领域的飞速爆发,以及近几年开始在加速器、服务器和移动计算上的扩张,谷歌也意识到了RISC-V这一架构在行业合作下的潜力。在2022年11月举办的RISC-V国际峰会上,谷歌正式宣布接受为RISC-V准备的补丁。
谷歌深知RISC-V是一个模块化的ISA,这也意味着该架构存在大量拓展,会使得OS的适配变得极为复杂。所以谷歌确定了他们第一步支持的配置,即RVA22加上矢量和矢量加密拓展。
去年10月,高通也宣布和谷歌合作,高通将开发基于RISC-V的可穿戴硬件平台,双方合作提供Wear OS的支持,并将基于RISC-V的可穿戴设备解决方案商业化,推广至全球市场,这也就意味着下一代Pixel Watch很可能就会用上高通的RISC-V芯片。
对于谷歌来说,他们对增加新的ISA支持相当谨慎,因为这意味着需要更多的工程师,并花费更多的时间参与维护和代码审查工作,尤其是在安全补丁更新上。所以宣布对RISC-V的支持是一个不小的承诺,他们并不会轻易放弃。
从android-riscv64的项目页中也可以看到,在实际的开源代码贡献上,谷歌仍在继续支持RISC-V的安卓开发。目前开发团队使用cuttlefish虚拟安卓设备运行ART(并启用JIT)来完成启动,相关的shell和命令行工具(以及依赖库)都能够正常运行。
目前RISC-V的应用二进制接口(Android NDK ABI)还未定义,但开发团队仍在继续推进这一工作,不过用户倒是可以下载NDK的测试版本r27beta1,该版本已经对risc64做了临时支持,不过编译的代码并未充分利用RISC-V硬件性能,只是对其做了兼容而已,提前让用户下载只是为了方便找到需要修正的严重错误。而去年谷歌宣称这一工作将在2023年末完成,虽然谷歌并未放弃对RISC-V的支持,但相关的支持工作进展并不如预期。
开发社区所做的努力
对于安卓软件栈来说,主要包含系统内核、硬件抽象、运行时、框架层和应用五个层次近千个软件包,即便完成了内核支持,也还有不少的软件移植适配工作需要完成,单靠谷歌自己的开发团队是很难完成的,这也是谷歌选择开放接收补丁的原因,只有依靠开源社区的共同开发努力,才有可能实现Android on RISC-V的落地。
早在2020年,平头哥就开始了Android 10的适配工作,开发硬件为基于28nm工艺的双核玄铁C910处理器。这也是RISC-V开发社区中最早的一个安卓Demo项目,但公布初还是一个相对初级的版本,比如一开始进入启动器界面需要20分钟的时间,在改用Mterp解释器后,将启动时间缩短至10分钟,结合编译器、JIT&AOT等一系列优化工作,平头哥团队将启动时间缩短至1分钟。
2022年,平头哥又开始了Android 12的适配支持工作,而此次这是基于全新的硬件平台TH1520,并合作推出了BeagleV Ahead、Lichee Pi 4A EVB两大生态开发板。平头哥率先完成了TH1520的内核与驱动准备工作,同时将Clang12升级至针对玄铁优化的Clang15版本,并对Bionic进行了更新。
ART方面,平头哥在2023年把解释器从Mterp换成了Nterp,减少了方法调用的链路,提高频繁方法调用场景下的性能。而且Clang15增加了对玄铁扩展指令集的支持,在一系列优化下,Android 12在TH1520上开启更多服务的前提下,启动器的启动时间改善至47秒。
RISE联盟成员
同时为了解决RISC-V高性能与高能效核心运行安卓这类高级运行系统的软件生态问题,晶心科技、谷歌、英特尔、Imagination、高通、英伟达、平头哥、SiFive等厂商成立了RISE联盟。该联盟将致力于解决硬件到位后,RISC-V在智能手机、消费电子、数据中心和汽车等市场的软件问题。
写在最后
尽管RISC-V的安卓适配之路依然道阻且艰,但无论是开发社区还是谷歌官方,都没有放弃这一工作,所以说在RISC-V硬件平台上体验到流畅可用的安卓系统只是时间问题。
在Arm最新的财报中,RISC-V也首次出现架构对比的演示中,并对RISC-V的授权模式和能效做出了肯定,但在软件生态系统上仍有极大的进步空间。这也就是为何即便在安卓正式适配RISC-V后,开发工作依然不会就此结束,因为相关app的适配工作需要更大的行业号召力才能实现。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
谷歌
+关注
关注
27文章
6126浏览量
104898 -
安卓
+关注
关注
5文章
2116浏览量
56950 -
RISC-V
+关注
关注
44文章
2198浏览量
45938
发布评论请先 登录
相关推荐
加入全球 RISC-V Advocate 行列,共筑 RISC-V 的未来 !
加入RISC-VAdvocate行列!我们正在寻找来自世界各地的RISC-V爱好者,通过全球推广和参与,成为支持RISC-V进步的关键参与者。作为一名
万物智联时代,RISC-V与AI的融合之路该如何走?
人工智能与机器学习专委会主席谢涛发表了《万物智联时代RISC-V+AI之路》演讲,分析了RISC-V与AI技术的结合及其发展路径探索。他在发言中,尽管国产AI芯片在硬件
RISC-V Summit China 2024 | 青稞RISC-V+接口PHY,赋能RISC-V高效落地
,让产品获得更高的附加值和竞争力,从市场中脱颖而出。
05 种下“青稞”的种子
让RISC-V在专业接口技术中开枝散叶
沁恒通过自研USB/蓝牙/以太网等专业接口技术将RISC-V适配到连接联网的广阔
发表于 08-30 17:37
RISC-V适配OpenHarmony研讨会
8月14日,由RISC-V国际人才培养认证中心主办的“RISC-V适配OpenHarmony研讨会”主题活动在RISC-V开源创新中心举行。中科厦门数智研究院院长助理贠利君,深圳博芯科
risc-v的发展历史
Foundation),旨在促进RISC-V架构的发展和推广。该基金会由大量的企业和机构支持,包括英特尔、Nvidia、谷歌、华为、IBM、红帽、西部数据等。
2015年:RISC-V
发表于 07-29 17:20
rIsc-v的缺的是什么?
通过软件模拟或复杂的指令序列来实现一些高级功能,这可能会增加执行时间和功耗。
2. 生态系统支持不足
软件和工具链的可用性:尽管RISC-V社区在快速发展,但与成熟的ARM等架构相比,其生
发表于 07-29 17:18
又一款RISC-V笔记本面世!适配AI推理模型
、笔记本、SBC也陆续推出。然而在安卓这一用户量最大的移动端OS上,这么多年以来,RISC-V的适配进展都相对有限。 对于任何一个OS而言,完成新架构硬件的移植都不是一件易事。
谷歌安卓系统即将取消对RISC-V架构的支持
负责安卓Linux核心分支开发的谷歌高级工程师向AOSP提交了一系列补丁,其中显示“已去除ACK对riscv64的支持”。这些补丁详细描述指出“对r
RISC-V有哪些优点和缺点
和使用其代码。这种开放性促进了全球范围内的创新与合作,有助于推动RISC-V生态系统的快速发展。
模块化设计:RISC-V支持模块化可配置的子集,使得开发者可以根据具体的应用需求进行灵活定制。这种
发表于 04-28 09:03
RISC-V有哪些优缺点?是坚持ARM方向还是投入risc-V的怀抱?
、修改和使用其代码。这种开放性促进了全球范围内的创新与合作,有助于推动RISC-V生态系统的快速发展。
模块化设计 :RISC-V支持模块化可配置的子集,使得开发者可以根据具体的应用需求进行灵活定制
发表于 04-28 08:51
国产RISC-V MCU推荐
ESP32-C3很好,物联网小产品首选,单芯片搞定Wi-Fi和蓝牙,够用好用,现在已经用到产品中了。
ESP32-C3系列芯片搭载低功耗RISC-V 32位单核处理器,四级流水线架构,支持 160 MHz
发表于 04-17 11:00
RISC-V安卓设备商用在即,玄铁C930将发布
基于RISC-V的首款安卓设备即将在2024年实现大规模商业化应用,这标志着RISC-V架构在移动设备市场上迈出了坚实的步伐。
安路科技发布全新FPSoC®器件,芯来RISC-V内核助力高性能融合
的新品系列包含两款产品,其中 DR1V90 集成了64位RISC-V、FPGA可编程逻辑和AI引擎,形成了高性能RISC-V 64bit处理器产品系列,并且具备安路 FPGA的灵活性、
评论