做内核模块编程的最佳linux发行版

做内核模块编程的最佳linux发行版,linux,kernel-module,linux-from-scratch,linux-distro,Linux,Kernel Module,Linux From Scratch,Linux Distro,我想做内核模块编程。但是,所有来源都告诉我们,linux发行版修补了原始内核,模块代码可能无法在其上运行。如果这是真的,我该怎么办?我试着用ubuntu制作lfs,但几乎每一步都会出错。我在某处看到,arch、gentoo、Ubuntu服务器(在安装过程中没有选择任何软件包)、slackware、susestudio等都是普通发行版。那么,我可以使用它们进行模块编程吗 请记住,我需要在发行版中使用GUI 可以跟踪吗? PS:我有一个intel core i3处理器,将在vmware workst

我想做内核模块编程。但是,所有来源都告诉我们,linux发行版修补了原始内核,模块代码可能无法在其上运行。如果这是真的,我该怎么办?我试着用ubuntu制作lfs,但几乎每一步都会出错。我在某处看到,arch、gentoo、Ubuntu服务器(在安装过程中没有选择任何软件包)、slackware、susestudio等都是普通发行版。那么,我可以使用它们进行模块编程吗

请记住,我需要在发行版中使用GUI

可以跟踪吗?

PS:我有一个intel core i3处理器,将在vmware workstation上运行该发行版。

如果您想对内核模块进行编程,那么选择哪个发行版并不重要。您需要能够从源代码重新编译内核,并自己安装一个新内核。即使只是一个内核模块,您也希望能够编译最新的内核并根据它进行开发,否则您将无法将模块纳入主线

如果不发布模块,另一种选择是针对特定的内核版本进行开发。在这种情况下,应该根据模块的目标而不是开发环境来选择发行版

因此,根据您的喜好选择一个发行版: 1) 桌面-(GNOME、KDE、其他) 2) 易用性-(Ubuntu、Fedora等vs Arch、Gentoo) 3) 尖端vs稳定(Arch、Fedora vs Ubuntu vs Debian、Red Hat、CentOS)

然后开始学习一些关于开始内核编程的知识(从哪里获取源代码,如何编译)。然后阅读Greg Kroah Hartman关于linux设备驱动程序的优秀书籍。接口将发生变化(它是关于内核的2.6版编写的,目前正在开发3.6版)。可以在网上找到


您还需要学习如何使用git。更重要的是,如何使用git生成补丁并通过电子邮件发送,而不会弄糟它!我没有这方面的网站,但谷歌搜索一下会有所帮助。

Arch Linux修补了内核,但您可以轻松地从中安装vanilla Linux内核。它不是一个初学者发行版(您必须安装X服务器、DE等),但它功能强大,模块化编程与Linux内核没有直接关系。它与编程语言有关:Ocaml和Go-do提供模块。如果您只关心内核中的模块,那么您的标题是错误的(它不是模块化编程,而是模块化内核)。是的,请解释一下“模块化编程”的确切含义@BasileStarynkevitch@thkala...yes我指的是模块化内核,可能是重复的,这不完全正确,根据这里的说法:Ubuntu不支持主线内核,这意味着你不能仅仅访问Linus的github,分叉内核,在Ubuntu上编译和运行它,你需要一个特殊的发行版,所以我认为Ubuntu对内核开发不是那么好,你想回到主线上来