我正在研究可以集成开放源代码和专有源代码的 Linux 驱动程序。我对驱动程序研究领域非常陌生,不知道如何查找此类驱动程序的完整列表。任何帮助表示赞赏。谢谢
答案1
包含开源代码和专有代码的驱动程序是专有驱动程序。请注意,许多开源许可证(包括 GPL)不允许这样做。
也就是说,一些 OSS 许可证(例如 MIT 和 BSD 许可证)确实允许在专有环境中重用,因此您实际上需要一份使用(适当许可的)OSS 代码的专有驱动程序列表。
由于以下几个简单的原因,没有此类内容的“完整列表”:
它们不会成为官方 Linux 内核源代码树的一部分,其中包含所有常用的开源驱动程序,因为它们不是开源的。
它们的使用可能会受到专有线路的限制,因此它们并不是真正公开的。例如,如果制造商提供带有自己专有驱动程序的基于 Linux 内核的设备,则这些驱动程序可能不会被许可用于超出该上下文的任何类型的下载或使用。
可下载和一般使用的驱动程序可能会受到其分发的限制(例如,仅来自官方来源),因此可能没有针对此类内容的中央存储库。您可能会找到部分列表(根据 Braiam 的评论),尽管这些可能无法区分包含 OSS 代码的专有驱动程序和不包含 OSS 代码的专有驱动程序;您很可能必须单独调查每一项。
请注意,所有 Linux 驱动程序都需要使用内核 API/ABI,但这并不包含在许可证条款中,因此并不真正等于“包括 OSS 代码”。