ARMv8架构的沿革

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ARMv8架构的沿革相关的知识,希望对你有一定的参考价值。

参考技术A

CPU(中央处理器)是所有智能设备的核心器件。英国ARM公司和美国MIPS公司开创的处理器内核授权模式,使得许多集成电路设计公司得以设计出内含CPU的系统级芯片(SoC, System on Chip),从而带动了智能电子产品的快速发展。
到2011年,产量最大的低端电子产品,如果使用ARM公司的处理器授权内核,大都采用ARM 9内核,而ARM 9内核,是基于ARMv5架构。比较先进的电子产品,大都采用ARM 11内核,该内核是基于ARMv6架构,2011年发布。少数最先进的电子产品,如高档智能手机,大都采用 Cortex A8 或 Cortex A9内核,该内核基于ARMv7架构,2012年发布。2013年上市的高档智能手机,将采用ARMv7架构的新产品 Cortex A15(由于能耗问题被拖延至今才得以解决)。
有些大型芯片公司,从ARM公司获得架构级的技术授权,基于该架构自行研发处理器内核,用于本公司研发的诸多SoC芯片产品。而众多小型芯片公司,大都是直接向ARM公司购买处理器内核的授权,研发SoC芯片产品。
预计,基于ARMv8的SoC芯片,将在2013年被首先用于苹果A7处理器,且在其后的5年左右的时间里被广泛应用于各大厂商。

警告:架构“armv7 armv7s”不包含所有必需的架构“arm64”

【中文标题】警告:架构“armv7 armv7s”不包含所有必需的架构“arm64”【英文标题】:Warning: architectures 'armv7 armv7s' didn't contain all required architectures 'arm64' 【发布时间】:2013-10-16 09:16:31 【问题描述】:

Xcode 项目中有警告:

crypto 被拒绝为“libcrypto.a”的隐式依赖项 因为它的架构“armv7 armv7s”没有包含所有必需的 架构 'arm64'sasl2 被拒绝为隐式依赖 “libsasl2.a”,因为它的架构“armv7 armv7s”不包含 所有必需的架构 'arm64'ssl 都被拒绝为隐式 “libssl.a”的依赖项,因为它的架构“armv7 armv7s” 不包含所有必需的架构“arm64”

我应该如何解决这个警告?

【问题讨论】:

尝试从您的项目构建设置中删除ARM64 架构。因为您使用的库不支持新的 ARM64 架构。 @rckoenes 它有效!您能否将您的评论作为答案,以便我接受? 【参考方案1】:

从您的项目构建设置中移除 ARM64 架构。因为您使用的库不支持新的 ARM64 架构。

【讨论】:

选择“标准架构”是否意味着该应用无法在新 iPhone 和 iPad 上运行? 不,新的 A7 处理器能够运行 32 位应用程序。其他哪些新设备不能运行旧应用,它们可以/。【参考方案2】:

删除 ARM64 不再是一种选择……

从 2015 年 2 月 1 日开始,提交到 App Store 的新 iOS 应用必须包含 64 位支持并使用 iOS 8 SDK 构建。从 2015 年 6 月 1 日开始,应用程序更新也需要遵循相同的要求。要在您的项目中启用 64 位,我们建议使用“标准架构”的默认 Xcode 构建设置来构建具有 32 位和 64 位代码的单个二进制文件。

【讨论】:

【参考方案3】:

此设置对我有用。注意 Build Active Architecture Only 设置用于调试和发布

【讨论】:

【参考方案4】:

从架构中移除 $(ARCHS_STANDARD) 并用 armv7 替换它,armv7s 解决问题

【讨论】:

以上是关于ARMv8架构的沿革的主要内容,如果未能解决你的问题,请参考以下文章

ARMv8 ARM64 架构 整体介绍

ARMv8 架构与指令集.学习笔记

ARM架构armv8 系统安全概述

ARMv8架构u-boot启动流程详细分析

关于ARM架构的一些知识

armv8 memory translation