本文介绍了ARMv8-在64位OS上运行旧版32位应用程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

通过ARMv8手册,我有以下问题可以帮助您了解全局.

Going thru the ARMv8 manual, I have the following questions to help understand the big picture.

  1. 可以使用旧版32位应用程序. (ARMv7或更早版本)是否可以在ARMv8操作系统上运行?

  1. Can legacy 32 bit app. (ARMv7 or earlier) run as is on the ARMv8 OS?

如果需要为ARMv8重建旧版应用程序,并假设我将其重建为32位(Aarch32),那么是否需要32位OS基础支持? (很有趣的是,这里知道寻址机制是如何工作的.)

If the legacy applications need to be rebuilt for ARMv8 and assuming that I rebuild the application as 32 bit (Aarch32), does this need 32 bit OS underlying support? (It is interesting to know how the addressing mechanism works here.)

请尽可能提供参考.

PS:我的目标是支持Aarch64(3.7和更高版本)的Linux OS

PS: I am targeting Linux OS with Aarch64 support (3.7 and later)

推荐答案

Aarch64平台可以运行32位ARM,但是此兼容性是可选的.

Aarch64 platform may run 32bit ARM but this compatibility is optional.

要运行AArch32二进制文件,您需要在32位版本中使用的所有库应用程序.与x86-64系统上的i686二进制文件相同.

To run AArch32 binaries you need all libraries application would use in 32bit versions. Same as with i686 binaries on x86-64 systems.

这篇关于ARMv8-在64位OS上运行旧版32位应用程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-09 06:03