gpl徽标GNU通用公共许可证是一项免费软件许可证

2020-08-25 10:14:19 来源: INeng财经

小米宣布了其规格惊人的Mi Note Pro,它配备了高通公司最新的Snapdragon处理器,大2K显示屏和4GB RAM,价格惊人。话虽这么说,小米的产品还是有一些不好的地方,这是许多开发人员所关心的,尤其是在XDA上发现的许多开发人员:小米屡次违反Android(以及小米的设备)所使用的Linux内核的GPLv2许可证。 ,建立在上。

但是,小米并不是唯一一家违反GPL的公司, 在过去,Rockchip和Micromax等许多OEM也这样做,直到今天,许多OEM仍在继续其违法行为。我们在XDA上讨论了一些,为什么不呢?XDA主要是一个开发人员社区,我们以向成千上万的高级用户提供GPL规定的软件修改而闻名,但是我们的社区遵循我们的GPL政策,因此在这里看不到太多可疑的拨款。

那么,小米到底在做错什么呢?它是非法的,不道德的还是完全不当的?由于可能会有一些读者,用户甚至开发人员不了解这些问题,因此让我们快速了解一下GPL的含义。

不免费的啤酒

gpl徽标GNU通用公共许可证(GPL)是一项免费软件许可证,可确保开发人员,OEM,用户或将三者合并的任何类型的组织都可以无限制地访问其基础软件的基础和功能。他们可以使用,研究,共享和复制或修改所述软件,因为它是免费软件。GNU项目的GNU开发人员定义了以下免费软件:

“自由软件”是指尊重用户自由和社区的软件。粗略地说,这意味着用户可以自由运行,复制,分发,学习,更改和改进软件。因此,“自由软件”是自由而不是价格的问题。要理解这个概念,您应该将“自由”视为“言论自由”,而不是“免费啤酒”。

因此,尽管免费(言论自由)软件最终可能最终会变成免费(啤酒免费),但这实际上是要通过集中改进,共享和学习任何免费软件的代码来培养专注于计算机科学和软件工程进步的开发人员环境。。

GNU项目对软件有非常崇高的看法,因此他们之所以开展活动是因为他们相信每个用户和创建者都应享有这种自由。它不仅允许公众控制程序及其功能,而且专有软件通过开发人员对程序的控制来控制用户,从而起到相反的作用,这将导致一种不公正的权力。有了自由软件的基本自由(可以按您希望的方式运行该程序,研究它的工作方式,在需要时重新分发它以及进行您自己的修改),软件工程变得更像是一门纯粹的科学,允许人们发表论文而不是发表论文。而不是专利,使每个程序员都可以在某人的代码理论,他们的方法论和他们首选的编程风格上达到顶峰增进他自己对它如何工作的理解,并为他的个人发展收集见解。而且,它允许他获取该软件并进行修改。

为什么要免费?

用来描述非自由软件的“专有”一词不仅暗示着该代码的内部运作在法律上对其他方不利。这也意味着您使用的软件(是下载的应用程序还是运行的操作系统)的所有者是创建者,因此,所有者决定您是否可以复制或共享该软件。这种非自由的障碍导致更少的人使用该程序并从中学习,并且用户无法修改,改编或修复该程序。除了社会凝聚力及其保留的意识形态的更多道德依据外,这种物质损害的确对计算机科学和消费者的未来产生了显着影响,尤其是考虑到计算机科学及其副产品与用户的生活以及他们的未来息息相关。比以往任何时候都更多 今天。

免费软件的好处在哪里?

没有收获。但是有些东西会惹恼OEM。试图修改根据GPL许可的自由软件的人必须遵守一些规则。

首先,任何获得GPL许可作品的人都必须获得这些条款,并且遵守GPL条款的任何人都有权共享,研究和修改该作品及其衍生作品。确实允许免费(言论自由)软件不是免费(免费啤酒)软件,这与其他明确禁止商业发行的许可不同。

