OSI 报告:从历史角度看 DOSP 做法
Open Source Initiative (OSI) 于日前发布了一份名为“Delayed Open Source Publication: A Survey of Historical and Current Practices”的新报告,深入研究了 DOSP 的历史、模式以及发展趋势。
延迟开源发布 (DOSP) 是是首先在专有许可证下分发或公开部署软件,然后以开源许可证有计划地发布该软件源代码的做法;Business Source License (BSL) 就是一种广为人知的 DOSP 许可。
在整个开源软件历史中,软件生产商都一直在实践 DOSP;报告收集了一些示例,并对其进行分类以进行分析。
最早的 DOSP 实例之一是 1998 年左右根据"Aladdin Free Public License"发布的 Aladdin GhostScript,后来过渡到同时采用专有许可和 GPL 的发布模型。KDE 的 Qt 库也是一个鲜明的示例,它将 DOSP 作为防止潜在开发中止的一种保障措施。Qt 的许可历史很复杂,如今其可以在商业和开源 GPL 2.0、GPL 3.0 和 LGPL 3.0 许可下使用。
研究人员发现 DOSP 大致有 3 种类型:
- Unconditional scheduled relicensing。这种直接的方法涉及在过渡到开源许可之前预先定义的时间延迟。
- Event-driven relicensing。在这种情况下,开源发布与特定事件相关联,比如发布新的专有版本,促使其前身开源。虽然这种方式曾经很常见,但现在已经很少使用了。
- Conditional relicensing。这种类型取决于某些条件,例如在转向开源之前获得资金或找到合适的非营利组织。但这个承诺可能会存在不会兑现的风险。
与 DOSP 相关的一个变种是 "visible source"或 "source available"。在这些模型中,源代码通常是可用的,但没有 Open Source Definition (OSD) 所保证的自由。近期比较著名的例子就是 Meta 的 AI 大语言模型 Llama 2 Community License,其代码是可用的,但商业使用受到限制。
OSI 研究人员发现,在 DOSP 早期,DOSP"通常是为了垄断直接的商业收入:许可证将授予开源所需的大部分权限,但关键是不允许商业使用软件"。"这一限制适用于包括用户在内的所有下游被许可方,而不仅仅是开发者。
"然而,最近一些 DOSP 许可证是为了防止任何被许可人在与某些特定类型的软件竞争的产品或服务中使用该软件,而这些软件对许可人来说具有重要的战略意义,与直接收入无关。"
例如,为 MariaDB 编写的 BSL 1.1 不允许在生产中使用许可代码,除非许可人使用"Additional Use Grant (AUG)"机制。但 AUG 因公司而异,也正因如此,每个 BSL 实例实际上都是一个本质上不同的许可证。
如今,BSL 正在兴起。HashiCorp 在去年宣布变更核心产品的开源协议,从 MPL 2.0 迁移到 BSL 1.1,CouchBase、DragonflyDB 和 ArangoDB 等十来个项目都也使用了 BSL 协议。
除了 DOSP 许可证,MongoDB 和 Redis 等几个面向云的软件项目在过去几年中也放弃了开源许可证,转而采用带有非竞争条款的许可证 (如 SSPL)。
研究认为,DOSP 是企业用来保持商业优势,同时试图尽可能多地保留开源的优势的一种方式。但随着延迟的增加,开源的好处也会越来越少。探索这些好处与独占利用期限之间的权衡是未来值得研究的方向。此外,DOSP 的实验和多样性也都比我们所意识到的要多得多--尝试 DOSP 的项目、以及尝试的方式都要远远多出想象。
报告还提出了一些未来值得继续研究的方向,包括:AGPL 与 DOSP 许可对比、对外部贡献的影响、首次发布开源代码后的重新授权等等。
更多详情可查看完整报告。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
云风宣布开源基于 Lua 的自研游戏引擎 Ant Engine
知名游戏开发者云风昨天宣布开源游戏引擎 Ant Engine。 viahttps://twitter.com/cloudwu/status/1747509339752116544 云风表示其所在公司已批准 Ant Engine 的开源申请,仓库已对外开放,但现在尚未正式发布,文档、示例等均待在Wiki上逐步完善,游戏仓库将于年后公开。 viahttps://twitter.com/cloudwu/status/1746806038714818577 他还说道,Ant 引擎已经开发了 6 年,其团队使用这个引擎开发的游戏有一年历史,技术部分已经全部完成(游戏体验部分还需要调整),性能方面超出预期。 2017 年底,云风写下对这个新引擎最初的构想:是时候启动一个为移动设备设计的 3d 引擎项目了。 Ant 引擎专门针对移动平台打造,目前只有 iOS 版本完全可用(Mac 版本略有不足,Android 版本尚未完成)。引擎可以在 Windows 上运行,但缺乏一些和 PC 相关的支持(比如接入 Steam ,更好的键盘鼠标支持)。 云风介绍道:“在移动平台上,不光要保持帧率更要节省能耗。这会...
- 下一篇
字节跳动开源 Gödel Scheduler:在离线统一调度器
字节跳动宣布基于 Kubernetes 系统自研分布式调度器:Gödel Scheduler。一个能统一调度在线和离线业务的分布式调度器,能在满足在离线业务功能和性能需求的前提下,提供良好的扩展性和调度质量。 具备如下主要特点: 基于 K8s Scheduler,结合乐观并发思想,把最耗时的应用到节点匹配(filtering and scoring)操作放在 scheduler 组件,可以并发执行,提高大规模集群调度吞吐; 两层调度语义抽象(Unit 和 Pod)和二级调度框架实现:提供更灵活的“批”调度能力,更好支持离线业务的同时,可以进一步提高调度吞吐和提升系统扩展性 (扩展后的框架可以更好地处理一些特殊场景); 丰富的功能和优秀的性能,满足在线,离线(批,流)和训练等业务需求,真正做到统一调度; 兼容 Kubernetes 生态,可以替换 K8s Scheduler; 由于性能以及架构优化,在 framework interface 上与 K8s Scheduler 不完全一样,但扩展性不受影响,也可以像 Kubernetes 一样实现 scheduling plugin; 架构...
相关文章
文章评论
共有0条评论来说两句吧...