Linux内核模块(LKM,Loadable Kernel Module)中,使用MODULE_LICENSE()宏来指定模块的许可证类型。以下是一些常见的许可证类型及其特点:
常见的许可证类型
- GPL(GNU General Public License):最常用的许可证,要求任何衍生作品都必须按照相同的GPL条款分发,以确保修改保持开源。
- Proprietary:专有许可证,用于闭源软件,内核会限制其使用某些GPL-only的符号。
- Dual BSD/GPL:双许可证,既可以按BSD许可,也可以按GPL许可。
- Dual MPL/GPL:双许可证,既可以按MPL许可,也可以按GPL许可。
- MIT许可证:几乎无限制地允许用户使用、修改和分发软件,要求极少。
- BSD许可证:允许用户几乎不受限制地使用软件,但要求与MIT略有不同。
- Apache许可证:允许用户在某些限制条件下使用、修改和分发软件。