📄 00000004.htm
字号:
<?xml version="1.0" encoding="gb2312"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"/><title>Re: 请教TCP/IP在uC/OS-II的实现 turbolinux </title></head><body><center><h1>BBS 水木清华站∶精华区</h1></center><a name="top"></a>发信人: wohaha (我FAINT故我在), 信区: Embedded <br />标 题: Re: 请教TCP/IP在uC/OS-II的实现 <br />发信站: BBS 水木清华站 (Sat Sep 28 13:24:38 2002), 转信 <br /> <br />哈,不知道大侠的网络芯片是什么?我用的是8019 <br /> <br />我觉得第一种肯定不好,完全抛弃了多任务和实时的概念。 <br />第二种做法是比较合适的,不一定使用标志或强行切换。利用ucos提供的任务通信机制, <br />用信号灯加全局变量,或消息队列。根据实际项目的要求安排处理TCP/IP任务的优先级, <br />高优先级任务(你认为比处理TCP/IP更重要的事情)结束后自然会开始处理。 <br /> <br />纸上谈兵,我也刚刚完成网络芯片的驱动,arp 和 icmp都直接先用TinyTCP的代码试验了 <br />一下。 <br /> <br />下面大侠准备怎么做,自己写协议站(象threewater那样),还是参考移植LwIP(我准备 <br />这样)。 <br /> <br /> <br /> <br />【 在 dross (走人了) 的大作中提到: 】 <br />∶<i> 现在已经可以创始化好network interface 这一层 </i><br />∶<i> 就是说异步中断会发生,可以判断,是收到包,冲突,缓冲区满 </i><br />∶<i> 等等事件 </i><br />∶<i> 现在我想了想似乎有两种方法来实现 </i><br />∶<i> 1.完全考中断来驱动协议栈处理 </i><br />∶<i> 发生中断后,保护现场,处理数据,后面再处理进程切换 </i><br />∶<i> 当这种方法就是说处理会占很长时间,而且会占用被中断打断等任务等堆战 </i><br />∶<i> 所有任务堆栈都必须留有余量了(当然,我只是单纯实验一下tcp/ip on ucos,我的PPC有 </i><br />∶<i> 32M ram 肯定够的),而且考虑中断重入的问题 </i><br />∶<i> 2.用单独任务,来实现 </i><br />∶<i> 中断发生后,任务切换到出力tcp/ip的任务,由这个任务来处理,自己专有堆栈 </i><br />∶<i> ................... </i><br /> <br />-- <br />--------------------------------------------------------------- <br />如果你想对社会上层炫耀自己,那就打消这个念头,他们照样看不起你 <br />如果你想对社会底层炫耀自己,也请打消这个念头,他们只会忌妒你
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -