开发Android内核补丁

时间:2014-09-06 11:51:13

标签: android kernel patch

我一直在阅读,可以将补丁应用到Android内核中,为其提供更多功能。

以下是一个例子:https://patchwork.kernel.org/patch/2254211/

但我的问题是,我究竟如何从头开发补丁?我对编写补丁的语言以及开发内核补丁所需的文档感到困惑。我已经在XDA开发人员那里问了这个,但似乎没有人知道这就是我在这里问的原因。

1 个答案:

答案 0 :(得分:4)

首先,您将需要要修补的内核源代码,如下所述:

https://source.android.com/source/building-kernels.html

正如您在链接中看到的,这些文件是用C语言编写的。 获得源代码后,您可以更改这些文件中的某些行以创建自己的补丁 在上面的链接中也解释了如何构建已更改的内核。 您还可以添加新文件以获得完整的新功能或功能。

要创建.patch文件,您必须执行类似

的操作
diff -Naur old_file.c changed_old_file.c > patch.txt

或者你可以使用eclipse或git这样做,如下所示:

https://docs.moodle.org/dev/How_to_create_a_patch

创建补丁并应用它们的另一个有用工具是quilt。如何使用它你可以在这里阅读:

https://wiki.debian.org/UsingQuilt

文档在包含注释的代码中完成。 根据开发人员的不同,将会有更多或更少的注释来解释代码中发生的情况。 其他文档可在以下网址找到:

https://www.kernel.org/doc/Documentation/

我认为Linux内核编码风格也用于Android内核开发。因此,您应该坚持使用内核其余部分的编码样式,以便维护者确认您的补丁。

https://www.kernel.org/doc/Documentation/CodingStyle

<强> [编辑]: 如果您想参与社区,最好订阅您最感兴趣的内核部分的邮件列表。您还可以了解需要修补的内容。 谷歌小组可能是一个讨论如何继续问题的好地方。

https://source.android.com/source/community/index.html

你也可以在这里获得android的源代码:

https://android.googlesource.com/?format=HTML

我留下了什么吗?