srsLTE源码分析(一)---enb协议栈入口

     在srslte中,代码的运行机制主要采用线程池,多队列,时间序列等方式来运作的。他们之间相互配合协调运作各个功能。在进入整个程序之前,笔者先简单的说一下线程池的基本原理,线程池实际上主要有两个部分的线程来维护,一个是工作者线程,另一个是任务者线程。他们共同维护一个任务队列,任务者线程往任务队列里面加任务,工作者线程就从任务队列里边取任务然后运行。整个运作的过程非常的庞大,其中维护了许多的队列,笔者目前也还没有完全弄明白多队列与线程池之间的运作关系。今天主要分享一下笔者近期学习srsLTE源码所得的一些内容。后面在学习的过程中还会继续分享,欢迎同行者一起交流。

首先,在enb端,程序的初始化过程是在 main.cc函数里边

 从这里开始,初始化了各个层级,每个层级的初始化相互独立的,这也说明的了,各个层之间是一种并行运行的机制。笔者主要负责协议栈部分的内容,所以从协议栈初始化开始。

在这个函数里面也主要是对协议栈的各个层进行了初始化,包括,RRC,PDCP,RLC,MAC层。同时也开启了一个线程来运行任务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值