4. 本文内容组织的逻辑

对于本文的组织内容的逻辑,简单解释一下。

此处,首先要搞懂我们的目的/目标是,好像听到旁边有人喊“没有蛀牙!”恭喜这位同学,你都抢答了!只可惜答案不对,囧。此文目的前面已经说了,就是想要搞懂如何去实现Linux下对应的无线网卡驱动。

而实现驱动之前,肯定至少要知道两件事情:

  • 一是硬件上,有哪些东西,他们是如何放置的。
  • 二是软件上,通信协议上,是如何实现通信的。

而对于硬件,无线网卡,就要知道其相关的基本名词,基本工作原理等等,对应的还有无线网络的知识。

而无线网络,是在有线网络之后才出现的,很多技术规范和设计等,也是参照和兼容有线网络而设计的,两者关系很紧密,所以也要知道有线网卡的一些知识。

最后,当然有线网络和无线网络,都属于网络,所以对于所涉及到的网络的基础知识,也要清楚。

正因此,才按照:

硬件:网络 + 有线网络 ⇒ 无线网络 ⇒ 80211无线网络

这样的顺序来介绍的。

而对于软件方面,无线网络驱动,是80211架构下的,而80211无线网络架构,也还是基于Linux的网络架构上的,所以要按照:

软件:Linux网络架构 ⇒ Linux下的80211 无线网络架构

来介绍的。

这样,将相关的硬件和软件的知识都介绍完了,也才能搞懂后面要介绍的,有哪些硬件,对应软件是如何工作的。

其中软件部分,知道Linux无线网络架构本身已经实现了哪些功能,剩下的部分,就是你要实现的驱动的细节部分,这样硬件和软件全部协同工作,才能让无线网卡正常工作。