news 2026/2/9 21:05:04

移远 api对应的内核映射函数地址解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
移远 api对应的内核映射函数地址解析

qos_app_api_map.c代码

static _api_qosa_task_sleep_ms_t m_qosa_task_sleep_ms = NULL; void qosa_task_sleep_ms(qosa_uint32_t ms ) { if(NULL ==m_qosa_task_sleep_ms) { int ptr =m_get_api_ptr((char *)__FUNCTION__); if(0 == ptr) { SDK_API_DEBUG_NOTSUP(); return; } m_qosa_task_sleep_ms = ( _api_qosa_task_sleep_ms_t)ptr; } m_qosa_task_sleep_ms(ms); }

ql_app_pre_init.c

_get_api_ptr_t m_get_api_ptr = NULL; int qos_app_preboot(void *argv) { qos_app_rw_section_init(); qos_app_zi_section_init(); ql_boot_para *boot_para = (ql_boot_para *)argv; ql_static_mapping* static_mapping = boot_para->static_maping; table_size = *((func_mapping *)boot_para->kernel_maping)->table_size; if(table_size !=0) { m_get_api_ptr=((func_mapping *)boot_para->kernel_maping)->get_fun_ptr_dep_name; } ql_trace = static_mapping->trace; ql_printf = static_mapping->printf; ql_trace("trace test\r\n"); return 1; }

unirtos_sys.h

extern void qosa_task_sleep_ms(qosa_uint32_t ms); typedef void (* _api_qosa_task_sleep_ms_t)(qosa_uint32_t ms);

ql_open_app_init.h

typedef struct func_map { uint32_t *table_size; void *get_fun_ptr_dep_name; //add system info here }func_mapping;

上面代码只贴了跟本文相关的代码片段

里面用到了ptr =m_get_api_ptr((char *)__FUNCTION__),AI解释如下:

先定位两件事:1)m_get_api_ptr 在哪里被“定义/赋值”(函数指针变量最终指向哪个函数);2)你选中那段里 ptr 的具体类型与用法(通过读 qos_app_api_map.c 的对应行)。

Searched regular expressions and read source code
我已经定位到了:m_get_api_ptr 不是一个普通函数,而是一个“函数指针变量”;它在启动预初始化阶段被赋值为“内核侧提供的符号查找函数”。你选中的 ptr 本质上是“查到的目标 API 的函数地址”。

下面把两个问题说清楚:实现在哪里、ptr 表示什么。1) m_get_api_ptr “实现/赋值”在哪里?

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/7 18:37:10

Kafka在大数据生态中的角色与应用场景

Kafka在大数据生态中的角色与应用场景:从“数据快递站”到“实时流中枢” 1. 引入与连接:你身边的Kafka故事 凌晨12点,你在电商APP上下了一单零食;12点01分,首页弹出“你可能喜欢的同款薯片”;12点02分&…

作者头像 李华
网站建设 2026/2/8 3:09:24

大数据领域数据产品的成本核算方法

大数据领域数据产品成本核算全攻略:从模糊到清晰的落地指南 引言:为什么你必须搞懂数据产品的成本? 作为数据产品经理,你是否遇到过这些场景: 财务问“这个数据看板每月要花多少钱?”你支支吾吾说不清楚&am…

作者头像 李华
网站建设 2026/2/3 6:54:28

如何高效实现语义相似度分析?试试GTE中文向量模型镜像

如何高效实现语义相似度分析?试试GTE中文向量模型镜像 在自然语言处理(NLP)领域,语义相似度分析是构建智能对话系统、推荐引擎、文本去重、问答匹配等应用的核心技术之一。传统方法如TF-IDF、编辑距离等虽然简单易用,…

作者头像 李华
网站建设 2026/2/3 12:44:03

一键部署中文语音识别系统|FunASR镜像by科哥使用全解析

一键部署中文语音识别系统|FunASR镜像by科哥使用全解析 1. 背景与价值:为什么选择 FunASR WebUI 镜像? 在语音交互、智能客服、会议记录等场景中,高精度、低延迟的中文语音识别(ASR)能力已成为关键基础设…

作者头像 李华