不同的发行版(但相同的内核版本)具有相同的硬件支持吗


15

据我所知,设备驱动程序位于Linux内核中。例如,假设GNU / Linux发行版A与GNU / Linux发行版B具有相同的内核版本。这是否意味着它们具有相同的硬件支持?

Answers:


16

最简洁的答案是不。

可以在编译时配置对相同内核版本的驱动程序支持,并且还允许模块加载。因此,发行版中支持的实际设备取决于设备驱动程序中包含的已编译文件,已编译的设备可加载模块以及实际安装的模块。

发行版本身可能还没有包含在内核中的设备。我最近没有遇到问题,但是当我在家中使用Linux时,我选择了SuSE,尽管它们的内核版本与RedHat相同或相似,但SuSE包括ISDN驱动程序和软件包“即开即用”(即1998年)。


+发行版可能包含或可能不包含的非免费模块。
Braiam 2014年

8

有些。

尽管其他人在说(不同发行版在构建内核方面有所不同)在技术上是正确的,但应注意的是,由于Linux内核支持可加载模块,因此大多数发行版都对所有可能的硬件都提供了支持,因为它们也可能会支持-之所以有效,是因为驱动程序是作为模块构建的,因此将内核加载到内存中时不会产生任何费用。唯一的花费就是硬盘空间,这是充足的。

主要区别(同样已经提到过)将归因于每个分发在处理诸如固件Blob之类的非自由软件的方式上存在不同的策略。


2
“唯一的花费就是硬盘空间,这是充足的。” 对不起,但这是短视的。您似乎在假设现代桌面环境,但是还有更多的用例,其中存储空间非常宝贵。
与莫妮卡(Monica)进行的轻度比赛

@LightnessRacesinOrbit:公平点。我们中有些人倾向于忽略或忘记嵌入式系统之类的东西。大约一个月前,我用Python编写了一个简单的telnet程序,并在旧的ADSL调制解调器中玩得很开心。仅有6MB的存储空间,您可以容纳多少Linux系统,这真是令人惊讶。:)
PM 2Ring

@ PM2Ring:在其中的一个上,您将不会获得很多可装载模块;)
与Monica进行的Lightness

1
还要注意,与将所有内容制作为模块相反,内置驱动程序可能会提高速度,它可以减少内存碎片并通过链接程序更好地优化缓存。

4

没有为什么 :

  • 从源代码构建内核时,每个发行版在选择启用哪些内核功能时都会做出不同的选择。我不希望专注于服务器硬件的企业发行版能够为多种声卡提供很多支持。

  • 即使对于内核中包含的开源Linux驱动程序,某些驱动程序仍取决于供应商提供的(封闭源)固件。关于不同的分配,不同的分配有不同的政策。对于某些示例,请检查例如Debian firmware-non-free软件包。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.