设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客

知识回顾:Linux 2.6内核的精彩世界

2007-9-3 14:08| 发布者: joejoe0332| 查看: 11270| 评论: 3

  大规模 - 非一致存储访问体系结构(NUMA)和大型机

  除了以上所提及的新硬件类型的支持之外,新的Linux内核发行版也包含了对大型服务器(一些运行i386处理器,也有些运行其他处理器)更 多的支持。对Linux来说,这样的特性是新近加入的,还有许多优化工作需要完成。这是一个Linux发展相当迅速的领域,我们能够预计在不久的将来, Linux将成为此领域的有力竞争者。

  在此方面最大的改变就是Linux对NUMA服务器的最新支持。NUMA(非一致存储访问)在多进程世界里是超越SMP以及提升多处理器系统 效率的一个进步。SMP系统的设计上有着许多和对应单处理器系统类似的局限性。其中最大的设计局限之一就是系统中只有唯一的一块内存区,所有的处理器对它 都平等地对它进行访问。在多处理器系统里,这样会在同一条内存总线上的多处理器之间引起相当高的竞争,导致性能瓶颈。NUMA服务器,通过引入了以下的理 念解决了这个问题:对于某个特定的处理器,一些内存比其他一些的更为接近(close)。可以这样简单地设想(同时技术上也不会有严重错误),你的系统有 许多包含了处理器、内存以及其他元件(比如I/O扩展卡)。系统中有很多这样的卡,它们可以相互通讯;显而易见,相对其他卡上的内存,每块卡上的处理器能 更快的访问本地内存(自己的卡上内存)。从许多角度上看,NUMA体系结构就是一个紧密耦合的集群特例。

  为了给NUMA主机提供良好的支持,Linux十分必要在许多方面进行调整,以使新模型更具效率。首先,建立了一个内部拓扑API,以使内核 知道处理器和内存以及其他IO设备间的相互关系。有了内部拓扑API的支持,Linux的进程调度器可以理解这些关系,并且会尝试优化任务以达到最佳的本 地资源使用。此外,许多NUMA主机在各个节点(nodes)的线性内存区域之间存在空洞(holes)。新内核已经能够合理的处理这种不连续情况。内核 还有许多其他使得Linux可以支持高端(high-end)主机的变化,这也是内核发展的一个明确方向。再过一年,我们可以期待Linux在高端机型上 效率以及其他方面的进步。

  深入Linux

  除了横向支持越来越多的硬件,Linux 2.6还在已支持的平台上根据硬件的性能提升进行了改进。这些针对特定CPU的优化包括:Transmeta的Crusoe系列,Intel's Pentium 4 Xeon、Pentium 3-M、Pentium 4-M 和AMD移动处理器。新版本Linux还解决了某些Athlon处理器自身的bug导致的问题。Linux 2.6还解决了在某些多于16个处理器的系统启动时偶尔会挂起的问题,尽管这个bug不会影响大多数用户的正常使用。

  超线程

  在Linux 2.6中不算新鲜,内核在2.4.17发布中就已经开始包含对Intel P4处理器的超线程(Hyperthreading)的支持(在这里提及它,一是因为它并没有包含在2.4最初的发布中,二是自那以后内核又有了很大的改 变)。超线程使得单个的处理器可以伪装成操作系统看来二个或更多的多个处理器。最令人激动的是,Linux是第一个把超线程特性引入市场的操作系统,尽管 早在一年前Intel就发布了兼容的处理器。有传闻说,微软在对支持超线程的CPU按一个CPU还是按两个CPU收取授权费(license)的问题上拿 不定主意。Linux的开放模型(以及没有基于cpu的授权)使得Linux操作系统第一个支持这个新特性。显然,一个处理器就算扮作两个处理器工作,它 还是一个处理器,性能并不能因此增加很多。2.5中调度器和其他一些部分在有了新的优化,使得处理器的超线程可以真正的发挥作用。如果是在2.4下加入超 线程支持,结果就不一定了,有时性能还会下降。

酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部