鲲鹏微认证记录I

举报
黄生 发表于 2020/11/30 21:44:22 2020/11/30
【摘要】 第一个微认证:《鲲鹏软件迁移实践》因为是第一个微认证,所以印象深刻,我记得好像是一个准点进行的购买,然后晒单就可以得到奖励。在考试之前,我把课程最少反复的看了三遍,第一次,所以很慎重,也很珍惜,当然也没有经验嘛其实考试有多次机会,你考一次没过没关系,当做试试水也是很有好处的。这个认证内容比较多,涵盖了C/C++,JAVA/PYTHON, MAVEN仓软件、软件包(rpm之类)。学下来,感觉精...

第一个微认证:《鲲鹏软件迁移实践》
因为是第一个微认证,所以印象深刻,我记得好像是一个准点进行的购买,然后晒单就可以得到奖励。
在考试之前,我把课程最少反复的看了三遍,第一次,所以很慎重,也很珍惜,当然也没有经验嘛
其实考试有多次机会,你考一次没过没关系,当做试试水也是很有好处的。
这个认证内容比较多,涵盖了C/C++,JAVA/PYTHON, MAVEN仓软件、软件包(rpm之类)。学下来,感觉精华在迁移概述和C/C++

鲲鹏软件迁移实践-实验01:《通过鲲鹏开发套件实现C/C++代码迁移》
这个实验设计结构是,首先使用鲲鹏的代码扫描工具,对crcutil这个小组件进行扫描,根据扫描结果,对应的去做编译脚本的修改,当然,除了编译脚本,还有.h.cc等文件,修改完成之后,重新从源码编译出鲲鹏版本,并且测试通过!一点缺憾就是,crcutil这个组件,之前使用的不多,但是它比较小,以后有机会可以通过它来多做练习。

鲲鹏软件迁移实践-实验02:《通过鲲鹏开发套件实现Java代码迁移》
这个实验的结构也类似,先用鲲鹏分析扫描工具,扫一把,识别出java软件包中的依赖库(这里选取的是java常用的网络开发库netty),识别出来后(netty的依赖库libnetty_transport_native_epool_x86_64.so需要重新编译出鲲鹏版本),使用maven重新编译apr和netty,并对编译结果进行验证。
印象中这个实验耗时比较久一些,里面需要安装openjdk,maven,编译netty也比较慢。

鲲鹏软件迁移实践-实验03:《通过鲲鹏Maven仓进行Maven软件构建》
maven是java工程的软件仓,仓中有些软件(jar包),存在x86依赖(so文件),我们要把它找出来,编译为鲲鹏版本;如果鲲鹏maven仓里已有现成的,就直接使用。
本实验耗时也比较长,内容包括安装openjdk,mvn,在maven的配置里添加鲲鹏maven仓,安装dependency advisor,安装checkso工具,然后对下载的Hive软件包(rpm包)进行分析,这里是2种方式都可以分析,checkso命令行方式,以及dependency advisor的图形化方式。而图像化方式的结果更详尽,告诉你里面哪些jar包已有鲲鹏版本,哪些还不确定有,最终下载Hive源码,用mvn重新编译,然后用checkso检查通过!

鲲鹏软件迁移实践-实验04:《通过鲲鹏开发套件实现软件包迁移》
这里的软件包是指各Linux发行版所维护的软件包,比如redhat是yum管理,ubuntu是apt管理。可以从本地、远端源来安装。当然,远端就可以配置华为云鲲鹏镜像源。
实验使用的rpm包作为例子,使用了相关工具集(rpmdevtools,rpmrebuild等)来操作。目标软件是knox的rpm包,操作流程还是类似,使用命令行checkso或图像化工具dependency advisor扫一把,得到一个结果,是否需要迁移,哪些文件需要迁移;然后使用porting advisor告诉你具体哪里需要修改代码,怎么改。这里更直接,直接把rpm重构完成。最后照例是checnkso检查通过。

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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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