mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-02-25 00:50:15 +08:00
PUB:20140718 Linux Kernel Testing and Debugging 1
@bazz2
This commit is contained in:
parent
a8768c52ba
commit
c65ce24b30
@ -1,4 +1,4 @@
|
||||
Linux 内核的测试和调试
|
||||
Linux 内核的测试和调试(1)
|
||||
================================================================================
|
||||
### Linux 内核测试哲学 ###
|
||||
|
||||
@ -8,15 +8,15 @@ Linux 内核的测试和调试
|
||||
|
||||
几乎所有 Linux 内核开发者都是活跃的 Linux 用户。内核测试人员不一定非得是内核开发者,相反,用户和开发者如果对新增的代码不是很熟悉,他们的测试效果会比代码开发人员自己测试的效果要好很多。也就是说,开发者的单元自测能验证软件的功能,但并不能保证在其他代码、其他功能、其他软件、硬件环境下面运行时会出现什么问题。开发者无法预料、也没有机会和资源来测试所有环境。因此,用户在 Linux 内核开发过程中起到非常重要的角色。
|
||||
|
||||
现在我们已经了解了持续集成测试的重要性,接下来我们会详细介绍测试的知识。但在此之前,我还是向介绍一下开发的过程,以便让大家了解它是怎么工作的,以及如何把补丁打进内核主线。
|
||||
现在我们已经了解了持续集成测试的重要性,接下来我们会详细介绍测试的知识。但在此之前,我还是向你介绍一下开发的过程,以便让大家了解它是怎么工作的,以及如何把补丁打进内核主线。
|
||||
|
||||
全世界共有3000多个内核开发者为 Linux 内核贡献代码,每天都有新代码添加到内核,结果是大概2个月就能产生一个稳定版和多个扩展的稳定版。新功能的开发与已发布的稳定版集成测试流程在同时进行。
|
||||
全世界共有3000多个内核开发者为 Linux 内核贡献代码,每天都有新代码添加到内核,结果是大概2个月就能产生一个release ,包括几个稳定版和扩展稳定版。新功能的开发与已发布的稳定版集成测试流程在同时进行。
|
||||
|
||||
关于开发流程的详细描述,请参考[Greg Kroah-Hartman 的 Linux 内核开发的介绍][1]。
|
||||
|
||||
这份教程适合与初学者以及有经验的内核开发者,如果你想加入到内核开发者行列,那么它也适合你。有经验的开发人员可以跳过那些介绍基础测试和调试的章节。
|
||||
|
||||
这份教程介绍如何测试和调试 Linux 内核、工具、脚本以及在回归测试会集成测试中使用的调试机制。另外,本文还会介绍如何使用 git 把针对一个 bug 的补丁分离出来,在介绍介绍把你的补丁提交到内核的邮件列表之前需要做些什么。我将会使用 Linux PM 作为测试它调试的对象。尽管本文讨论的是 Linux 内核,但是介绍的方法适用于任何其他软件开发项目。
|
||||
这份教程介绍如何测试和调试 Linux 内核、工具、脚本以及在回归测试和集成测试中使用的调试机制。另外,本文还会介绍如何使用 git 把针对一个 bug 的补丁分离出来,再介绍把你的补丁提交到内核的邮件列表之前需要做些什么。我将会使用 Linux PM 作为测试它调试的对象。尽管本文讨论的是 Linux 内核,但是介绍的方法也适用于任何其他软件开发项目。
|
||||
|
||||
### 配置开发与测试的系统 ###
|
||||
|
||||
@ -26,7 +26,7 @@ Linux 内核的测试和调试
|
||||
|
||||
在开发和测试环境,最好要保证你的 boot 分区有足够的空间来存放内核文件。你可以为 boot 分区留下 3GB 空间,或把 boot 分区直接放到根目录下,这样 boot 分区可以使用整个磁盘的空间。
|
||||
|
||||
安装好操作系统后,确保 root 用户可用,确保你的用户可以使用 sudo 命令。你的系统也许已经安装了 build-essential,它是编译内核必备的软件包,如果没安装,运行下面的命令:
|
||||
安装好操作系统后,确保 root 用户可用,确保你的用户身份可以使用 sudo 命令。你的系统也许已经安装了 build-essential,它是编译内核必备的软件包,如果没安装,运行下面的命令:
|
||||
|
||||
sudo apt-get install build-essential
|
||||
|
||||
@ -56,7 +56,7 @@ Linux 内核的测试和调试
|
||||
|
||||
git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
|
||||
|
||||
上面的步骤将会创建一个新的目录,名为 linux-stable,然后把源码下载到里面。
|
||||
上面的步骤将会创建一个新的目录,名为 linux-stable,并把源码下载到里面。
|
||||
|
||||
你也可以直接下载压缩包并解压出源码,无需使用 git:
|
||||
|
||||
@ -66,7 +66,7 @@ Linux 内核的测试和调试
|
||||
|
||||
via: http://www.linuxjournal.com/content/linux-kernel-testing-and-debugging?page=0,0
|
||||
|
||||
译者:[bazz2](https://github.com/bazz2) 校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[bazz2](https://github.com/bazz2) 校对:[wxy](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出
|
||||
|
Loading…
Reference in New Issue
Block a user