Avatar

当一些请求发起时,MM可能暂时无法执行,但是后续状态有是有可能允许执行该命令时。例如当mm正在等待网络回复时,此时mmi有发起了一个网络搜索命令,这个命令在现在的状态发起也不是错误的。MM此时不能对该命令返回错误。与此对应例如在无sim卡情况下发起的非紧急的call,mm就会对该命令返回错误,此命令无法被执行。
对于这些mm暂时无法执行的请求,mm会调用mm_write_entry函数将这些命令放入一张表中,等待合适的时机对其进行执行。可以执行这些等待命令的时机有mm处理完其他发送给他的原语后,mm的timer超时执行完对应的操作后。
当mm可以执行表中的命令时,mm会将整个表中的命令从头开始都执行,而不是一次只执行一个命令。在这张命令表中,存有这些消息的发起者,ti,以及命令含义。mm能够根据这些信息来重新执行这些命令。

Tagged with: .