diff --git "a/\347\254\254\344\270\200\351\203\250\345\210\206\342\200\224\342\200\224\345\210\235\350\257\206\345\274\200\346\272\220/\344\273\200\344\271\210\346\230\257\345\274\200\346\272\220.md" "b/\347\254\254\344\270\200\351\203\250\345\210\206\342\200\224\342\200\224\345\210\235\350\257\206\345\274\200\346\272\220/\344\273\200\344\271\210\346\230\257\345\274\200\346\272\220.md" index ed0a1e259021ace287867be554ed0955de7c4eda..cda856a310d44740619b4c03d0eae0829622f438 100644 --- "a/\347\254\254\344\270\200\351\203\250\345\210\206\342\200\224\342\200\224\345\210\235\350\257\206\345\274\200\346\272\220/\344\273\200\344\271\210\346\230\257\345\274\200\346\272\220.md" +++ "b/\347\254\254\344\270\200\351\203\250\345\210\206\342\200\224\342\200\224\345\210\235\350\257\206\345\274\200\346\272\220/\344\273\200\344\271\210\346\230\257\345\274\200\346\272\220.md" @@ -25,7 +25,35 @@ 看起来有点复杂,你现在只需要记住,开源软件就是在开放源代码许可证下发布的软件。 -开源软件不仅仅意味着公开源代码,还需要遵循开源许可证,允许任何人使用、拷贝、修改以及重新发布。 +开源软件不仅仅意味着公开源代码,还需要遵循开源软件许可证,允许任何人使用、拷贝、修改以及重新发布。 + +### 开源软件许可证 +开源软件许可证允许用户和商业公司运行,修改和共享不同的软件代码集,这些许可是创建者和用户之间的合法合同。它们暗示拥有许可证的任何人都可以在特定条件下使用该软件。 + +有超过200个这种类型的许可证。 + +以下是最受欢迎的: +- 1、MIT license (MIT) +获得MIT许可证的用户可以根据自己的喜好使用开源软件代码,而没有任何限制。 +该许可证也是GPL兼容的,这意味着用户可以修改原始代码,而不会影响原始许可证的衍生代码 + +- 2、Apache License 2.0 (Apache-2.0) +发行了Apache许可证的人可以自由运行,修改和共享软件代码。但是, +它们必须遵循Apache许可的条款,该许可具有严格的规则,尤其是在重新分发方面。因此,用户必须提供明确的声明, +以验证文件已被修改。并且,他们还需要在其原始作品中加入一些注意事项 + +- 3、3-clause BSD license (BSD-3-Clause) +拥有BSD-3-Clause许可证的开发人员还需要包括原始版权声明, +免责声明和其他一些强制性条件。该许可证与MIT非常相似。但是,主要区别在于它提供了保护软件原始创建者的条款。 + +- 4、GNU General Public License (GPL) +根据GPL编写软件代码的人必须将其作为开源发布。换句话说, +所有用户都有义务发布完整的源代码以及更改和共享整个代码的所有权利。 + +- 5、Common Development and Distribution License 1.0 (CDDL-1.0) +拥有CDDL的所有用户都可以复制和发行任何原始和衍生作品。 +但是,他们不能对合同中包含的任何商标,版权或专利进行更改。当开发人员共享源代码的修改形式时,他们必须使其在CDDL下可用。但是,如果表单不包含原始代码,则不必在CDDL下释放它。 + ### 开源硬件