时间:2023-02-15来源:系统屋作者:zhijie
所谓的TSO就是TCP Segment Offload,TSO的原理说起来也不算太难,就是利用网卡实现TCP分段,从而达到缩短CPU周期的目的。本文就来介绍一下Linux系统TSO的实现原理。
TSO的原理几乎每个人都知道,事实上它是怎么实现的这个问题也不难,难的是细节。在做完了正事之后,我想把这个原理展现出来,当然可能和实际的实现有超级大的出入,不管怎样,它是一个原理框图,仔细观察,应该也能自己实现一个比我这个更好的TSO了。
这个设计是一个数字逻辑,时序电路的范畴,而这个领域十分地高大上,并不是普通的软件程序员能hold住的,像我这样的半瓶子也一样。所以我依然是按照老样子,试图直接给出一个结果,而不是要求听书的人事先做一些准备,往往在人们做这些准备工作的时候,就已经厌倦放弃了。
基础知识不难,就是一些门电路,与门,非门,比较器,译码器,触发器之类的,这些东西随便找一本计算机组成原理,都很齐全。关键是怎么组合它们,这是另一个领域的编程。此时,我想起了15年前我的高中物理老湿刘丹青在讲电路的时候说过的一句话:让电流流一下。这句话在科班人看来完全不符合电路设计的基本原则,他们可能更倾向于首先建模,然后分析,然后使用描述语言VHDL写出代码,最后再给出电路,我觉得这适合于设计本身,但是不适合于对一个门外汉讲述其精彩。对于一个门外汉来讲,他唯一所知道的就是,让电流流一下,然后冲过这个门,冲过那个管,好了,高电平变成低平了。。。
2023-02-15
Linux系统NBMA和BMA的交换方式介绍2023-02-14
Linux系统xargs命令的用法2023-02-14
Linux系统如何查看进程的线程数?在Linux系统中VLAN,三层交换和Trunk是三个容易混淆的概念。如果对这三个概念只是一知半解的,就会不可避免绕一些弯路,浪费不少时间。本文就来跟大家介绍一下Linux系统VLAN、三层交换和Trunk的区别。...
2023-02-14
Linux系统Go 语言的全称是golang,是一种编程开发语言。Go语言的特点就是开源、安全、快速等等。在Linux系统中有很广泛的应用。本文就来介绍一下Linux系统安装Go语言的方法。...
2023-02-14