linux_网络
zhangtaoym
这个作者很懒,什么都没留下…
展开
-
PCI驱动框架简单分析
一、PCI 概念介绍 PCI是CPU和外围设备通信的高速传输总线。PCI规范能够实现32位并行数据传输,工作频率为 33MHz 或 66MHz ,最大吞吐率高达266MB/s,PCI的衍生物包括 CardBus、mini-PCI、PCI-Express、cPCI等。 PCI总线体系结构是一种层次式的体系结构。在这种层次体系结构中,PCI桥设备占据着重要的地位,它将父总线转载 2017-07-30 10:33:25 · 547 阅读 · 1 评论 -
Linux 网卡驱动学习(一)(分析一个虚拟硬件的网络驱动例子)
转自:http://blog.csdn.net/xy010902100449/article/details/47132517在Linux,网络分为两个层,分别是网络堆栈协议支持层,以及接收和发送网络协议的设备驱动程序层。网络堆栈是硬件中独立出来的部分,主要用来支持TCP/IP等多种协议,网络设备驱动层是连接网络堆栈协议层和网络硬件的中间层。网络设备驱动程序的主要功能是:(转载 2017-07-23 16:41:24 · 621 阅读 · 0 评论 -
Linux 网卡驱动学习(二)(网络驱动接口小结)
转自:http://blog.csdn.net/xy010902100449/article/details/47132917【摘要】前文我们分析了一个虚拟硬件的网络驱动例子,从中我们看到了网络设备的一些接口,其实网络设备驱动和块设备驱动的功能比较类似,都是发送和接收数据包(数据请求)。当然它们实际是有很多不同的。1、引言首先块设备在/dev目录下有设备节点,而网络设备转载 2017-07-23 16:51:35 · 414 阅读 · 0 评论 -
Linux 网卡驱动学习(三)(net_device 等数据结构)
转自:http://blog.csdn.net/xy010902100449/article/details/47157113【摘要】前文对网络驱动例子进行一个简单的梳理总结,本文贴出 net_device 的数据结构以及一些驱动中常用的数据结构。1、网络设备驱动结构下图摘自http://blog.chinaunix.net/uid-20672257-id-3147768.html转载 2017-07-23 21:03:21 · 3623 阅读 · 0 评论 -
Linux 网卡驱动学习(四)(缓存描述符 Buffer Description)
转自:http://blog.csdn.net/xy010902100449/article/details/47157731【摘要】上文我们罗列出驱动中重要的数据结构,Linux 内核中对网络设备进行描述的核心结构类型叫做 net_device,net_device 结构定义在 include/linux/netdevice.h 文件中。该结构的字段可以分为以下几类。1、ne转载 2017-07-23 21:10:39 · 876 阅读 · 0 评论 -
Linux 网卡驱动学习(五)(收发包具体过程)
转自:http://blog.csdn.net/xy010902100449/article/details/47362787函数接口设备初始化函数网络设备驱动在 Linux 内核中是以内核模块的形式存在的,对应于模块的初始化,需要提供一个初始化函数来初始化网络设备的硬件寄存器、配置 DMA 以及初始化相关内核变量等。设备初始化函数在内核模块被加载时调用,它的函转载 2017-07-23 21:26:51 · 916 阅读 · 0 评论 -
Linux 网卡驱动学习(六)(应用层、tcp 层、ip 层、设备层和驱动层作用解析)
转自:http://blog.csdn.net/xy010902100449/article/details/47428187本文将介绍网络连接建立的过程、收发包流程,以及其中应用层、tcp层、ip层、设备层和驱动层各层发挥的作用。1、应用层对于使用socket进行网络连接的服务器端程序,我们会先调用socket函数创建一个套接字:fd = socket转载 2017-07-23 22:20:18 · 809 阅读 · 0 评论