ARM 获取cpu个数

MPIDR_EL1寄存器

AFF0 :表示一个 core 中的第几个 thread,大多数 core 都是 single-threaded core,所以大多数 core 中的该值是 0.

AFF1:表示一个 cluster 中的第几个 cpu

AFF2/AFF3:表示系统中的第几个 cluster,这个值由 SOC 厂商给 core 的输入信号决定

汇编

复制代码
                mrs     x2, mpidr_el1
                and     x2, x2, #0xFF00   // x2 == CLUSTER number

参考:

【ARM64 常见汇编指令学习 24 -- ARM 带返回值的汇编函数】_arm64 mrs-CSDN博客

相关推荐
Aczone2813 分钟前
硬件(六)arm指令
开发语言·汇编·arm开发·嵌入式硬件·算法
DebugKitty10 小时前
硬件开发2-ARM基本概要
arm开发·mmu·soc·指令集·计算机系统·alu
Aczone2810 小时前
硬件(五) 存储、ARM 架构与指令系统
arm开发·嵌入式硬件·架构
Skylar_.12 小时前
嵌入式 - ARM(2)汇编
汇编·arm开发
m0_5713728212 小时前
嵌入式ARM架构学习2——汇编
arm开发·学习
Skylar_.12 小时前
嵌入式 - ARM(1):ARM体系结构
arm开发
cui__OaO15 小时前
ARM -- 汇编语言
arm开发
sucool_lb20 小时前
GEM5学习(5): ARM 架构功耗仿真
arm开发·学习
Joshua-a2 天前
macOS下arm编译缺少stdint.h等问题
arm开发·macos
蚂蚁舞2 天前
在arm架构的Debian系统手动安装和卸载Mysql8的操作
arm开发·debian·安装mysql·mysql8·卸载mysql