GPL的被许可人或发行人不得对GPL授予的权利施加进一步的限制-禁止在未明确披露其性质或根据保密协议的情况下分发GPL软件。GPL软件中使用的所有专利都可以无限使用,以符合GPL条款。

GPL还要求以预编译的二进制文件形式分发的程序应随附源代码的副本和免责声明,以免除通知用户或开发人员该软件已获得GPL许可或可以根据GPL进行研究,共享或修改。GPL也是最重要的部分之一,它要求发行商向所有接收者提供与程序一起使用的许可证,并 通过一些媒介为要求它的人提供可获取的源代码,以及关于如何获取源代码的明确指示-码。

这与Android有什么关系?

Android是根据Apache 2.0许可而非GPL许可的。Apache是​​更“宽松”的许可证,与GPL的要求不同。它不需要您分发所涵盖作品的源代码,并且派生作品不一定带有Apache许可,例如更具病毒性的GPL,只要您包括它们的许可即可。

因此,尽管GPL促进了自由软件的增长,但是Apache在未来衍生条款的发展方式上更加自由。例如,OEM可以采用Apache许可的软件,添加其外观,膨胀和所拥有的东西,然后将其关闭并保持源关闭。小米和许多OEM就是这样做的。但是,Linux内核的Android立足于在它的基础不是 Apache下许可,对于Linux是GPLv2许可的软件,并且由于GPLv2许可的这种“病毒”或“感染性”的属性,即使用Linux的GPLv2许可代码的Android基于Linux内核已经到保持GPLv2。

小米没做错什么!

小米未发布其Android分支的内核源代码。由于他们的内核基于Android的内核,而Linux的内核是GPLv2,因此GPLv2的条款一直沿用到小米。如果他们会使用自己的内核,那么他们将有权不分发其资源,并且也没有义务这样做。但是,通过修改和分发GPL软件,它们必须遵守GPL条款,在本例中为GPLv2。

用户和开发人员理应获得对内核源代码的访问权,而对于XDA,缺少小米修改后的Android内核源代码的如此重要的部分意味着对小米设备的调整和修补会大受打击。对于致力于探索Android世界并将其变为最佳状态的社区来说,被世界上发展最快的OEM所修改的手机软件排除在外是一件重要的事情。

已经有请愿书,要求小米遵守GPLv2并在适当的时候发布其资源,但到目前为止,它们仅能赢得我们的承诺。这些诺言仍然没有兑现。小米副总裁雨果·巴拉(Hugo Barra)在2014年10月承诺,我们会在“未来几周内”看到Mi3的内核资源,但这从未发生。此外,去年12月,他们表示将在2014年而不是2015年发布其消息来源。

小米为什么不及时发布Mi3设备的资源?雨果·巴拉(Hugo Barra)在12月表示,他们这样做并不是为了防止即将到来的设备上的信息泄漏。他说:

这些设备的内核源代码包含大量源代码,这些源代码将在两个即将推出的模型中使用。如果我们以当前状态发布内核源代码,那么我们将获得更多关于未来设备的信息。我们将改变这种情况,但是现在这是我们必须忍受的约束。我们希望您能理解这个职位,对于可能造成的挫败感,我们深表歉意!”

这证明他们的行为合理吗?当然不是。他们是亿万富翁行业中的亿万富翁制造商,他们非常清楚自己的代码符合GPLv2的条款,因此必须遵守。2013年 发布了一条公告自豪地炫耀小米内核的开源。他们对开发人员能够为小米智能手机定制ROM做出了很大的贡献,而其辩护者则认为小米“完全是开源代码共享”。快进一年了,他们的源代码由于不合理的原因而被延迟,那时他们的内核源应该从一开始就分发给消费者,而不必等待消费者用干草叉追赶他们,也不会因荒谬的延迟而吐在脸上。而且这甚至都没有考虑到那些走在他们前面的人的工作,而众所周知的小米(以及其他每个不遵循GPLv2的OEM)每次发布新设备时都会承担他们的职责。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。