Linux内核的新版本“2.6.0”于12月18日亮相,我们来看看其有些什么最新特性。
Linux内核的新版本“2.6.0”可以从Kernel.org站点下载。这是大约时隔3年后对2.4版进行的主要版本升级。最大的特点是提高了可扩展性。在原有的配备kernel2.4的Linux中,无法在配备8CPU以上大型服务器中发挥性能。2.6通过反复进行细致的改进,可以在8CPU以上的服务器中发挥性能。
在面向台式电脑的发行套件中,已经开始使用2.6内核。这就是Turbolinux于2003年10月发售的“Turbolinux 10 Desktop”。配备了2.6的测试版。计划通过升级工具支持2.6正式版。在面向服务器的发行套件中,美国红帽计划于2005年初以后供货的“Red Hat Enterprise Linux”的新一代产品将以2.6为基础设计。
kernel2.6为提高可扩展性,进行了各种改进。
在CPU相关方面,作为向各CPU分配软件进程的进程调度(Process Scheduler)采用了“O(1)”算法。在原有的调度算法中,当存在多个可执行的进程时,为了全部扫描并检索优先度高的进程,往往会产生溢出(Overhead)现象。在O(1)算法中,由于按优先度高低注册进程,因此不会发生检索的溢出情况。另外,标准支持“Non-Uniform Memory Architecture(NUMA)”。而且修改了多处理器的排他控制结构,尽量减少了进程等待时间。
同时改进了存储器等的I/O(输入输出)控制。在2.4中进行I/O处理时,以小的缓冲单位缓冲数据。因此,为了缓冲,必须将内存的管理单位——页单位的数据按缓冲单位进行分割,并在取出数据时重新统一为页单位。在2.6中,由于能够以页为单位缓冲数据,因此无需进行数据分割及重新统一等的无谓处理。
旨在促进企业领域Linux普及的NPO(非营利团体)——美国Open Source Development Labs(OSDL)公开了在1~8CPU的多处理器环境中比较kernel2.4与kernel2.6的基准测试结果。据测试结果,在2.4中,4CPU以下CPU数越大性能越高,但在8CPU中性能比4CPU要低。而在2.6中,8CPU以下CPU数越大性能越高。
除可扩展性外,还有其它改进之处。作为面向台式电脑的功能,标准采用了ACPI,并正式支持USB 2.0。另外,还标准配备了IPv6的协议堆栈。
|