
arm64
文章平均质量分 74
玮玮豆豆
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
arm64 Linux操作系统知识点
低地址存放:指向上一个栈 (父函数的栈)的栈基地址 FP,类似于链表的prev指针。应用程序要访问内核就必须通过系统调用层,内核可以在系统调用层对应用程序的访问权限、用户类型和其他一些规则进行过滤,以避免应用程序不正确地访问内核。高地址存放:当前函数的返回地址,也就是进入该函数时LR的值,本书把这个地址称为P_LR(Previous LR)。在函数执行时,FP和SP寄存器会指向该函数栈空间的FP处。4. 函数返回时,ARM64处理器先把栈中的P_LR的值载入当前LR,然后执行RET指令。原创 2024-09-11 09:25:15 · 1679 阅读 · 0 评论 -
arm64高速缓存基础知识
随机法:随机地确定替换的高速缓存行,由一个随机数产生器产生随机数来确认替换行FIFO法:选择最先调入的高速缓存行进行替换LRU法:最少使用的行优先替换。原创 2024-09-09 11:33:36 · 2057 阅读 · 2 评论 -
arm调试-- gdb与gdbserver的安装与使用
将生成的可执行文件和 gdb-7.11.1 /gdb/gdbserver路径下生成的gdbserver复制到开发板中。PC端把可执行文件和源码拷贝到gdb-7.11.1/_install/bin下。2. 解压编译gdb以及gdbserver。1、复制gdbserver。2、运行gdbserver。5、连接gdbserver。4、在PC端运行gdb。(1)gdb PC端。(2)arm终端打印。原创 2024-09-03 09:03:59 · 1388 阅读 · 1 评论 -
GNU汇编器
align 有三个参数,第一个参数表示对齐的要求,第二个参数表示要填充的数(可忽略),第三个参数表示这个对齐应该跳过的最大字节数。通常只是用第一个参数。汇编阶段生成的可重定向目标文件和链接阶段生成的可执行二进制文件的主要区别在于,可重定向目标文件的所有段的起始地址都是0。1、预处理:GCC的预编译器(CPP)对各种预处理命令进行处理,例如对头文件的处理、宏定义的展开、条件编译的选择等。汇编阶段生成的可重定位目标文件以及链接阶段生成的可执行二进制文件都是按照一定的文件格式(ELF)组成的二进制目标文件。原创 2024-09-02 13:48:39 · 1348 阅读 · 0 评论 -
arm64--异常处理与中断处理
EL0 非特权模式,用于运行应用程序EL1为特权模式,用于运行操作系统内核EL2用于运行虚拟化管理程序EL3用于运行安全世界的管理程序。原创 2024-08-27 10:24:13 · 1442 阅读 · 0 评论 -
Linux-arm64中断现场保护详解
_entry_task为内核静态定义的percpu变量,在进程切换时,会将next进程的进程描述符保存到该变量中。十一、S_LR与S_STACKFRAME与S_STACKFRAME。三、per_cpu变量获取offset。五、disable_step_tsk。六、get_thread_info。一、ldr_this_cpu。二、__entry_task。七、S_FRAME_SIZE。九、thread_info。原创 2024-08-26 14:31:17 · 635 阅读 · 0 评论 -
arm64--汇编器
前面两篇讲了ARM64汇编指令,本篇主要讲一下汇编器,何为汇编器呢?汇编器主要是将汇编语言翻译为及其目标代码的程序。原创 2024-08-23 08:49:20 · 795 阅读 · 0 评论 -
ARM64指令集2-算术与移位指令
接着上文,接着讲一下算术与移位指令,想要系统学习arm64指令的朋友们,添加一个关注,后面会持续更新的。原创 2024-08-23 08:29:23 · 1296 阅读 · 0 评论 -
ARM64指令集1-加载与存储
从今天开始,我将每天写一篇关于ARM64的文章,主要给大家介绍一下arm64相关的特性,包括指令集、异常处理、中断、浮点计算、NEON、缓存、原子操作等,想要系统学习ARM64的朋友们,加一个关注,保证干货满满今天是第一篇,主要是介绍一下加载与存储指令。原创 2024-08-22 08:43:21 · 868 阅读 · 0 评论