-
5G NR无线网络覆盖优化指导书-时间管理篇
资源介绍
3.4时间管理
在协议栈中的每一层都会有很多不同的事件发生,这些事件发生的时间顺序
各不相同。很多时候,事件并不要求立即得到处理,而是要求过一定的时间后再
进行处理。因此,往往会遇到下面情况:假设A事件发生后要求lO秒之后执行,
B事件在A事件发生1秒后产生,且B事件要求5秒后执行。从时间轴的角度
上,我们可以知道,B事件虽然在A事件之后发生,但应当在A事件之前被处
理。为了按照合理的时间顺序来处理不同事件的执行,这就需要对各种不同的事
件进行时间管理。OSAL调度程序设计了与时间管理相关的函数,用来管理各种
不同的要被处理的事件。
对事件进行时间管理,OSAL也采用了链表的方式进行,每当发生一个要被
处理的事件后,就启动一个逻辑上的定时器,并将此定时器添加到链表之中。利
用硬件定时器作为时间操作的基本单元。设置时间操作的最小精度为lms,每
lms硬件定时器便产生一个时间中断,在时间中断处理程序中去更新定时器链
表。每次更新,就将链表中的每一项时间计数减l,如果发现定时器链表中有某
一表项时间计数已经减到0,则将这个定时器从链表中删除,并设置相应的事件
标志。这样任务调度程序便可以根据事件标志进行相应的事件处理。根据这种思
路,来自协议栈中的任何事件都可以按照时间顺序得到处理。从而提高了协议栈
设计的灵活性。
在设计过程中需要经常使用这样一个时间管理函数,其函数声明如下:
- 上一篇: 任务调度-5gnr无线网络覆盖优化指导书
- 下一篇: Socket 网络通信测试工具