so文件加载流程
记载步骤
java 加载
loadLibrary=>doLoad=>nativeLoadnative 加载
- 初始化阶段
- 加载到内存
- 打开so文件
- 映射so到内存空间
- 解析 dynamic section
- 链接阶段
3.so加载关键函数
dlopen -> 打开so文件
dlsym -> 获取JNI_Onload函数地址,调用该函数
dlerror -> 处理错误
4.初始化
init
init_array
5.常用类
log
6.root权限
读写内存数据-》内存页属性的修改 -〉 r/w/x chmod 777
7.下断点时机 (init init_array) JNI_OnLoad
注意:so加载了program header 没有加载session header