免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 795 | 回复: 0
打印 上一主题 下一主题

Linux-2.6.26的改变选谈 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-27 23:12 |只看该作者 |倒序浏览

                Linux 2.6.26已经发布了一段时间了,可是一直没有总结其所带来的改变,今天得闲,再罗唆一二。
互斥锁(mutex)的出现使得信号灯(semaphore)同步原语变得不太需要关注性能,这种情况下,代码的可维护性、调试性和扩展性变得更加重要。最终,用C语言重现实现的信号灯取代了以前复杂的架构相关的实现版本,进驻了官方内核。当然,新的C语言版的性能还是不能和旧版本同日而语,可是这并不是什么问题,因为Linus明显鼓励你用更加简单的互斥锁,尽量避免用沉重复杂的信号灯。虽然,目前内核中直接用信号灯的地方已经不多,但是这个改变对内核性能的影响还是不可忽略的,主要体现在基于信号灯的大内核锁(BKL:Big Kernel Lock),Linus认为是历史遗留的大内核锁影响了性能,而不是信号灯,所以他提倡用去除影响内核扩展性的大内核锁的方式来消除这次改变的影响。只是大内核锁由来已久,去除又岂是那么简单的事情,否则它早就被移出内核了,还好这已经得到了主力队员的重视,相信在几个开发周期内大内核锁也许就能被移出,我们等待着这个时间的到来。这也意味着2.6.26之后的几个版本的内核需要在移植之前慎重测试,防止因为它影响了系统的性能。
针对SYN泛洪(Flood)拒绝服务攻击(Deny of Service: DoS)的syncookies从这个内核版本开始已经可以支持TCP选项和IPV6了,其中对TCP选项的支持是透过时间戳实现的。Linux默认的TCP拥塞控制算法CUBIC更新到了2.2版本。
这个内核版本最大的改变还是内置了源码级的调试工具KGDB,本想写篇文章探索其配置和应用,后来发现已经有
jserv

hellwolf
两位出手,也就偷懒了。另外,hellwolf还提到了可以直接
用qemu调试内核
。如果以上文档您还觉得不够权威,那么可以参考
KGDB的文档

参考链接:

  •    1.  http://kernelnewbies.org/Linux_2_6_26  
                   
                   

    本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/5251/showart_1094051.html
  • 您需要登录后才可以回帖 登录 | 注册

    本版积分规则 发表回复

      

    北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
    未成年举报专区
    中国互联网协会会员  联系我们:huangweiwei@itpub.net
    感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

    清除 Cookies - ChinaUnix - Archiver - WAP - TOP