移动操作系统如何与基带操作系统对话

时间:2014-07-04 07:40:21

标签: android mobile operating-system

我正在尝试修改移动操作系统,这样我就可以控制要接听的呼叫,拒绝哪个呼叫,以及运行某些信号处理。

我正在使用Android操作系统,但我需要与基带操作系统进行通信,我确信无论何时我们接到电话,移动操作系统用户界面变得生动,以及我们是否想采取或者拒绝接听电话 - 这个决定可以在移动OS层进行,然后传输到基带OS!

我试图在谷歌找到,但找不到一件事,基带操作系统和移动操作系统之间存在什么样的接口。

非常感谢帮助!

1 个答案:

答案 0 :(得分:1)

Android中用于与无线电通信的主要机制是/ dev / smd0,它实现了具有许多扩展命令的AT调制解调器。我不知道该设备是如何实现的,但我建议查看它的来源。我相信它基本上是连续的。

操作系统(如果我还记得)有一个守护程序,它监视和连接该设备。

例如,当手机需要基带在移动网络上注册时,它可以向该设备发送AT+CREG=1,基带将负责处理(并返回0)。要拨打电话,它会向该设备发送ATD8005551212或其他内容。要接听电话,它会发送ATA;挂断它会发送ATH,就像调制解调器一样。

该设备上的来电事务看起来像这样。基带将在/ dev / smd0上打印+CRING: VOICE,操作系统可以发送AT+CLCC以获取呼叫者ID,其格式为扩展状态消息:+CLIP: "+18555551212",,,,""或其他。

据我所知,有时设备名称会有所不同;例如,如果基带接口实现为USB串口,则可能为/dev/ttyUSB0

你将在系统应用层执行此操作,而不是在内核中执行此操作,我认为这是正确的方法。