android 我的架构是什么,armv8l到底意味着什么?

deikduxw  于 2023-06-04  发布在  Android
关注(0)|答案(3)|浏览(1167)

首先,我搜索了(很多),我对我的Android架构感到困惑。
我使用的主要方法是:

  1. uname -m命令表明我正在使用armv8l
  2. dpkg --print-architecture命令表明我使用的是arm
  3. lscpu显示以下输出:
  1. ~ $ lscpu
  2. Architecture: armv8l
  3. Byte Order: Little Endian
  4. CPU(s): 8
  5. On-line CPU(s) list: 0-3
  6. Off-line CPU(s) list: 4-7
  7. Vendor ID: ARM
  8. Model name: Cortex-A53 Model: 4
  9. Thread(s) per core: 1
  10. Core(s) per socket: 4
  11. Socket(s): 1
  12. Stepping: r0p4
  13. CPU(s) scaling MHz: 79%
  14. CPU max MHz: 1586.0000
  15. CPU min MHz: 0.0000
  16. Flags: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 id iva idivt lpae evtstrm aes pmull sha1 sha2 crc32
  1. cat /proc/cpuinfo显示以下输出:
  1. ~ $ cat /proc/cpuinfo
  2. processor : 0
  3. Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt lpae evtstrm aes pmull sha1 sha2 crc32
  4. CPU implementer : 0x41
  5. CPU architecture: 8
  6. CPU variant : 0x0
  7. CPU part : 0xd03 CPU revision : 4
  8. processor : 1
  9. Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt lpae evtstrm aes pmull sha1 sha2 crc32
  10. CPU implementer : 0x41
  11. CPU architecture: 8
  12. CPU variant : 0x0
  13. CPU part : 0xd03 CPU revision : 4
  14. processor : 2
  15. Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt lpae evtstrm aes pmull sha1 sha2 crc32
  16. CPU implementer : 0x41
  17. CPU architecture: 8
  18. CPU variant : 0x0
  19. CPU part : 0xd03
  20. CPU revision : 4
  21. processor : 3
  22. Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt lpae evtstrm aes pmull sha1 sha2 crc32
  23. CPU implementer : 0x41
  24. CPU architecture: 8
  25. CPU variant : 0x0
  26. CPU part : 0xd03
  27. CPU revision : 4
  1. AIDA64(设备信息应用程序)在CPU部分向我显示:

lscpu说我使用的是Cortex-A53型号,而根据Cortex-A53,它说我使用的是ARMv 8-A 64位。
所以,我不知道我的Android拱是什么,比如当我安装node.js或其他包或二进制文件时,我是从node.js dist安装在armv7 l还是armv 8(arm 64)中?
我知道在Android中手动安装node.js并不真正受支持,或者我不知道如何做到这一点。
如果有人有问题,我随时准备回答。
谢谢你。

voj3qocg

voj3qocg1#

其他答案都是正确的,但这里有一些背景知识,可能有助于您的理解。
最初的ARM架构是32位的。从ARMv 8开始,还支持64位指令集。ARMv 8-A CPU应该支持这两种模式,因此这样的芯片有效地为您提供了两种架构。通常,armaarch32表示32位模式,arm64aarch64表示64位模式。
uname中的armv8l模式意味着您的内核构建为在ARMv 8芯片上以其32位模式运行。(为64位模式构建的内核在这里会说arm64。)l代表“little endian”;该体系结构支持小端模式和大端模式,其中小端模式被广泛使用。armv8b将是32位big-endian模式。
lscpu/proc/cpuinfo数据直接查询CPU硬件的能力。Cortex A-53是一个完整的ARMv 8-A实现,他们正确地告诉你它物理上支持64位模式。
uname -mdpkg --print-architecture命令查询的是操作系统,而不是硬件。所以他们说你运行的是32位内核和操作系统。因此,您无法在此内核/操作系统安装中使用64位模式。对于所有的意图和目的,现在你有一个32位arm / aarch32 CPU。
ARMv 8架构与ARMv7向后兼容,因此您的armv7l节点包将在其上运行。armv8/arm64软件包不会,除非你想先重新安装整个操作系统。

kr98yfug

kr98yfug2#

armv8l是64位CPU的32位模式,如果你有这个CPU,dpkg会转到arm,但不会转到lscpuuname,因为它们会检查系统架构

332nm8kg

332nm8kg3#

它是一个只支持aarch32的架构,没有aarch64伊萨。

相关问题