干货|C/C++类应用迁移理论基础

本文由龙芯中科资深工程师韩广分享,深入探讨应用迁移至龙芯平台的理论基础,包括软件迁移的本质、应用软件分类及迁移方案。重点介绍了龙芯与X86指令集差异,以及C/C++类应用在龙芯平台的编译和迁移过程,强调了依赖库、汇编语言和性能优化的重要性。
摘要由CSDN通过智能技术生成

文章来源于:龙芯生态论坛第一期直播速记韩广老师分享
详细如下:
在这里插入图片描述

分享嘉宾:韩广 龙芯中科资深工程师

拥有10年以上应用开发经验,参与过国家电网大型项目管理平台的产品的设计和研发,在银行从事业务系统开发多年。目前专注于应用迁移,信创推广和龙芯软件生态的推广工作。

本次分享主要从三个方面进行展开说明

  • 第一方面:应用迁移的本质:在龙芯电脑上为什么可以做迁移,应用迁移的理论基础
  • 第二方面:待迁移应用软件分类:应用软件的分类从不同的方面进行说明,在龙芯电脑上有哪几类我们使用的应用
  • 第三方面:应用软件迁移方案:应用迁移的基本步骤和一些技术细节
1.1为什么要进行应用迁移

在这里插入图片描述

重点解说如何把应用迁移到另外一个平台上的底层理论基础是什么?

1.2 软件迁移的本质是什么?
  • 把一个应用软件从一个平台环境迁移到另一个平台环境,这个应用软件是不能够执行的,本质原因是两种平台的CPU的指令集是不同的,或者说是平台架构是不同的。

龙芯CPU采用自主研发的龙芯架构指令集
“指令集”是指一种CPU上运行的机器指令的二进制编码格式

  • 龙芯架构: 龙芯自主研发和设计了龙芯架构指令集

  • X86: 常见的Intel和AMD的CPU指令集为x86架构

  • ARM:ARM公司及相关企业所采用的指令集

龙芯电脑系统不兼容传统的Windows软件
指令集差异即CPU执行逻辑差异,出现软件“不兼容”。
龙芯电脑常见操作系统(Loongnix、UOS、麒麟等)大部分来源于Linux的衍生版
龙芯电脑上的软件大部分为开源软件及国内自研软件。

1.3 龙芯和X86指令集差异具体实例

在这里插入图片描述

从上图中最简单的c语言代码编译成最终的CPU指令可以看出,相同的代码最终在不同的
平台架构上编译出来的机器指令是完全不同的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值