热门关键字:  ubuntu  分区  Fedora  linux系统进程  函数

当前位置 :| 主页>Linux教程>内核研究>

Linux内核和核心OS组件的测试与分析

来源: 作者: 时间:2007-03-21 Tag: 点击:

本文记录了 Linux 内核和其他核心 OS 组件的测试结果与分析,从库和设备驱动程序到文件系统和网络,测试范围无所不含,所有的测试都是在相当不利的条件下进行,并且经历了很长的时间。

IBM Linux Technology Center (LTC) 成立于 1999 年 8 月,想让 Linux 成功的共同梦想使其与 Linux 开发团体直接合作。它的 200 多名员工使之成为开放源代码开发者的较大团队组织之一。他们提供的代码范围包括,从补丁到结构化的内核改变,从文件系统和国际化工作到 GPL'd 驱动程序。他们还致力于追踪 IBM 内部进行的 Linux 相关开发。

LTC 尤其感兴趣的领域是 Linux 可扩展性、适用性、可靠性和系统管理 —— 所有的目的都是为了使 Linux 更适用于企业。他们为 Linux 团体所做出了诸多贡献,包括使 Linux 可以工作于 S/390 主机,将 JFS 日志文件系统移植到 Linux,等等。

LTC 的另一项核心任务是,以测试商业项目的方式在实验室条件下对 Linux 进行专业的测试。LTC 与 SGI、OSDL、Bull 和 Wipro Technologies 一道促成了 LTP Linux 测试项目(LTP)。下面是经过 LTP 套件在 Linux 内核上超长时间全面测试得到的结果。如您所猜,Linux 极好地承受了持续的压力的考验。

测试结果一瞥

下面的总结基于运行期间的测试和观察结果:

* Linux 内核和其他核心 OS 组件 —— 包括库、设备驱动程序、文件系统、网络、IPC 和内存管理 —— 运转稳定并完成了所有期望的运行期间,没有任何严重的系统故障。

* 每次运行的成功率都很高(超过 95%),只有极少数的期望中的间歇故障,而这些故障是设计用来使资源过载的测试同时执行的结果。

* Linux 系统性能在长时间的运行中没有下降。

* 在 SMP 系统上,Linux 内核正确地扩展以使用硬件资源(CPU、内存、硬盘)。

* Linux 系统可以很好地承受 CPU 持续满负荷运转(超过 99%)和极重内存压力。

* Linux 系统正确地处理了过载的情况。

测试证明了 Linux 内核和其他核心组件在 30 天、60 天、90 天内是可靠的稳定的,可以为用户提供一个长时间运行的健壮的、企业级的环境。

Linux 可靠性度量

目标

对 IBM Linux Technology Center 来说,Linux 可靠性工作的目标是,使用 LTP 测试套件对 Linux 操作系统进行超长时间的测试,重点在于 Linux 用户环境相关的工作负荷(参阅 参考资料 以深入了解 LTP)。而并不是致力于证明缺陷。

测试环境概述

本文描述的是使用 LTP 测试套件进行的 30 天与 60 天的 Linux 可靠性度量测试的测试结果和分析。测试以 SuSE Linux Enterprise Server v8 (SLES 8) 作为测试内核,以 IBM pSeries 服务器作为测试硬件。使用的是一个特别设计的 LTP 压力测试场景,在使用网络与内存管理的同时并行地运行大范围的内核组件,并在测试系统上生成高工作负荷压力。Linux 内核、TCP、NFS 和 I/O 测试组件以重工作负荷压力为目标。

测试

30 天

pSeries 30 天 LTP 压力执行结果

* 机器:p650 LPAR

* CPU:(2) Power4- 1.2 GHz

* 内核:Linux 2.4.19-ull-ppc64-SMP (SLES 8 SP 1)

* LTP 版本:20030514

* 99.00% 平均 CPU 利用率(用户:48.65%,系统:50.35%)

* 80.09% 平均内存利用率(8GB)

观测结果:

* 在 p650 LPAR 上 SLES 8 PPC64 30 天压力运转成功完成。

* 测试工具是 LTPstress。测试用例以并行和串行方式执行。

* 内核、TCP、NFS 和 I/O 测试组件都以重工作负荷压力为目标。

* 成功率:97.88%。

* 没有严重的系统故障。



相关文章:
精通initramfs构建step by step
Linux利用kexec迅速切换内核
进程上下文VS中断上下文
内核通知链 学习笔记
linux spi子系统驱动分析
menuconfig 配置选项
《Linux操作系统内核实习》之练习一
udev详解
什么叫微内核,宏内核?
Linux 信号signal处理机制
开发简单的 Linux2.6 内核模块
删除内核的perl脚本
Linux2.6内核usb gadget驱动移植
GCC hacks in the Linux kernel
iomem
kernel学习的想法
让自己的驱动支持udev
linux内核编译步骤
内核的等待队列
Linux内核wait_queue深入分析
升级和删除内核
SD卡驱动分析2
Linux Kernel VDSO本地权限提升漏洞
内核中的TCP的追踪分析-15-TCP(IPV4)的客户端与
linux 2.6内核可加载模块的编译
内核模块HelloWorld
在环回接口上发送一个数据报
ARP初始化
1分钟编译FreeBSD内核
linux设备模型之uart驱动架构分析