相关问题
HarmonyOS 如何修改NativeAPI项目中的生成的动态链接库so名称
227浏览 • 1回复 待解决
HarmonyOS 多个.a链接生成so库报错
283浏览 • 1回复 待解决
HarmonyOS 动态import so使用问题
317浏览 • 1回复 待解决
如何将C++代码编译成HarmonyOS手机可以使用的so动态链接库
2738浏览 • 2回复 待解决
如何在ArkTS中动态加载so
1022浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙项目中链接QoS动态链接库?
528浏览 • 1回复 待解决
ArkTS和Native如何动态加载、卸载so
2367浏览 • 1回复 待解决
HarmonyOS C动态链接库运行时内存段的疑问
394浏览 • 1回复 待解决
sdk 10升级sdk 11后,加载链接的so库崩溃
1939浏览 • 1回复 待解决
ArkTS侧与Native侧分别如何动态加载SO库
2938浏览 • 1回复 待解决
是否可以在TaskPool中动态加载模块(HAR、HSP、SO)
1914浏览 • 1回复 待解决
HarmonyOS 上架流程
444浏览 • 1回复 待解决
测试在sdk的module下链接so库后调用c++的方法报错
1395浏览 • 1回复 待解决
如何去除Native工程自动链接c++_shared后集成的libc++_shared.so
2859浏览 • 1回复 待解决
需要Flutter开发HarmonyOS原生plugin和so动态库打包的官方教程文档
973浏览 • 1回复 待解决
#鸿蒙通关秘籍#在Webview中如何通过动态菜单进行URL链接操作?
307浏览 • 1回复 待解决
HarmonyOS 上架流程?
639浏览 • 0回复 待解决
HarmonyOS 动态impot so库,Init与napi_module_register的执行时机
205浏览 • 1回复 待解决
HarmonyOS 包签名流程
638浏览 • 1回复 待解决
HarmonyOS 应用arkguard混淆执行流程
938浏览 • 1回复 待解决
HarmonyOS Flutter插件发布流程咨询
155浏览 • 1回复 待解决
HarmonyOS 图片加载流程监控实现
367浏览 • 1回复 待解决
HarmonyOS 相机预览拍照流程报错
604浏览 • 1回复 待解决
HarmonyOS 应用上架流程与其他平台上架流程有什么区别?
678浏览 • 1回复 待解决
Xcomponent绘图流程分析
1934浏览 • 1回复 待解决
参考答复:
HarmonyOS系统中 linker so动态链接流程大致如下:
加载so文件:当应用程序需要使用某个so库时,系统会先在系统库目录下查找该库文件,如果找到则将其加载到内存中。
解析符号:在加载so文件时,系统会解析其中的符号表,将符号与其对应的地址进行绑定。
重定位:如果so文件中存在未绑定的符号,则需要进行重定位操作,将这些符号绑定到正确的地址上。
加载依赖库:如果so文件中依赖其他库,则需要递归加载这些依赖库,并进行符号解析和重定位操作。
初始化:当所有依赖库都加载完成后,系统会调用so文件中的初始化函数,完成库的初始化工作。
导出符号:当so文件加载完成后,其中的符号就可以被其他应用程序使用了。如果其他应用程序需要使用该so文件中的某个符号,则系统会将该符号的地址导出给其他应用程序。
总的来说,HarmonyOS系统中的linker so动态链接流程与其它操作系统中的动态链接流程类似。