
【Linux】
文章平均质量分 89
vinoYang
work @ Tencent. http://vinoyang.com
展开
-
多队列网卡简介以及Linux通过网卡发送数据包源码解读
首先我们看一下一个主流多队列网卡(E1000)跟多核CPU之间的关系图:非多队列:linux的网卡由结构体net_device表示,一个该结构体对应一个可以调度的数据包发送队列。数据包的实体在内核中以结构体sk_buff(skb),形如:多队列:一个网卡可以拥有多个队列接下来,看看TX引擎是如何工作的(注:对于发送和接收数据包有两个名词,分别应对TX,RX)解释:函数-dev_queue_xmit原创 2012-04-21 21:53:42 · 7529 阅读 · 2 评论 -
打造属于你自己的Mac 机器人助手
首先,我们来分析一下,都有哪些可能的服务。其实服务以其生命周期来划分,可以简单得分为:即时运行的简短服务(如报时);在系统开机状态下,常驻系统的deamon服务(内存、CPU、电池电量监控/报警灯)。 服务的大部分模式都是基于经典的"请求/应答"模式,此处也不例外。因为这里没有牵扯到mac os x系统编程,所以无法享有系统级别的一些好处(比如信号机制、系统事件等),这样也让你去实现一套自定义的协议变得困难(因为你必不可少需要利用消息机制、事件机制)。而去写一个while true done;是非常不靠谱的原创 2013-10-05 16:51:07 · 10489 阅读 · 2 评论