- 博客(6)
- 资源 (1)
- 收藏
- 关注
原创 在Linux下实现comer的TCP/IP协议栈——缓冲池管理和信号灯控制
CHAPTER3:一、简介:人啊,不该偷懒的时候还真不能偷懒。最先开始移植协议栈的时候,我为了方便,把comer中所有向缓冲池申请内存的地方改成了用malloc分配,认为这样简单。但越到后来越觉得这种不规范的操作带来了很多不便——内存的分配是散乱的,没有一个统一的管理机制。另外就是信号灯控制。Comer中很多地方用了signal、wait函数做信号灯控制,我总是在需要的时候创建一个linu
2006-04-21 20:31:00 2920 1
原创 在Linux下实现comer的TCP/IP协议栈--ARP地址解析协议(下)
CHAPTER2:寻路的向导——ARP5、 arp_in.c - ARP输入过程 在讲arp_in.c前我们应该先看一下ni_in.c,这是comer中的多路分解的实现,arp_in.c就在其中被调用。在前面的《网络接口层》一文中我们看到,当packet_rx函数从pcap得到数据包后,通过调用ni_in.c将数据包传送给协议栈,ni_in.c根据数据包的不同类型进行多路分解,传送给不
2006-04-18 14:03:00 3888
原创 在Linux下实现comer的TCP/IP协议栈——ARP地址解析协议(上)
CHAPTER2:寻路的向导——ARP一、简介我们使用TCP/IP进行通信,从高层来看使用的是IP地址作为源/目的地的标示,但通信最终还是要由物理网络使用底层网络硬件提供的物理编址方案执行。我们通常使用的网络硬件就是以太网卡,其物理地址也就是网卡的MAC。ARP地址解析协议所要做的就是将物理地址和IP地址绑定,让高层协议通过使用IP地址即能和目的地产生通信。ARP的工作方式在comer的《
2006-04-18 10:17:00 3906
原创 在Linux下实现comer的TCP/IP协议栈--网络接口层
CHAPTER1:从网络接口层说起一、简介:网络接口层位于物理层之上,提供一组接口供协议栈和物理设备交互。这一层的实现费了我很大心思。起初,我认为linux下调用网卡驱动和ARM上一样,可以直接调用网卡驱动的函数,于是跟着《Linux设备驱动程序》辛辛苦苦的写了一个网卡驱动,写完才发现,不知道怎么在程序中调用。查了无数资料,又看了看linux下网络部分的源码,才知道有个dev.c文件,里面
2006-04-17 17:04:00 6630 3
原创 在Linux下实现comer的TCP/IP协议--写在前面的话
写在前面的话:学习TCP/IP的经典教材有两部,一部是Ramadas Shanmugam的《TCP/IP详解》三卷,一部就是comer的《用TCP/IP进行网际互联》三卷。我选择了后者,原因很简单,前者太厚了,绑在一块儿从二楼扔下去都可以砸死人。我人懒,太厚的书从来看不完,所以还是跟着comer学吧。 Comer《用TCP/IP进行网际互联第二卷:设计、实现与内核》中的讲解浅明易懂,但
2006-04-17 16:58:00 2950 1
原创 驳《一个假程序员的心里话 》——不要看不起研究生
今天在CSDN看了一篇文章——《一个假程序员的心里话》,本来以为是谈假程序员和真程序员的区别,谁知一看之下,满篇都在批驳master和doctor。实在是忍不住了,想要为master和doctor说两句公道话。我现在是一名在读研二学生,在成都一所电子方面还不错的学校读书,学的不是计算机专业,而是信号与信息处理。但由于课题和平时兴趣,计算机方面知识还是有点,不过在那篇文章作者眼里,我连假程序员都不是
2005-12-25 22:12:00 2581 12
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人