Linux内核模块:许可、库模拟与模块堆叠
1. 内核模块许可
Linux内核代码基于GNU GPL v2许可,对于大多数人来说,这种许可方式将保持不变。若直接使用内核代码或向主线内核贡献代码,必须采用与Linux内核相同的GPL-2.0许可。对于内核模块,情况相对灵活,但为了获得内核社区的帮助,建议使用GPL-2.0许可,当然双许可也是可行且可接受的。
许可通过 MODULE_LICENSE() 宏指定,以下是 include/linux/module.h 内核头文件中可接受的许可标识符:
| 许可标识符 | 说明 |
| — | — |
| “GPL” | GNU Public License v2或更高版本 |
| “GPL v2” | GNU Public License v2 |
| “GPL and additional rights” | GNU Public License v2权利及更多 |
| “Dual BSD/GPL” | GNU Public License v2或BSD许可选择 |
| “Dual MIT/GPL” | GNU Public License v2或MIT许可选择 |
| “Dual MPL/GPL” | GNU Public License v2或Mozilla许可选择 |
| “Proprietary” | 非免费产品 |
代码示例:
// include/linux/module.h
/*
* The follo
超级会员免费看
订阅专栏 解锁全文

87

被折叠的 条评论
为什么被折叠?



