- 博客(7)
- 资源 (5)
- 收藏
- 关注
原创 Chapter 4. Interfaces: Ethernet
对于典型的ethernet驱动流程图如下接收流程以太包接收到之后,触发硬件中断,硬件中断调用lereadleread函数调用m_devget将不带ETH头的报文存入一个mbuf链,并设置mbuf的flag标志,指示是组播还是广播包,之后调用ether_inpu
2011-08-17 22:02:32 442
原创 Chapter 3. Interface Layer
ifnet结构包含如下信息接口名称,接口全局唯一编号,接口标志等信息硬件通用属性,如硬件类型,MTU,链路地址长度,链路头长度等信息统计信息操作函数指针发送队列结构所有的网络接口,均被链接到了一个链表中,链表头是ifnet每个网络接口,都可以对应多个地址,这些地址包括
2011-08-17 21:50:37 444
原创 Chapter 2. Mbufs: Memory Buffers
1. MBUF有下面四种形态 2. 用下面的方法可以巧妙的解决函数递归调用问题#define MGET(m, how, type) { \ MALLOC((m), struct mbuf *, MSIZE, mbtypes[type], (how));
2011-08-15 21:20:18 512
原创 Chapter 1. Introduction
splimp 用于保护网络层和接口(eth device)层共享的数据,调用该接口后,所有网络接口的中断均被屏蔽splnet 用于保护网络层和插口(socket)层的共享数据,调用该接口后,所有的调用网络层接口的调用均被阻止
2011-08-14 19:15:21 280
原创 windows下printf重定向的实现
(原创,欢迎转载,请注明出处)最近我们有一个需求,要求将windows控制台程序中通过printf打印的字符串信息全部重定向到另一个远程控制终端上去;并且也将标准输入也重定向到远程终端。重定向信息的传输用TCP传输。解决这个问题,其实就是要求能够截获printf的字符数据,使其不在控制台上打印,而是通过socket传到远程终端后打印。并且将标准输入重定向到一个socket上,从上面阻塞收数据作
2007-12-13 17:43:00 4339
原创 Linux0.11 引导程序Boot学习
1 引导启动程序Boot学习1.1 bootsect.s 程序学习该程序驻留在启动盘的第一个扇区中,系统上电后会由bios自动加载到0x7c00处,之后它会将自己转移到0x90000处继续执行,之所以移动是为以后的system腾出位置。 该程序主要完成了三项工作: 加载setup模块的2K代码到0x90200处。 加载sy
2007-10-12 18:06:00 619
原创 DPL,RPL,CPL 资料总结
DPL,RPL,CPL 之间的联系和区别是什么?RPL和CPL是必须相同吗?如果相同,为什么要釆用两个而不改用一个呢?简单解释:-------------------------------------------------------------------------------- CPL是当前进程的权限级别(Current Privilege Level),是当前正在执
2007-07-18 21:53:00 993
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人