1. x86与ARM架构下的编译器的区别
ARM是简单指令集。。。 指令集长度短
2. 在仅有x86服务器或者云服务器下如何编译出arm环境下执行的
在仅有x86服务器或者云服务器下编译出arm环境下执行步骤如下。
1、首先,安装qemu-user安装包,并更新qemu-arm的状态。
2、查看qemu-arm的版本。
3、下载arm架构的容器(在dockerhub可以找到各种非x86架构的镜像)。
4、最后进入容器访问。
3. 求助,如何让x86汇编代码在ARM上编译成功
要么是arm上用gcc的交叉编译x86
要么是arm上x86虚拟机下的编译。
4. 为什么x86和arm的架构不同,但是都能装linux呢,他们的编译时如何实现的。
rm架构和x86架构区别:
一、性能:
X86结构的电脑无论如何都比ARM结构的系统在性能方面要快得多、强得多。X86的CPU随便就是1G以上、双核、四核大行其道,通常使用45nm(甚至更高级)制程的工艺进行生产;
而ARM方面:CPU通常是几百兆,最近才出现1G左右的CPU,制程通常使用不到65nm制程的工艺,可以说在性能和生产工艺方面ARM根本不是X86结构系统的对手。
但ARM的优势不在于性能强大而在于效率,ARM采用RISC流水线指令集,在完成综合性工作方面根本就处于劣势,而在一些任务相对固定的应用场合其优势就能发挥得淋漓尽致。
二、扩展能力:
X86结构的电脑采用“桥”的方式与扩展设备(如:硬盘、内存等)进行连接,而且x86结构的电脑出现了近30年,其配套扩展的设备种类多、价格也比较便宜,所以x86结构的电脑能很容易进行性能扩展,如增加内存、硬盘等。
ARM结构的电脑是通过专用的数据接口使CPU与数据存储设备进行连接,所以ARM的存储、内存等性能扩展难以进行(一般在产品设计时已经定好其内存及数据存储的容量),所以采用ARM结构的系统,一般不考虑扩展。基本奉行“够用就好”的原则。
三实现编译:
因为linux是系统,他支持现在大多数的结构体系。而要使他移植到相应的不同的硬件平台上时,需要对内核源码进行相对应的交叉编译处理,然后才能进行烧写运行,因为都有驱动只要那个系统有对应平台的驱动就可以。
(4)arm系统编译x86应用扩展阅读:
Linux常用命令
1、pwd命令该命令的英文解释为print working directory(打印工作目录)。
2、输入pwd命令,Linux会输出当前目录。
3、cd命令cd命令用来改变所在目录。
4、cd / 转到根目录中
5、cd ~ 转到/home/user用户目录下
6、cd /usr 转到根目录下的usr目录中-------------绝对路径
7、cd test 转到当前目录下的test子目录中-------相对路径
8、cat命令可以用来合并文件,也可以用来在屏幕上显示整个文件的内容。
9、cat snow.txt 该命令显示文件snow.txt的内容,ctrl+D退出cat。
5. 如何在arm linux上运行.net的x86程序
1.需要交叉编译后,将编译出的文件放到板子上执行。
2.交叉编译器arm-linux-gcc或者arm-linux-g++,过程比较复杂,一时是说不清楚的。
3.建议多看些资料,了解一下原理
4.也可以去请教一下arm方面的专家
6. win10 arm可以运行x86程序吗
首先聊聊64位CPU,Intel和AMD早期采用了完全不同的策略。Intel为64位设计了全新的IA64架构。由于是原生的64位架构,性能更强,但是对传统X86应用兼容不佳。AMD则选择在原始32位X86指令集的基础上扩展64位X86-64指令集,并且将其命名为AMD64。在兼容原有X86的基础上,同时支持X86-64的扩展64位计算。由于市场对IA64架构反应冷淡,Intel最终按照AMD64的模式推出EM64T技术。类似于AMD64,EM64T包括两种工作模式,传统IA-32模式(传统32位模式)和IA-32e扩展模式(支持扩展64位计算)。最终,IA64逐步退出历史舞台,而采用AMD64/EM64T技术的处理器称为x86-64处理器,简称x64处理器。
对于64位Windows如何运行32位应用,选择有两种。第一,将32位系统库(C:WindowsSystem32)移植,并直接在x64处理器(x86-64)上运行32位代码。第二,将32位系统库移植,转换为64位代码,随后在本机运行。WOW64(WindowsonWindows64)选择了后者,首先将32位系统库WindowsSystem32移植至WindowsSysWOW64,随后通过动态二进制编译器,将32位数据类型重新编组为64位,调用约定则自动封装(X86-64对X86指令集的扩展)。最终,无论是32位应用还是64位应用,全部通过调用同样的NTDLL完成与内核的交互,确保了与内核和设备的交互都可以按本地硬件的速度进行。
7. linux 下用arm体系QT编译问题(目前我系统里有X86 和 arm体系(老师编好的)的QT各一个)
貌似是缺少系统库,有些版本的linux编译qt是会出现缺少系统库而导致编译不成功的问题,不是很推荐用最新的编译器来编译,其实2.4的内核和3.4.5的编译器做qt就已经足够了,你可以去查查看那些版本的linux下可以成功的编译qt,安装的时候尽可能把开发用的库都选上,不然就只有自己再去打补丁,
仅作参考
8. arm和x86系统通用吗
arm和x86系统不通用。由于底层架构的不同,特别是指令集的不同,在arm机器上编译的程序放到x86机器上是不能执行的。同理,在x86机器上编译的程序放到arm机器上也是不能执行的。系统不通用。arm指令集不兼容x86,它的主要受众是手机和轻服务应用,arm操作系统有安卓和ios的手机客户端,有着大量的安卓应用和ios应用,不必使用x86应用足以维持自身生态,在轻服务器端有arm的windows版和linux版,有各自的服务端应用。