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博客

相关推荐
sayang_shao3 小时前
ARM架构运行模式学习笔记
arm开发·学习·架构
坤坤藤椒牛肉面4 小时前
arm基础IMX6ULL----点亮led
arm开发
Flamingˢ5 小时前
基于ARM的裸机程序设计和开发(四):硬件编程原理与GPIO控制思路
arm开发
aseity7 小时前
Debian10 ARM KVM 虚拟机安装记录
arm开发
li星野9 小时前
RTOS面试完整模拟题(嵌入式系统方向)
arm开发·面试·职场和发展
路溪非溪12 小时前
BLE的广播、扫描和连接等工作机制总结
linux·arm开发·驱动开发
忆和熙15 小时前
AArch64异常指令与异常表(ARMv8异常机制——AArch64异常调用指令与异常表)
arm开发·arm异常
szxinmai主板定制专家17 小时前
基于 STM32 + FPGA 船舶电站控制器设计与实现
arm开发·人工智能·stm32·嵌入式硬件·fpga开发·架构
Flamingˢ17 小时前
基于ARM的裸机程序设计和开发(三):C编程基础与Zynq裸机开发常用方法
c语言·arm开发·单片机
EnglishJun17 小时前
ARM嵌入式学习(八)--- 汇编应用:点亮led
汇编·arm开发·学习