Linux网卡驱动开发总结
1. 网络子系统
* 系统调用接口
* 协议无关层
* 协议实现层
* 驱动无关层
* 驱动程序层
注:调用接口<->协议层<->驱动程序
2. 网卡驱动程序
* 位于数据链路层
3. 关键数据结构
* struct net_device
* struct sk_buffer
4. 初始化
* 生成net_device,并初始化其成员
* 根据需要,对网卡自身寄存器进行设置,如端口类型选择、双工选择等等
5. 接收
* 通过中断
* 主要流程
分配skb
读数据
netif_rx(skb)
6. 发送
* hard_start_transmit
相关文档:
linux fodera 13 下安装 rpm gcc
先在终端下进入Fedora-13-Beta-i386-DVD 光盘中的 Package 软件包
然后按如下顺序安装
rpm -ivh cpp-4.4.3-8.fc13.i686.rpm
rpm -ivh kernel-headers-2.6.33.1-24.fc13.i686.rpm
rpm -ivh glibc-headers-2.11.90-16.i686.rpm
rpm -ivh glibc-devel-2.11.90-16.i686.rpm
rpm -ivh ......
Ubuntu10.04镜像会出现无法识别键盘输入。在登录画面时,不能输入密码,无法正常进入系统。 解决办法: (1) 开户屏幕键盘功能 在上图开机界面在右下角单击小人图案,再单击“Universal Access Perferences”,出击“Universal Access Perferences”对话框,在对话框中选中“Use on-screen keybo ......
将asterisk移植到ppc__6xx环境下的嵌入式系统上的主要步骤:
在宿主机上asterisk源码包解压缩后的目录下:
1. ./configure CC=ppc_6xx_gcc --without_gnu_ld __host=ppc_linux (过去有段时间了,大小写可能有点记不清楚)
2. make menuselect (选择要裁剪的组件)
3. make cross_complier=ppc_6xx ARCH=ppc
4. ma ......
http://linux.ctocio.com.cn/437/8831437.shtml
我们在调试硬件板时,经常需要做多个jffs2的根文件系统映像,有时也要对比其他途径得到的可用的jffs2根文件系
统映像。但jffs2的文件系统映像不象光盘的映像文件一样可以通过loop设备来挂载……
我们在调试硬件板时,经常需要做多个jffs2的根文件系统
映像, ......
首先要导入这些头文件
#include
#include
#include
#include
#include
#include
然后看一下实际的操作
1、查看文件系统信息
asmlinkage long get_files_info(char * filesystem_type)//取得当前目录的文件系统信息
{
struct fs_struct *fs ;
struct vfsmount *mnt ;
......