Android RIL简介

Android RIL简介1 RIL 全称 RadioInterfa Android 的无线接口层 负责提供电话服务 是上层应用和下层硬件 modem 之间的中间层 负责数据的可靠传输 AT 命令的发送以及响应的解析 2 RIL 的三部分 Android 的 RIL 驱动模块在 hardware ril 目录下 一共分 rild librild so 以及 librefrence ril so 三个部分 AT 调制解调器命令语

1、RIL 全称:

Radio Interface Layer,Android的无线接口层,负责提供电话服务.是上层应用和下层硬件modem之间的中间层。负责数据的可靠传输、AT命令的发送以及响应的解析。

2、RIL的三部分:

3、Rild:

Main函数作为整个ril层的入口点,用dlopen打开libreference-ril.so库,RIL_startEventLoop()创建客户端事件监听线程。RIL_register()注册事件处理接口,并创建socket监听事件。

4、Libril.so:

组成部分为:ril.cpp,ril_event.cpp。主要完成同Framework层通信的工作,接受ril请求并传递给libreference_ril.so,同时把来自modem的response通过libreference_ril.so的反馈回传给调用进程。

5、RIL_startEventLoop:

6、PIPE:

在创建队列之前,先创建一个PIPE无名管道,读端放入select队列中,写端放入rilEventAddWakeup()中。rilEventAddWakeup()包含ril_event_add(ev)和triggerEvLoop()两个函数,ril_event_add(ev)将事件加入队列中,triggerEvLoop()唤醒select()函数,pipe的作用就是刷新select监听的内容。

7、三个队列:

8、RIL事件处理流程图:

这里写图片描述

9、RIL_register:

10、RIL_init 处理流程图:

这里写图片描述

11、总体流程图:

这里写图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/220124.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午9:11
下一篇 2026年3月17日 下午9:11


相关推荐

  • Please upgrade the installed version of powershell to the minimum required version and run the comma…

    Please upgrade the installed version of powershell to the minimum required version and run the comma…

    2021年10月28日
    50
  • Adroid 收集

    Adroid 收集用两张图告诉你,为什么你的App会卡顿?-Android-掘金Cover有什么料?从这篇文章中你能获得这些料:知道setContentView()之后发生了什么?…Android获取View宽高的常用正确方式,避免为零-掘金相信有很多朋友都有过在Activity中通过getWidth()之类的方法获取View的宽高值,可能在onCreat…

    2022年5月25日
    34
  • 三角形中重心、内心、外心、垂心向量计算公式

    三角形中重心、内心、外心、垂心向量计算公式一 对 ABC 重心 O 来讲有 OA OB OC 0 mathop OA limits rightharpoon mathop OB limits rightharpoon mathop OC limits rightharpoon 0OA OB OC 0 证明 延长 CO 与线段 AB overline AB AB 交于点 D 根据 A D B 三点共线公式 OD mOA nOB mathop OD limits rightharpoon m

    2026年3月18日
    1
  • 基本粒子群算法小结及算法实例(附Matlab代码)

    基本粒子群算法小结及算法实例(附Matlab代码)1、基本粒子群算法假设在一个D维的目标搜索空间中,有N个粒子组成一个群落,其中第i个粒子表示为一个D维的向量:$$X_i=(x_{i1},x_{i2},\cdots,x_{iD}),\quadi=1,2,\cdots,N\quad\text{(1)}$$第i个粒子的“飞行”速度也是一个D维的向量,记为:$$V_i=(v_{i1},v_{i2},\cdots,v_{iD}),\quadi=1,2,\cdots,N\quad\te…

    2022年5月29日
    36
  • 斐波那契数列C语言设计步骤,斐波那契数列c语言函数

    斐波那契数列C语言设计步骤,斐波那契数列c语言函数C 语言 用递归方法编写 CSS 布局 HTML 小编今天和大家分享斐波那契数列的函数用递归方法编写 CSS 布局 HTML 小编今天和大家分享斐波那契数列的函数 返回值为长整型 斐波那契数列的 includelongf longn if n 0 n 1 returnn elsereturnfu n 1 func n 2 main longn printf

    2026年3月18日
    2
  • 用Tensorflow基于Deep Q Learning DQN 玩Flappy Bird

    用Tensorflow基于Deep Q Learning DQN 玩Flappy Bird前言 2013 年 DeepMind 在 NIPS 上发表 PlayingAtari 一文 提出了 DQN DeepQNetwork 算法 实现端到端学习玩 Atari 游戏 即只有像素输入 看着屏幕玩游戏 DeepMind 就凭借这个应用以 6 亿美元被 Google 收购 由于 DQN 的开源 在 github 上涌现了大量各种版本的 DQN 程序 但大多是复现

    2026年3月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号