1 学习完这一讲的目标
能够对跨平台软件迁移有一定的了解,同时掌握代码迁移工具的使用,能够熟练使用迁移工具执行迁移任务。
2 背景介绍
在国产替代的大背景下,鲲鹏计算平台是一个非常有潜力的产业。为了解决开发者在x86平台应用向鲲鹏平台移植的过程中遇到的一系列的痛点问题,华为推出了鲲鹏代码迁移工具(Porting Advisor),帮助开发者加速将x86环境下的应用迁移至鲲鹏平台。这里根据华为鲲鹏计算工具链项目组的工具化软件迁移经验,总结了鲤鹏代码迁移工具的实际使用经验,期望能帮助 了解如何使用该工具,提高开发者的软件迁移效率。
3 工具支持的功能特性
4 支持的源码类型
5 总结
本次软件迁移实战中,通过对软件迁移过程的完整模拟,覆盖了用户利用代码迁移工具对迁移过程进行前期分析、中期修改和后期编译、重构、验证的过程。在其它软件的迁移中,可以参考本课程的思路和操作过程进行操作。
1 学习完这一讲的目标
能够对跨平台软件迁移有一定的了解,同时掌握代码迁移工具的使用,能够熟练使用迁移工具执行迁移任务。
2 背景介绍
在国产替代的大背景下,鲲鹏计算平台是一个非常有潜力的产业。为了解决开发者在x86平台应用向鲲鹏平台移植的过程中遇到的一系列的痛点问题,华为推出了鲲鹏代码迁移工具(Porting Advisor),帮助开发者加速将x86环境下的应用迁移至鲲鹏平台。这里根据华为鲲鹏计算工具链项目组的工具化软件迁移经验,总结了鲤鹏代码迁移工具的实际使用经验,期望能帮助 了解如何使用该工具,提高开发者的软件迁移效率。
3 工具支持的功能特性
检查用户C/C++/Fortran/Go/汇编等软件构建工程文件,
并指导用户如何迁移该文件检查用户C/C++/Fortran/Python/Java/Scala/Go/汇编等软件源码,并指导用户如何迁移该源码文件。
x86汇编指令转换,分析x86汇编指令,并转换成功能对等的鹏汇编指令
检查用户软件安装包(RPM、DEB、TAR、ZIPGZIP文件等)中包含的SO(Shared Objet)依赖库和可执行文件,并评估SO依赖库和可执行文件的可迁移性。
检查用户Java类软件包JAR、WAR)中包含的SO依赖库和二进制文件,并评估SO依赖库和二进制文件的可迁移性
检查指定的用户软件安装路径下的SO依赖库和可执行文件,并评估SO依赖库和可执行文件的可迁移性。
4 支持的源码类型
Makefile
CMakelists.txt
5 总结
本次软件迁移实战中,通过对软件迁移过程的完整模拟,覆盖了用户利用代码迁移工具对迁移过程进行前期分析、中期修改和后期编译、重构、验证的过程。在其它软件的迁移中,可以参考本课程的思路和操作过程进行操作。