华为鲲鹏生态建设很难?其实没有想象中的那么难

举报
长弓三石 发表于 2020/07/16 21:04:15 2020/07/16
【摘要】 很多关心国产自主可控系统的网友,对鲲鹏生态应该有所了解,大家普遍觉得CPU等硬件虽然很难,但还不是最难的,最难的是生态。这种看法其实对了一半,的确鲲鹏软硬件都难,都是S级别的,但不是SSS级别的。鲲鹏生态建设中最重要的就是现有系统的移植,就是现有的基于C/C++/Java/go/python等语言开发系统的移植,这里面最简单的就是解释型语言,比如java、python,这类语言不是直接生成机...

很多关心国产自主可控系统的网友,对鲲鹏生态应该有所了解,大家普遍觉得CPU等硬件虽然很难,但还不是最难的,最难的是生态。这种看法其实对了一半,的确鲲鹏软硬件都难,都是S级别的,但不是SSS级别的。

鲲鹏生态建设中最重要的就是现有系统的移植,就是现有的基于C/C++/Java/go/python等语言开发系统的移植,这里面最简单的就是解释型语言,比如java、python,这类语言不是直接生成机器码,而是先生成字节码,然后虚拟机解释执行,比如java,如果是纯java的系统,基本一行代码不用改,甚至不用重写编译,在鲲鹏上安装AArch64的jdk即可,笔者公司的一个系统,也有十多万行java代码,基于spring cloud的,一行代码没改,就直接可以在鲲鹏平台上运行。目前超级多的企业级系统都是基于java的,这是一个非常大的生态来源。

有点麻烦的是基于C/C++的,这类系统也不少,特别是部分java系统会调用C的类库,也会要求进行系统移植。幸好,华为推出了华为鲲鹏代码迁移工具Porting Advisor,支持的功能特性如下(来源华为云网站):

  • 检查用户C/C++软件构建工程文件,并指导用户如何迁移该文件。

  • 检查用户C/C++软件构建工程文件使用的链接库,并提供可迁移性信息。

  • 检查用户C/C++软件源码,并指导用户如何迁移源文件。

  • 检查用户软件中x86汇编代码,并指导用户如何迁移。

  • 支持命令行方式和Web两种工作模式。

工作过程如下:

我试用过几次,真的很方便,部署这个工具很简单,几行指令就可以部署成web方式,然后把要迁移的代码上传上去,它会对代码进行分析,生成如下图所示的移植报告和移植建议,把你需要更改的代码一行行标出来,照着提示更改就行:

所以说,生态建设虽然很难,但没有想象的那么难,在工具的支持下,可以方便的进行迁移。

个人以为,软硬件自主可控虽然难,但都可以一步步来,最难的还是消除国人心中的偏见,相信自己,支持国产,用事实说话,用实际行动来表达支持。

本文本人原创首发于今日头条,修正部分错误后发表与本博客)

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。