linux程序体会实践
文章平均质量分 56
wsclovezlq
这个作者很懒,什么都没留下…
展开
-
第一天看unix环境高级编程
<br /> 今天是我第一天看这本书,要说借了好几天了,感觉收获很多。 英文第二版,讲的很好,开始从整体介绍unix系统,分成明确的几块,和讲操作系统的感觉差不多,而且里面的例子很专业,值得学习,虽然今天只是看了ls的实现,发现我的程序就是小孩子的过家家游戏。。。希望有一天可以真的会写程序。原创 2010-10-15 23:31:00 · 468 阅读 · 0 评论 -
udp通讯程序多线程
<br /><br />客户端<br />#include<sys/stat.h><br />#include<fcntl.h><br />#include<unistd.h><br />#include<sys/types.h><br />#include<sys/socket.h><br />#include<netinet/in.h><br />#include<arpa/inet.h><br />#include <stdlib.h><br />#include <string.h><br />#i原创 2010-10-18 21:14:00 · 1054 阅读 · 1 评论 -
Linux内核napi机制分析(转)
简介:NAPI 是 Linux 上采用的一种提高网络处理效率的技术,它的核心概念就是不采用中断的方式读取数据,而代之以首先采用中断唤醒数据接收的服务程序,然后 POLL 的方法来轮询数据。随着网络的接收速度的增加,NIC 触发的中断能做到不断减少,目前 NAPI 技术已经在网卡驱动层和网络层得到了广泛的应用,驱动层次上已经有 E1000 系列网卡,RTL8139 系列网卡,3c50X 系列等主流的网络适配器都采用了这个技术,而在网络层次上,NAPI 技术已经完全被应用到了著名的 netif_rx 函数中间,原创 2010-11-04 11:10:00 · 1159 阅读 · 0 评论 -
napi学习001
<br /> <br />传统的中断IO方法。<br />网卡接收数据包,将数据包DMA到环形数据缓冲区后,触发中断,然后执行中断处理程序。中断处理程序,将数据包推向上层协议栈。传统的IO方法是在中断处理函数中读取数据包。<br /> <br />NAPI 是 Linux 上采用的一种提高网络处理效率的技术。<br />采用中断唤醒数据接收的服务程序,然后 POLL 的方法来轮询数据。虽然,读取数据不在中断中,并不意味着没有中断了。中断还是有的,并且还会触发中断处理函数。从 POLL 方法的本质意义上来说就原创 2010-11-04 16:34:00 · 380 阅读 · 0 评论 -
第十周总结
<br />第十周学习报告学习要点<br /> Poll函数,napi技术,interrupt coalescing机制正文Poll函数<br />poll提供的功能与select类似,不过在处理流设备时,它能够提供额外的信息。<br />第一个参数是指向一个结构数组第一个元素的指针。每个数组元素都是一个pollfd结构,用于指定测试某个给定描述字fd的条件。<br />struct pollfd{<br />intfd; //descriptor to check<b原创 2010-11-06 23:47:00 · 527 阅读 · 0 评论 -
Xen 4.0(转)
<br /> <br />Xen4.0新特性<br />Citrix于2010年4月7号发布Xen 4.0,其新特性包括了对可扩展性、性能、可靠性和可用性的提升,下面我们将逐一介绍每个方面。可扩展性:<br />在Xen3.x时代,对宿主机最大支持CPU数量为64,如图2所示,该图显示了两个可在64颗CPU中前16颗CPU上调度的虚拟机,图中的CPU Affinity(亲核性,指系统运行在哪个CPU上)指明这点.<br />而在Xen4.0中提供了更强大的可扩展性,Xen4.0支持安装1TB内存以及128颗原创 2010-11-07 18:39:00 · 1312 阅读 · 0 评论 -
xen内核的升级
<br />xen4.0.1经过测试可以升级的是2.6.34.1版本,34.6会有很多的错误,具体的原因不知道原创 2010-11-09 21:46:00 · 376 阅读 · 0 评论 -
完成了xen4.0.1 kernel 2.6.34.7
<br />经过两天的学习终于ok了<br />首先安装xen4.0.1,很多地方可以下载到包,然后make make install<br />下载kernel kernel 2.6.34.7,我在学校的源上下载,速度非常快,找xen-patch-2.6.34.6的patch<br />把包打到内核中,make menuconfig勾选driver device中的xen的几个选项,这里如果是要用xen4.0.1的话,要选择xen的版本,如果版本过低,make会不过,错误是kernel的大小超过最大的si原创 2010-11-10 15:47:00 · 556 阅读 · 0 评论 -
putty linux代码分析
将plink与pscp移植为普通函数问题:在plink与pscp中同时包含了相同的头文件,并且分别实现了头文件中的函数,这些函数用于本身的调用。这些函数中有重复的定义。比如在putty.h中有a();的声明,在plink与pscp中同时实现,而且实现的内容是不同的。修改方案:1.原创 2011-07-28 16:24:34 · 3169 阅读 · 0 评论