自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(9)
  • 收藏
  • 关注

转载 gcc选项

gcc的选项"-l"是用来指定需要连接的库的,gcc会在系统的标准目录下寻找指定的库,这些标准目录是什么呢?一般来说应该是/usr/lib和/lib,然而不同的系统还是可能会不同;有时我们还想知道这些标准目录的顺序,这时就可以使用gcc的选项-print-search-dirs,下面是在我的debian下执行的结果:$ gcc -print-search-dirsinstall: /usr/lib

2007-12-20 20:04:00 457

转载 链接库的创建和使用

 在/usr/lib目录下面,我们会看到许多的文件形如:libxxx.so,libxxx.a这样的形式。libxxx.a我们称之为静态链接库,或者简称为链接库,libxxx.so称之为共享链接库,或者是动态链接库。=== Archives ===    我们编程的时候经常使用一些库,例如我们在编写网络捕获程序的时候,我么你使用libpcap,写网络发包函数的时候,我们使用libnet库。    我

2007-12-12 10:25:00 1145 1

转载 tcp保活定时器

 23.1介绍在一个空闲的(idle)TCP连接上,没有任何的数据流,许多TCP/IP的初学者都对此感到惊奇。也就是说,如果TCP连接两端没有任何一个进程在向对方发送数据,那么在这两个TCP模块之间没有任何的数据交换。你可能在其它的网络协议中发现有轮询(polling),但在TCP中它不存在。言外之意就是我们只要启动一个客户端进程,同服务器建立了TCP连接,不管你离开几小时,几天,几星期或

2007-12-06 14:34:00 5014 1

转载 宏定义 do{ ...} while(0)

 #define MACRO_NAME(para) do{macro content}while(0)的格式,总结了以下几个原因: 1,空的宏定义避免warning:#define foo() do{}while(0) 2,存在一个独立的block,可以用来进行变量定义,进行比较复杂的实现。 3,如果出现在判断语句过后的宏,这样可

2007-12-06 13:55:00 596

转载 skb_buff结构分析

struct sk_buff可能是linux网络代码中最重要的数据结构,它表示接收或发送数据包的包头信息,并包含很多成员变量供网络代码中的各子系统使用。    这个结构被网络的不同层(MAC或者其他二层链路协议,三层的IP,四层的TCP或UDP等)使用,并且其中的成员变量在结构从一层向另一层传递时改变。 L4向L3传递前会添加一个L4的头部,同样,L3向L2传递前,会添加一个L3的头部。添加头部比

2007-12-06 11:12:00 1930

转载 scatter/gather I/O

    scatter/gather方式是与block dma方式相对应的一种dma方式。       在dma传输数据的过程中,要求源物理地址和目标物理地址必须是连续的。但在有的计算机体系中,如IA,连续的存储器地址在物理上不一定是连续的,则dma传输要分成多次完成。       如果传输完一块物理连续的数据后发起一次中断,同时主机进行下一块物理连续的传输,则这种方式即为block 

2007-12-06 09:47:00 3292

转载 内核编程杂记

中断的开关 如果你要禁止所有的中断该怎么办? 在2.6内核中,可以通过下面两个函数中的其中任何一个关闭当前处理器上的所有中断处理,这两个函数定义在 中:    void local_irq_save(unsigned long flags);    void local_irq_disable(void);    对 local_irq_save的调用将把当前中断状态保存到flags中,然后禁

2007-12-04 14:34:00 1153

原创 Linux网卡驱动

数据接收网卡驱动的数据接收,实际上是一个生产者/消费者模型。核心是输入队列(全局的,或者网卡私有的)。网卡收到数据时,触发中断。在中断执行例程中,把skb挂入输入队列,并出发软中断。稍后的某个时刻,当软中断执行时,再从该队列中把skb取下来,投递给上层协议。一 软中断2.6版中的数据传输是通过软中断softirq来实现的。它是以前bh的一个替代品。原理上和bh差不多,都是设置一个全局的

2007-12-04 14:12:00 3406 1

转载 Linux网卡驱动分析

Linux网卡驱动分析    

2007-12-04 14:05:00 959

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除