最近在Habré上发表了两篇有关新Linux内核的文章。其中一人说,AMD Radeon驱动组成了Linux内核5.9,另一家上市的新特性和功能的10.5%。最近,也有消息称该内核支持市场上99%的流行PCI硬件。
当然,“受欢迎”并不意味着“完全支持一切”,因此,考虑到设备的多样性,总体数字可能远远低于99%。您学习过PCI支持吗?
如果该项目的目标是研究内核支持的“硬件”总量,则可以简单地采用比率-“受支持的设备/设备总数”。但是这里有两个并发症:
- 要获得这两个数字几乎是不可能的,如果可能的话,如此大规模的研究将需要大量的资源。
- 并非所有设备都同样受欢迎。
第二点,一切都很简单:有些通用设备需要支持,因为它们被大量人使用。而且只有少数用户需要的稀有系统。当然,您也不能忽略他们的需求,但是这个世界是不公平的-开发人员通常会先确定优先级问题,然后再处理次要问题。
研究Linux 5.9内核对PCI硬件支持的项目的作者走了一条简单的道路。他们总结了受支持设备的所有实例,除以受支持和不受支持的设备总数。
使用以下公式进行计算:
其中Sn是设备支持状态(1-支持,0-不支持),Tn是设备总数。
为了找出哪些设备普及,开发了一种用于记录PCI设备总数的系统。
您可以在特殊存储库DevicePopulation中查看有关填充的信息。可以从LKDDb项目获得新Linux内核的支持状态。
如果要为项目提供信息支持,则可以使用hw-probe工具发送有关设备的数据。
sudo -E hw-probe -all -upload
结果如下:
PCI等级 | 设备 | 支持 |
---|---|---|
读卡器 | 9433 | 100% |
通讯控制器 | 39144 | 98.23% |
DMA控制器 | 115 | 99.13% |
DVD卡 | 85 | 100% |
加密控制器 | 8169 | 88.64% |
火线控制器 | 7978 | 99.97% |
快闪记忆体 | 469 | 37.95% |
显示卡 | 89190 | 98.06% |
输入设备控制器 | 262 | 100% |
IPMI SMIC接口 | 155 | 100% |
调制解调器 | 307 | 89.58% |
多媒体控制器 | 2194 | 88.56% |
网络/以太网 | 55774 | 99.92% |
净/其他 | 10929 | 99.82% |
网络/无线 | 43499 | 99.80% |
非必要工具... | 5103 | 99.98% |
SD主机控制器 | 10370 | 100% |
串行总线控制器 | 12251 | 99.80% |
串口控制器 | 4901 | 99.84% |
信号处理控制器 | 37989 | 97.22% |
中巴 | 62763 | 99.92% |
声音 | 103406 | 99.95% |
电视卡 | 902 | 100% |
USB控制器 | 215098 | 100% |
您是否同意计算方法和结果?在评论中分享您的意见。