Qualcom QMI系列-基本知识介绍

微博原文链接:http://blog.chinaunix.net/uid-29640991-id-4236387.html

原博主:zhoushiqian

1 引言
1.1 编写目的
       介绍Qualcom QMI 基本知识,API使用,设计原理,基于QMI的RemoteEfs(NV)分析
1.2 阅读建议
       高通平台入门
1.3 参考资料  
       Qualcom 文档和msm代码

1.5 运行平台
       Android 4.4
1.4 文档声明
   本博客所有的内容未经许可请不要转载,但满足以下条件可允许转载:
    1)保持文章图片完整性;
    2)不得以之盈利;
    3)完整标注博主、文章作者[文章中说明]和其他文章中标注的版权信息;
    4)完整标注来源,包括链接等信息。
2,  缩略语介绍
   QMI:         Qualcom Message Interface
   MSM:          Mobile station mode
   AP:           Application Procesor
3, 总体描述
    高通平台目前都是非对称多核心,最主要的是AP和Modem。两个处理器怎么进行通信呢,我们把AP和Modem当作两个主机,问题就变得了很简单,TCP/IP协议不是一种非常成功的进程间跨主机通信方式。高通没有采用这种方式,但是借鉴了TCP/IP的框架设计。它的框架是这样的,内核态:基于共享内存实现链路层,扩展协议域;用户态,封装出类似于socket函数的接口,用于用户态使用。而我所描述的QMI就是用户态使用的API接口,这些接口非常类似于socket,只要有个socket编程的经验的是会容易理解的。
4,QMI框架介绍
4.1 IDL 说明
    Interface Define Language 有类似于C语言的语法,基本元素service和message。service 可以说是一个服务,每个服务有唯一的service id。当创建service的时候,其实就是类似于socket里面绑定的协议地址。每个服务可以包含很多message,根据message id进行区分。自己自定义一个服务很简单,定义test.idl,然后用perl qmi_idl_compiler.pl test.idl会生成test_api.h test_api.c这个需要客户端和服务端代码包含引用,高通这么做只是为了减少重复的开发工作。
  
4.2 QCCI说明
   QMI common client Interface 其实就是封装客户端进行通讯的C库,主要是注册client,send/receive message
4.3 QCSI说明
   QMI common service Interface 其实就是封装服务端进行通讯的C库,提供服务注册,send/receive message,根据消息ID查找回调函数实现消息响应
5,下篇介绍
   API介绍说明,代码分析。

6,对QMI了解有需求的,可以在评论里面注明。便于把QMI介绍清楚

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值