本文为读书笔记,整理自网络文献和源码
7、wifi驱动解析
7.1、WIFI内核实现的大致框架
Linux下已经支持了市面上的大多数wifi卡的驱动
•每种wifi卡都是需要固件(firmware)才能驱动的,并且同一种卡工作在不同接口时对应的firmware是不一样的
•需要注意的是:很多firmware都是要花钱的
•固件通过其驱动下载到无线卡中,才能驱动起来
wifi驱动的通用的软件架构
1. 分为两部分,上面为主机端驱动,下面是我们之前所说的firmware
2. 其中固件部分的主要工作是:因为天线接受和发送回来的都是802.11帧的帧,而主机接受和传送出来的数据都必须是802.3的帧,所以必须由firmware来负责802.3的帧和802.11帧之间的转换,
3. 当天线收到数据,并被firmware处理好后会放在一个buffer