小米公布了令人惊艳的Mi Note Pro,搭载了高通最新的骁龙处理器,大尺寸2K显示屏,4GB RAM,价格惊人。话虽如此,小米的产品还是有一些缺点,这也是很多开发者关注的,尤其是在XDA上找到的:小米多次违反安卓(以及小米的设备)使用的Linux内核的GPLv2许可证。一个建立在。
然而,小米并不是唯一一家违反GPL的公司。过去,许多原始设备制造商,如Rockchip和Micromax,也是这样做的。直到今天,许多原始设备制造商仍在继续他们的非法活动。我们在XDA讨论了一些事情,为什么不呢?XDA主要是一个开发者社区,我们以向成千上万的高级用户提供GPL指定的软件修改而闻名。然而,我们的社区遵循我们的GPL政策,因此我们在这里没有看到许多可疑的赠款。
那么,小米到底做错了什么?是违法、不道德还是完全不合适?因为有些读者、用户甚至开发者可能不理解这些问题,让我们快速理解一下GPL的含义。
不,免费啤酒
Gpl Logo GNU通用公共许可证(Gpl)是一种自由软件许可证,它可以保证开发者、原始设备制造商、用户或任何一种将三者结合的组织可以不受限制地访问其基础软件的基础和功能。他们可以使用、研究、共享、复制或修改软件,因为它是自由软件。GNU项目的GNU开发者定义了以下自由软件:
“自由软件”是指尊重用户自由和社区的软件。粗略地说,这意味着用户可以自由地运行、复制、分发、学习、更改和改进软件。因此,“自由软件”是一个自由而不是价格的问题。要理解这个概念,你应该把“自由”看成是“言论自由”,而不是“免费啤酒”。
因此,虽然自由(言论自由)软件最终可能会变成免费(免费啤酒),但实际上是通过专注于改进、共享和学习任何自由软件的代码来培养一个专注于计算机科学和软件工程进步的开发者环境。
GNU项目对软件的看法非常崇高,所以他们开展活动,是因为他们相信每个用户和创作者都应该享受这种自由。它不仅允许公众控制程序及其功能,而且专有软件通过开发者对程序的控制来控制用户,从而起到相反的作用,这将导致一种不公平的权力。有了自由软件的基本自由(你可以按照你想要的方式运行程序,研究它的工作模式,必要时重新发布并进行自己的修改),软件工程变得更像一门纯粹的科学,允许人们发表论文而不是论文。不是专利,让每个程序员都能在某个人的代码理论、他们的方法论、他们偏爱的编程风格上达到巅峰,增强自己对其工作原理的理解,为自己的个人发展收集意见。此外,它允许他获取软件并对其进行修改。
为什么是免费的?
用于描述非自由软件的“专有”一词不仅意味着代码的内部操作在法律上对其他方不利。这也意味着你使用的软件(下载的应用或运行的操作系统)的所有者是创建者,所以所有者决定你是否可以复制或共享软件。这种非无障碍导致使用程序和从中学习的人更少,用户无法修改、改编或修复程序。这种物质上的损害,除了更有社会凝聚力的道德基础及其留存的意识形态外,对计算机科学和消费者的未来确实有重大影响,尤其是考虑到计算机科学及其副产品与用户的生活和未来息息相关。今天比以往任何时候都多。
自由软件有什么好处?
没有收获。但是有些事情让原始设备制造商很恼火。试图修改GPL许可的自由软件的人必须遵守一些规则。
首先,任何获得GPL授权作品的人都必须获得这些条款,任何遵守GPL条款的人都有权分享、研究和修改作品及其衍生作品。诚然,自由(言论自由)软件不是自由(免费啤酒)软件,这与其他明确禁止商业发行的许可证不同。
GPL的被许可方或发行方不得对GPL授予的权利施加进一步的限制-禁止在未明确披露其性质或根据保密协议的情况下分发GPL软件。GPL软件中使用的所有专利都可以无限期使用,以符合GPL条款。
GPL还要求以预编译二进制文件形式分发的程序应附有源代码和免责声明的副本,以避免通知用户或开发者该软件已获得GPL许可或可根据GPL进行研究、共享或修改。GPL也是最重要的部分之一。它要求出版商为所有接收者提供与程序一起使用的许可证,并为那些通过某些媒体需要源代码的人提供可访问的源代码和如何获取源代码的明确说明。
这和安卓有什么关系?
安卓是在Apache 2.0下获得许可的,而不是GPL。Apache是一个比较“宽松”的许可证,不同于GPL的要求。它不要求你分发涵盖作品的源代码,衍生作品也不一定有Apache许可证,比如更病毒的GPL,只要你包括他们的许可证。
因此,虽然GPL促进了自由软件的成长,但未来Apache在开发衍生条款的方式上更加自由。例如,原始设备制造商可以采用Apa。
che许可的软件,添加其外观,膨胀和所拥有的东西,然后将其关闭并保持源关闭。小米和许多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)每次发布新设备时都会承担他们的职责。