会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
aspirs
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
5
6
7
8
9
10
11
12
13
···
41
下一页
2021年11月27日
linux memory barrier
摘要: linux memory barrier barrier() macro 2). 关于barrier()宏,jkl大师是这么说的: CPU越过内存屏障后,将刷新自己对存储器的缓冲状态。这条语句实际上不生成任何代码,但可使gcc在 barrier()之后刷新寄存器对变量的分配。 也就是说,barrie
阅读全文
posted @ 2021-11-27 13:10 aspirs
阅读(77)
评论(0)
推荐(0)
2021年11月19日
arm-linux-gnueabihf、aarch64-linux-gnu等ARM交叉编译GCC的区别
摘要: arm-linux-gnueabihf、aarch64-linux-gnu等ARM交叉编译GCC的区别 link: https://blog.csdn.net/Namcodream521/article/details/88379307
阅读全文
posted @ 2021-11-19 12:22 aspirs
阅读(586)
评论(0)
推荐(0)
2021年11月11日
ARM C函数调用堆栈入栈顺序
摘要: ARM C函数调用堆栈入栈顺序 堆栈指针是在函数一开头就确认了的,比如如下的xxx_func.cfi函数,它在函数的开头就将sp自减了0x170,这个0x170是xxx_fun.cfi函数局部变量total size + 需要入栈的reg total size 然后会设置x29(fp,栈底指针),这
阅读全文
posted @ 2021-11-11 22:21 aspirs
阅读(826)
评论(0)
推荐(0)
2021年11月10日
syscall SYSCALL_DEFINE*()实现
摘要: syscall SYSCALL_DEFINE*()实现 include/linux/syscalls.h #define SYSCALL_DEFINE1(name, ...) SYSCALL_DEFINEx(1, _##name, __VA_ARGS__) #define SYSCALL_DEFIN
阅读全文
posted @ 2021-11-10 14:22 aspirs
阅读(546)
评论(0)
推荐(0)
2021年11月8日
ko kallsyms
摘要: ko kallsyms 在layout_symtab()里确认哪些symbol(symbol包括函数与变量)是属于core_layout里的,将这些属于core_layout的symbol的string长度累加起来,然后会将这个累加长度加到core_layout.size,到时也给它分配内存空间。
阅读全文
posted @ 2021-11-08 21:39 aspirs
阅读(103)
评论(0)
推荐(0)
2021年11月7日
elf文件结构解析
摘要: elf文件结构解析 elf文件格式,许多文件类型都是elf格式,比如.ko、.so、.o,vmlinux也是这种格式 如下图是elf文件结构: 查看是否为elf文件,使用file cmd file slub_debug_test_module.ko slub_debug_test_module.ko
阅读全文
posted @ 2021-11-07 23:04 aspirs
阅读(1511)
评论(0)
推荐(0)
ko module加载flow
摘要: ko module加载flow insmod ko都是在user space发起的,通过系统调用finit_module或者init_module来加载ko 其中finit_module系统调用是user space只传ko file的fd,kernel里根据这个fd直接读ko,将ko读到内存上来,
阅读全文
posted @ 2021-11-07 22:35 aspirs
阅读(430)
评论(0)
推荐(0)
链接脚本(link script)语法
摘要: 链接脚本(link script)语法 语法 1. 定义一个section,如下是define一个.init.data section *(.init.rodata.* .init.bss)最前面的*是通配符,表示所有.o文件的(.init.rodata.*、.init.bss section) .
阅读全文
posted @ 2021-11-07 20:45 aspirs
阅读(1098)
评论(0)
推荐(0)
2021年11月5日
ARM kernel panic misc
摘要: ARM kernel panic misc Code <0>[22925.503588] Code: 05b1a000 ffffffc0 00000000 00000000 (00000ee3) code表示kernel panic时PC地址指向的地址里的数据,用括号括起来是PC地址指向的地址的in
阅读全文
posted @ 2021-11-05 15:48 aspirs
阅读(59)
评论(0)
推荐(0)
2021年11月3日
linux signal framework
摘要: linux signal framework 信号产生&处理流程 信号产生(signal generate) 信号的产生可以是user space通过kill等系统调用给某个线程(目标线程)发送某个signal,此时signal generate的流程如下: 1. 根据pid确定对应的task_st
阅读全文
posted @ 2021-11-03 16:12 aspirs
阅读(188)
评论(0)
推荐(0)
上一页
1
···
5
6
7
8
9
10
11
12
13
···
41
下一页
公告