首页 > 其他分享 >开源协议 学习

开源协议 学习

时间:2023-07-08 23:11:05浏览次数:44  
标签:OHL 协议 CERN GPL 硬件 学习 开源

关于开源许可协议

现今存在的开源协议很多,而经过 Open Source Initiative (OSI) 组织通过批准的开源协议目前有 80 多种( http://www.opensource.org/licenses/alphabetical )。

本文我们不再阐述 BSD,GPL, LGPL,MIT 等主流协议,而是和大家分享交流几个非主流的开源协议。

 

1.PublicDomain

Public Domain 协议可以说是最符合多数人理解的“开源”了,简单说就是作品到我手里,我想怎样就怎样。作者将自己的作品以 Public Domain 协议发布后,其他任何用户,可以以任何目的,商业或非商业性的方式,以任何方式,复制,修改,发布,使用,编译,销售或分发该作品。 Public Domain 对用户没有任何限制,用户使用更自由。

 

Publi Domain 案例:

SQLite :一款嵌入式、轻量级的 SQL 数据库 ;

Qmail :一款流行的互联网上的 MTA;

Djbdns :一款流行的互联网上的 DNS 服务器软件 ;

zentaophp :一款简单高效的 PHP 开发框架;

 

2、GPL

我们很熟悉的Linux就是采用了GPLGPL协议BSD, Apache Licence等鼓励代码重用的许可很不一样。GPL的出发点是代码的开源/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后和衍生的代 码做为闭源商业软件发布和销售。这也就是为什么我们能用免费的各种linux,包括商业公司的linux和linux上各种各样的由个人,组织,以及商 业软件公司开发的免费软件了。 GPL协议的主要内容是只要在一个软件中使用(”使用”指类库引用,修改后的代码或者衍生代码)GPL 协议的产品,则该软件产品必须也采用GPL协议,既必须也是开源和免费。这就是所谓的”传染性”。GPL协议的产品作为一个单独的产品使用没有任何问题, 还可以享受免费的优势。 由于GPL严格要求使用了GPL类库的软件产品必须使用GPL协议,对于使用GPL协议的开源代码,商业软件或者对代码有保密要求的部门就不适合集成/采用作为类库和二次开发的基础。 其它细节如再发布的时候需要伴随GPL协议等和BSD/Apache等类似。    

3、TAPR Open Hardware License

    这是TAPR开放硬件许可证,它与GNU通用公共许可证一样,OHL旨在保证你分享和创造的自由。它禁止任何人接受OHL规定的拒绝任何其他被许可人的相同权利的权利复制、修改和分发文档,以及制作、使用和根据文件分发产品。它又与GPL不同,OHL主要不是版权许可。

4、CERN Open Hardware License 

    这是CERN开放硬件许可证,CERN方面称OHL的诞生源自于其想公开分享硬件设计的愿望。他们认为GPL、MIT以及Apache 2.0之类的开源许可证并不能完全满足其想要分享硬件设计的需求。

    在硬件方面,与商业公司合作是必要的,因为需要有人来制造它、组装测试并卖出。公司不喜欢法律风险,所以需要一个许可证来明确条件是什么。

    CERN开放式硬件许可证2.0版于2020年正式发布,以促进硬件设计者之间的合作;并提供一个法律工具,支持自由使用、研究、修改、分享和分发硬件设计和基于这些设计的产品。该许可证版本最终获得了三种变体包括CERN-OHL-P(permissive);以及两个互惠许可证:CERN-OHL-W(weakly reciprocal)和CERN-OHL-S(strongly reciprocal)。

                       

标签:OHL,协议,CERN,GPL,硬件,学习,开源
From: https://www.cnblogs.com/bdxily/p/17538069.html

相关文章

  • jQuery 学习列表
    jQuery  学习列表 1、EventsPageLoad$.ready(fn() )SpecifyafunctiontoexecutewhentheDOMisfullyloaded. 2、SelectorsBasics#idSelectsasingleelementwiththegivenidattribute.eleme......
  • c++模板相关学习--泛型编程
     类模板基础#define_CRT_SECURE_NO_WARNINGS#include<iostream>usingnamespacestd;#include<string>template<classNAMETYPE,classAGETYPE=int>//类模板中可以有默认参数classPerson{public:Person(NAMETYPEname,AGETYPEage){......
  • DBS学习笔记(三):RDS 备份
    RDS备份RDS支持自动备份实时捕获事务日志默认情况下启用,保留期为7天(0-35天保留期,0=禁用自动备份)您可以提供备份窗口时间和备份保留天数第一个备份是完整备份,后续备份是增量备份数据存储在S3存储桶中(由RDS服务拥有和管理,您不会在S3控制台中看到它们)建议使用Multi-AZ......
  • Pollard-Rho 分解算法学习笔记
    Pollard-Rho分解算法Pollard-Rho算法是一种用于快速找到\(n\)的一个非平凡约数的方法。生日悖论在不少于\(23\)个人中至少有两人生日相同的概率已经大于\(50\%\)。更一般的形式,随机选取在\(\left[1,N\right]\)范围内的整数,期望到第\(O(\sqrt{N})\)个出现重复。用下面的方......
  • 博弈论之SG函数 学习笔记
    在许多地方曾经行过这样一个小游戏,摆出三堆硬币。分别包含3枚、5枚、7枚。两人轮流行动每次可以任选一堆,从中取走任意多枚硬币,可把一堆取完,但不能不取。取走最后一枚硬币者获得胜利。这类游戏可以推广为更加一般的形式:给定\(n\)堆物品,第\(i\)堆物品有\(A_i\)个。两名玩......
  • OpenCV计算机视觉学习(14)——浅谈常见图像后缀(png, jpg, bmp)的区别(opencv读取语义分割m
    如果需要处理的原图及代码,请移步小编的GitHub地址传送门:请点击我如果点击有误:https://github.com/LeBron-Jian/ComputerVisionPractice 本来不想碎碎念,但是我已经在图像后缀上栽倒两次了。而且因为无意犯错,根本找不到问题。不论是在深度学习的语义分割中,还是在图......
  • Java学习
    JDBC核心api使用步骤:1注册驱动,依赖的jar包,进行安装2.建立连接connection3.创建发送SQL语句对象4.statement对象(小汽车),发送SQL语句到数据库并且返回获取结果5.解析结果集6.销毁(释放)资源:释放connection 释放statement 释放resultset......
  • Meta 正式开源音乐生成模型 MusicGen
    导读Meta近日在Github上开源了其音乐生成模型MusicGen。据介绍,MusicGen主要用于音乐生成,它可以将文本和已有的旋律转化为完整乐曲。该模型基于谷歌2017年推出的Transformer模型。研发团队表示:“我们使用了20000小时的授权音乐来对训练该模型,并采用Meta的EnC......
  • RPA开发者要失业?用ChatGPT写RPA脚本?-RPA学习天地
     随着人工智能技术的不断发展,AI已经开始在多个领域发挥着越来越重要的作用。从文案生成到图片设计,从代码审核到代码生成,AI已经开始在各种任务中取代人类的工作。即使是技术壁垒比较高的程序员,也已经开始将代码审查和生成的任务交给AI来完成。 在RPA开发领域中,通过RPA拖拉......
  • BugKu:文件包含+php伪协议
     这道题一进去发现一个超连接点击后发现跳转到了如下页面url如下/index.php?file=show.php,觉得这道题应该是一个php伪协议的应用1php://filterphp://filter是一种元封装器,设计用于数据流打开时的筛选过滤应用。这对于一体式(all-in-one)的文件函数非常有用,类似readfile()......