Board logo

标题: [数码手机] ZT:关于google的不作恶:有感于android被踢出linux kennel [打印本页]

作者: masterfish    时间: 2010-2-5 13:59     标题: ZT:关于google的不作恶:有感于android被踢出linux kennel

阮一峰
http://www.ruanyifeng.com/blog/2010/02/open_android_or_not.html

满大街都在谈论Android。

它是当红炸子鸡。许多人觉得,iPhone将受到它的强力挑战。

bg2010020401.png

我也曾经对它充满了期待,但是后来的事态发展,令我改变了看法。前几天,我就在网志上写了自己的担忧:

    “首先,Android应用程序只能用java语言开发。

    其次,Google对Android采用了一种全面霸权式的管理,完全不是其他开源软件的开发方式,一切都由Google说了算,很多地方是黑箱,外界不得而知。”

没有想到,仅仅过了两天,担忧就变成了现实。Linux Kernel的维护者Greg Kroah-Hartman宣布,将Android 代码从 Linux kernel 代码库中删除。这意味着,Linux Kernel的开发小组不认可Android的贡献,两者产生了冲突。

消息公布以后,外界普遍觉得惊讶和可惜。好不容易,才有了一个这么受欢迎的开源手机系统,应该齐心协力、共同开发才对,为什么要“窝里斗”呢?到底是什么矛盾,使得Linux Kernel小组剔除Android代码呢?

Greg Kroah-Hartman写了一篇详细的文章,解释这个决定。下面就来看看,他是怎么说的,以及Android到底是一个什么样的系统。

在这之前,你最好知道Greg Kroah-Hartman是谁。他是目前Linux Kernel的核心开发人员,负责stable软件包的发布。就是说,每一个新版本的Linux Kernel,都是经过他的手流出来的。此外,他还负责硬件驱动的部署。而他的手机就是HTC G1,每天都在使用。所以,他是绝对有资格谈论这个问题的,他的看法代表了Linux社区对Android的看法。

首先,他指出Android和其他的Linux发行版不一样:

    “Google has taken the Linux kernel, and nothing else from a "traditional" Linux system.

    Google只用了kernel,别的东西都没用。”

这就是说,与Ubuntu、Debian、Redhat这样的传统Linux发行版相比,只有系统的底层结构是一样的,其他东西在Android里都不一样,尤其是程序员的编程接口是完全不同的。因此,Android应用程序都必须重新写过,现存的Linux程序无法移植上去。所以,从严格意义上说,Android是一种全新的系统,它与Linux的距离,比Mac OS与Linux的距离还要远。

bg2010020402.jpg

然后,Greg Kroah-Hartman肯定了Android这样做的积极意义:

    “Android also solves the problem that the phone manufacturers had been having for many years: a free version of Java and a unified application layer that programmers can write to that will work on all phone platforms that integrate it.

    它解决了长期令手机制造商头痛不已的问题:业界缺乏一个开源的Java虚拟机,以及统一的应用程序接口。现在,程序员只要写一次程序,就能在各种手机硬件平台之上使用。”

这段话解释了,为什么Android的应用程序,都必须用Java语言开发。因为不这样做的话,没法让程序做到硬件无关。

且慢,这真的是理由吗?传统的Linux系统,也并不依赖特定的硬件啊!只要把源代码根据不同的平台,分别编译一下,同一个程序不也照样可以在不同的硬件架构、不同的Linux发行版中使用吗?

那么,Android只采用kernel、只允许用java编程的真正原因,到底是什么?

台湾的科技网志MMDays一语道破真相:

    “Linux kernel 的版权是 GPL。

    这下问题来了:如果你是硬件厂商,希望你的硬件能在 Linux kernel 下运作,那么就必须要有驱动程序。如果驱动程序的程序代码公开,等于硬件规格也公开的差不多了。许多厂商不愿意这么做,所以就提供编好的驱动程序,但不提供原始码。

    Android 的重点就是商业应用,Google采用了一些手法来绕过这问题。他们把驱动程序移到 "userspace",也就是说,把驱动程序变成在 Linux kernel 上头跑,而不是一起跑的东西,这样就可以避过GPL。然后,在 kernel 这边开个小门,让本来不能直接控制到硬件的 "userspace" 程序也可以碰得到,这样只要把"开个小门"的程序代码公布就行啦。”

看明白了吗?

这段话的意思是说,Google玩了一个花招,在kernel和应用程序之间,自己做了一个中间层,这样就既不违反GPL许可,又能不让外界看到厂商的硬件驱动和应用程序的源码。

里面的关键在于,Kernel和Android的许可证不一样,前者是GPL许可证,后者是Apache Software License(简称ASL)许可证。GPL许可证规定,对源码的任何修改都必须开源,所以Android开源了,因为它修改了Kernel。而ASL许可证规定,可以随意使用源码,不必开源,所以建筑在Android之上的硬件驱动和应用程序,都可以保持封闭。为了得到更多厂商的支持,Google有意选择了这样做,并且特意修改Kernel,使得原本应该包括在kernel中的某些功能,都被转移到了userspace之中,因此得以避开开源。

这样做或许有利于推广Android,吸引厂商和软件开发商的加入,但是Google也放弃了构建一个真正开源的手机系统的机会,从而也就不能获得由全世界程序员提供智慧、分享代码、推动创新的好处。关于许可证问题的深入讨论,请阅读Ryan Paul的文章《Why Google chose the Apache Software License over GPLv2 for Android》。

Google的这种做法,直接后果就是给Linux Kernel带来了麻烦。Greg Kroah-Hartman清楚地说出了自己的不满。

    “...any drivers written for Android hardware platforms, can not get merged into the main kernel tree because they have dependencies on code that only lives in Google's kernel tree, causing it to fail to build in the kernel.org tree.

    所有为Android写的硬件驱动,都不能合并入kernel。因为它们只在Google的代码里有效,在kernel里根本没法用。

    Because of this, Google has now prevented a large chunk of hardware drivers and platform code from ever getting merged into the main kernel tree. Effectively creating a kernel branch that a number of different vendors are now relying on.

    由于这个原因,Google也从不把大量的硬件驱动程序和平台源码向kernel提交。实际上,它创造出了一个kernel的分支,大量的开发者都依赖那个分支。”

这就是Android干的事情:它修改了Kernel,但是又不提供修改的细节,自己搞了一个封闭的系统。说得难听一点,它利用了开源社区,要求开源社区为它做贡献,却又不愿提供回报。

所以,Linux Kernel就把Android踢出去了,真是再正常不过了。

人们有权利质疑,Android这样的哲学是否正确?是否符合Google“不作恶”的口号?如果Android继续这样封闭下去,那么开源社区为什么要为它免费制作软件呢?因为我又不是在为开源社区服务,而是在为Google服务。既然这样的话,那还不如去支持iPhone呢,至少能在软件商店里多卖一点钱,而且乔布斯看上去也更酷一点。

bg2010020403.jpg

slashdot上有很多关于此事的讨论。有人指出:

    “Google自己的网站,与微软的网站一样封闭。它开源出来的东西,都是根据GPL许可证不得不开源的。”

好吧,姑且不谈Google本身,因为它至少不要求外界提供支持。但是Android不一样,你不能假装成开源系统,骗取社区的支持,然后又干着封闭系统的勾当。

Google必须做出选择。正如Greg Kroah-Hartman最后的呼吁:

    “I really don't know. Google shows no sign of working to get their code upstream anymore.

    我真的不知道未来。Google看上去没有任何改变代码的迹象。

    I do hold out hope that Google does come around and works to fix their codebase to get it merged upstream to stop the huge blockage that they have now caused in a large number of embedded Linux hardware companies.

    我确实希望Google做出改变,把它的代码合并进我们的代码,弥补已经出现的代码分裂。

    I've privately offered in the past to help this work get done, and am doing again here publicly. But I need the help of the Google developers to make it happen, without them, nothing can change.

    我私底下已经说过,我愿意帮助完成这项工作,在这里我再次公开这样说。但是如果没有Google程序员的加入,什么也不会发生。”

Android必须变成一个真正的开源系统。如果像现在这样封闭下去,就会被开源社区抛弃,就一定不会成功,即使有Google的支持。

UPDATE

liufeng针对此文,写了一篇很好的评论,推荐阅读。

我接受他的批评,我确实有点感情用事。主要是因为对Google有太大的期望,所以不能接受它现在的这种做法。

这一次,也许不能说Google做错了什么,毕竟都符合GPL许可证的要求。但是代价也是巨大的——它放弃了创造未来的机会。我坚信,未来主流的手机操作系统一定是开源的,就像我坚信未来Linux一定胜过Windows一样。现在,既然Google放弃了这个选择,那么只能等待其他人来做出开源的手机系统了。这也意味着,我们还要在黑暗中等待更久。

(完)
作者: voodoo    时间: 2010-2-5 14:06

手机系统本来就应该商业化,开源的东西太扯了,基本只适合有一定电脑知识的人用
作者: 红叶    时间: 2010-2-5 14:07

开源了这么久,有商业化成功的消费级产品吗?
作者: masterfish    时间: 2010-2-5 14:15

问题不在于开源闭源的好坏,而在于google的挂羊头卖狗肉吧,所以linux社团才会愤怒啊
讲白了,google既然这么强,又看不上linuxers追求的“开源”精神,那么自己发明一个OS不好吗?

[ 本帖最后由 masterfish 于 2010-2-5 14:17 编辑 ]
作者: HKE    时间: 2010-2-5 14:23

[posted by wap, platform: Firefox]

真正的开源只存在共产主义社会,就如同我们现在站在初级阶段的那个梦想一样的社会

我操,程序员不用吃饭阿,开源是为了兴趣和爱好,没饭吃谁和你去搞开源,浪费自己的心智做好了代码让别人去投产销售收益,自己只是个光荣的"开源程序员"
作者: sumeru    时间: 2010-2-5 14:24

G青呢,再次印证了老乔那句'Don't be evil' is 'full of crap'
作者: allroll    时间: 2010-2-5 14:28

[posted by wap, platform: Nokia]

你的就是我的,我的还是我的。
作者: kitano    时间: 2010-2-5 14:29

google没做到的事,symbian基金会会做到吗?
作者: baggio635193    时间: 2010-2-5 14:37

引用:
原帖由 masterfish 于 2010-2-5 14:15 发表
问题不在于开源闭源的好坏,而在于google的挂羊头卖狗肉吧,所以linux社团才会愤怒啊
讲白了,google既然这么强,又看不上linuxers追求的“开源”精神,那么自己发明一个OS不好吗?
+1
作者: sectionboy    时间: 2010-2-5 14:41

多的是不开源的驱动,作者瞎说么
作者: 猫猫猫    时间: 2010-2-5 15:00

引用:
原帖由 sumeru 于 2010-2-5 14:24 发表
G青呢,再次印证了老乔那句'Don't be evil' is 'full of crap'
光看了标题就high的百度青?
作者: 卖哥    时间: 2010-2-5 15:02

亲自示范了一种绕过GPL的方法
google修改了Linux Kernel的代码不用原来的驱动层,在上面开了个口子用于连接自己设计的非GPL的驱动层。
它对Kernel贡献的代码就是在上面开个口子。

我认为这会逼迫Linux转到在这方面限制上修过的GPLv3。
作者: 不知所谓无所谓    时间: 2010-2-5 15:06

你指望犹太人做什么 ? 再怎么样他们也是商人。
作者: 舟易行    时间: 2010-2-5 15:26

如果linux都是这种愣头青在搞 那绝对没前途
作者: otz    时间: 2010-2-5 15:28

[posted by wap, platform: Nokia (E71)]

请问这是作恶了吗?
作者: d2loader    时间: 2010-2-5 15:30

[posted by wap, platform: Nokia (E71)]

纱布的文章第一段就写错了。而且linux现在userspace的驱动多的是。google可没有违反gpl,只是想办法绕过去了而已。不违法已经够可以了
作者: 卖哥    时间: 2010-2-5 16:09

主要就是android没有回应linux社区的期待
他们看LMO不争气那么多年了,以为有google这样的公司领导可以促进linux在便携领域的应用,结果一点帮助也没有……
作者: wefan    时间: 2010-2-5 17:19

linux恨的是google不像IBM novel这样对linux有贡献;话说不只是机器人,全部产品都这样。。。google公司策略就是这样的,并不能理解为do evil
作者: realzeus    时间: 2010-2-5 17:30

[posted by wap, platform: Nokia]

真是有人的地方就有江湖,弄个操作系统就可以闹成这样,真是阶级斗争无处不在啊
作者: 离神最近的人    时间: 2010-2-5 18:42

[posted by wap]

google并没有违反GPL,LS某些人到底在激动啥?
作者: 猫猫猫    时间: 2010-2-5 18:51

如果说"不给你好处那就是do evil"...那....这逻辑太神了
作者: 愈液愈美丽    时间: 2010-2-5 20:18

linux踢了google也是无可厚非的,本来控制权也在community里面
作者: RestlessDream    时间: 2010-2-5 22:11

[posted by wap, platform: Nokia (E71)]

好吧,严格的说google的确是做到了 dont be evil。 但不要以为他做的任何事情就都是 good。 巨大的灰色海洋在召唤着你。
作者: luokezhu    时间: 2010-2-5 22:18

一定要违法才叫作恶?不道德就不叫作恶?google利用了人家开源社区的kernel来卖手机,又不愿意把自己的东西贡献给开源社区,只下载不上传,不道德!!没事,Android的使命由Maemo来完成!
作者: lijgame    时间: 2010-2-5 22:45

引用:
原帖由 luokezhu 于 2010-2-5 22:18 发表
一定要违法才叫作恶?不道德就不叫作恶?google利用了人家开源社区的kernel来卖手机,又不愿意把自己的东西贡献给开源社区,只下载不上传,不道德!!没事,Android的使命由Maemo来完成!
你到底看不看得懂这篇文章?
开源社区不需要这种小白来捍卫了
作者: luokezhu    时间: 2010-2-5 23:21

你没懂还是我没懂?欢迎调教
作者: finalx    时间: 2010-2-5 23:25

还是j8死nb,直接搞freebsd,反正bsd license就是让人随便操,google就是没违法gpl也是evil
作者: f1king    时间: 2010-2-5 23:34

还是支持linux,没有开源linux也不能发展到现在,至少把服务器的成本降低太多了
作者: henvelleng    时间: 2010-2-6 00:34

这又不是什么大惊小怪的事情,android自己玩一套驱动框架,而且android本身还没merge进mainline,那么依赖于android驱动框架的那些驱动程序(由硬件厂商提交,与google无关)又有什么理由继续呆在mainline呢(脱离了android框架,这些驱动根本不能工作)。再说了,同一个tree下,哪里能容你另起炉灶从内部搞分化,所以kernel组织以后拒绝google将android源码merge进mainline的申请也是极有可能的(那可得苦了我们),但是你可以继续维护属于你自己的分支和发布相应的patch,这样的分支不要太多

merge进mainline就意味着:
1 紧跟kernel版本的更新而同步,我们知道kernel版本更新是非常快的,api在几个月里能老母鸡变鸭,这势必增加维护的人力
2 coding style与kernel统一,比如你不能使用奇怪的函数名变量名等等
3 庞大的开源社区支持,无数人会第一时间git到新版并进行测试、提交bug以及参与到你的项目组里来分担你的工作,这一点能很大程度地抵消掉上面两点对原开发者的不利因素

不进mainline的原因多种多样:当年ntfs无法套到vfs框架里,所以ntfs-3g这种fuse才会出现;reiserfs不能进mainline是因为reiserfs小组leader说话太冲,得罪了kernel组的成员;yaffs不进mainline的原因比较强,似乎是作者觉得紧跟kernel的api更新太累,而且嵌入式系统一般都喜欢用旧的kernel(可怜的我就特别喜欢追新

[ 本帖最后由 henvelleng 于 2010-2-6 01:09 编辑 ]
作者: henvelleng    时间: 2010-2-6 00:41

关于google不作恶是老话题了,google从诞生时起到现在一直就是这样,android不过是google式做法的延续。google可以说是这个世界上享受到开源社区福利最多的公司没有之一,至于它贡献了什么,是不是抵得上它从开源社区得到的好处,见仁见智。但是有一点,google没有按照开源社区的发展模式和精神走,尽管它因为精于研究授权协议而至今没吃上什么大官司,但google因为钻协议空子而惹来的争议一直不断
作者: masterfish    时间: 2010-2-6 01:51

引用:
原帖由 RestlessDream 于 2010-2-5 22:11 发表
[posted by wap, platform: Nokia (E71)]

好吧,严格的说google的确是做到了 dont be evil。 但不要以为他做的任何事情就都是 good。 巨大的灰色海洋在召唤着你。
就是这样
所以linuxer的理想主义者们很痛苦
作者: henvelleng    时间: 2010-2-6 01:53

以下是原文,大意是,android源码因为对kernel改动过大不能接受,无法通过审核,无法merge into mainline,由此将连带使得所有基于android的驱动(由硬件厂商提交的)全部无法通过审核(android刻意使用自己的锁使得驱动不能在非android平台上运行),现在希望google能修改android代码以便通过审核(个人认为可能性很低)

As the Android kernel code is now gone from the Linux kernel, as of the 2.6.33 kernel release, I'm starting to get a lot of questions about what happened, and what to do next with regards to Android. So here's my opinion on the whole matter...

First off, let me say that I love the Android phone platform. Until last week, I used my developer G1, that I bought, every day. It worked wonderfully for me, and as a user, I was more than happy.

I'm also very happy about Android from a technical perspective. It's amazing that Google has taken the Linux kernel, and nothing else from a "traditional" Linux system, and created a portable and robust phone platform. It's so different that you can drop in a "real" Linux system image on top of the Android system, and they both work just fine with no changes needed.

Android also solves the problem that the phone manufacturers had been having for many years: a free version of Java and a unified application layer that programmers can write to that will work on all phone platforms that integrate it. Because of this, all of the existing "Linux Phone Consortium" groups are doomed and will probably close up silently very soon now, if they haven't already.
What's wrong?

So, what happened with the Android kernel code that caused it to be deleted? In short, no one cared about the code, so it was removed. As I've stated before, code in the staging tree needs to be worked on to be merged to the main kernel tree, or it will be deleted.

But there's a much bigger problem here.

The Android kernel code is more than just the few weird drivers that were in the drivers/staging/android subdirectory in the kernel. In order to get a working Android system, you need the new lock type they have created, as well as hooks in the core system for their security model.

In order to write a driver for hardware to work on Android, you need to properly integrate into this new lock, as well as sometimes the bizarre security model. Oh, and then there's the totally-different framebuffer driver infrastructure as well.

This means that any drivers written for Android hardware platforms, can not get merged into the main kernel tree because they have dependencies on code that only lives in Google's kernel tree, causing it to fail to build in the kernel.org tree.

Because of this, Google has now prevented a large chunk of hardware drivers and platform code from ever getting merged into the main kernel tree. Effectively creating a kernel branch that a number of different vendors are now relying on.

Now branches in the Linux kernel source tree are fine and they happen with every distro release. But this is much worse. Because Google doesn't have their code merged into the mainline, these companies creating drivers and platform code are locked out from ever contributing it back to the kernel community. The kernel community has for years been telling these companies to get their code merged, so that they can take advantage of the security fixes, and handle the rapid API churn automatically. And these companies have listened, as is shown by the larger number of companies contributing to the kernel every release.

But now they are stuck. Companies with Android-specific platform and drivers can not contribute upstream, which causes these companies a much larger maintenance and development cycle.
What would be needed to get the Android core code merged?

When the Android code was merged into the staging tree, a number of kernel developers reviewed the code and pointed out places that needed to be cleaned up, and changed, in order for it to be accepted. A number of these changes will affect the kernel/userspace boundry, so some changes to the Android userspace logic would also need to be changed if these kernel changes are made, preventing anyone except a Google employee from making the changes necessary.
So, what to do?

I really don't know. Google shows no sign of working to get their code upstream anymore. Some companies are trying to strip the Android-specific interfaces from their codebase and push that upstream, but that causes a much larger engineering effort, and is a pain that just should not be necessary.
Hope

I do hold out hope that Google does come around and works to fix their codebase to get it merged upstream to stop the huge blockage that they have now caused in a large number of embedded Linux hardware companies.

I've privately offered in the past to help this work get done, and am doing again here publicly. But I need the help of the Google developers to make it happen, without them, nothing can change.

The good news is that it looks like all of the kernel/userspace api changes will have no affect at all on any Android code higher up the stack (like applications), so all of this work can be done with no problem in the overall system.

I'll be giving a talk about this whole Android mess at the CE Linux Forum 2010 conference. Hopefully it improves before then, otherwise CELF will be continuing the long-held tradition of having keynotes in which the presenter yells at the attendees for all of the bad things they are doing.

posted Tue, 02 Feb 2010 in [/linux]
作者: henvelleng    时间: 2010-2-6 01:56

引用:
原帖由 masterfish 于 2010-2-6 01:51 发表

就是这样
所以linuxer的理想主义者们很痛苦
大家只是希望google能正视自己,勇敢地展示自己真实的一面,不要再欺骗蒙蔽天真的群众了
作者: handsomeken    时间: 2010-2-6 09:57

[posted by wap, platform: Safari]
引用:
猫猫猫 发表于 2010-2-5 15:00
原帖由 sumeru 于 201025 14:24 发表
G青呢,再次印证了老乔那句'Don't be evil' is 'full of crap'

光看了标题就high的百度青?
看不惯公司扯这种大旗就一定是对手的青?
作者: 喜欢它likeit    时间: 2010-2-7 09:07

如果android成功了,本身就会推进linux商业化前进一大步(以偏离原来设想的方式),这也是linux要面对的本质性问题,如何在大众市场成为人人可用的实现方式。

硬要搞开源原教旨主义,只能说是不尊重现实。
作者: jun4rui    时间: 2010-2-7 10:04

开源这么多年,还不是大部分核心代码都是商业公司写的,还真不知道linux怎么发展下去?靠公司发善心捐献源代码?还是靠逆向工程做驱动?

我越来越觉得,教旨主义的开源就是共产主义的翻版啊,越到后面越搞不下去。

Google没有违反GPL,那就是没有违法,这就是于理不合;
而无视目前Linux绝大多数都是商业公司雇员开发,而且每况愈下的情况,则是于请于情不合。

既不合情又不合理,现在的Linux早就变味了,越来越讨厌斯托曼了。虽然他可能不自私,但是Linux现在想作为大众都使用的工具就不要老计较硬性的开放源代码,时不时出来指手画脚真的是有点太自大了。
作者: 网上的final    时间: 2010-2-7 10:09

不客气的说,玩linux的都是一小撮人,根本不代表大众
作者: jun4rui    时间: 2010-2-7 10:15

看人家Apple拿FreeBSD操得多爽啊,Google换核心用FreeBSD吧!
作者: 喜欢它likeit    时间: 2010-2-7 11:12

[posted by wap, platform: SonyEricsson (M600i)]

乱挥舞道德大棒,往小了说是没有远见阻碍了linux的发展,往大了说还可能有沽名钓誉的嫌疑
作者: henvelleng    时间: 2010-2-7 15:21

android虽然没有违反GPL,但是google的做法不可能促进linux的商业化,而是背道而驰,分流了开源社区的资源

商业公司为linux贡献代码,可不是在做慈善事业,这是个良性循环

RMS是不讨人喜欢,这位大胡子叔叔越来越极端,连linus都不怎么鸟他,但不能就此否定开源精神
作者: 卖哥    时间: 2010-2-7 15:29

linux大部分代码是商业公司写的,为什么?
自然是linux能够让那些公司获得足够的利益,即使贡献代码也值得。
这是共赢,GPL能推动的良性发展。
如果大家都学google,那这个良性发展就不会存在。
结果就是逼各个社区上GPLv3了,GPLv3以发行软件为单位,整个软件每一个组件必须是GPLv3许可证的,这就很难绕了,但是也限制得很死了,本来linus是一直不答应linux上GPLv3的。
作者: henvelleng    时间: 2010-2-7 15:30

还有,从来没有人说过open source == free,阻碍open source进程的最大障碍在于商业代码本身的不干净
作者: jun4rui    时间: 2010-2-7 15:57

我虽然觉得Android很可能失败,但是说Android会分流资源这点觉得不太可能。首先,计算机中代码的资源,越分享受益人才越多,何来分流一说?是否MAC OSX分流了FreeBSD的资源阻碍了其发展呢?

是否能促进Linux商业化那和Android本身毫无关系,Android是一个开放的,可以让各个手机厂商支持一个广泛开源的Linux实现,是把Linux影响力扩大的一个绝佳机会。Linux现在个人用户越来越少,商业领域除了免费我还真看不到有啥好处,别说很多服务器用这个,大型企业用的都是AIX、HP-UX之类的,我以前干这个的,因为人家的技术支持非常完备,出问题直接找原厂给你来人解决。Linux呢?很多东西所谓的高手都搞不定,你一样要花钱请Redhat之类的来支持,何必呢?

别说Android的代码不干净,因为Google用到了Linux得到了效益,而没有回报给Linux。这个我真就不明白了,大量的个人用户根本就是完全不回报Linux的,他们凭什么用?如果Linux是这种态度,那你指望写Linux核心代码的人才能用Linux?奉献如果加上索要回报,这真让人鄙夷。Google至今很多东西都是免费的,难道回报给Linux才叫回报,回报给全球的网络用户就不叫回报了?别说所有的Linux核心开发者都不用Google的服务,有些东西,并不是要把好处送到你手里。

所以,基于以上的观点,Android被踢出Linux核心我并不反对,这是核心开发者的权利,而Android没有违反GPL也并不应该看成是作恶。但是Linux如此下去,前途堪忧。所以这些技术和自由软件宅们,永远都不知道用户需要什么,因为他们严重,自由永远>用户需要
作者: jun4rui    时间: 2010-2-7 15:59

引用:
原帖由 henvelleng 于 2010-2-7 15:30 发表
还有,从来没有人说过open source == free,阻碍open source进程的最大障碍在于商业代码本身的不干净
我觉得你的说法是错误的:open source的最大障碍,不,是所有软件的最大障碍——————就是没人用,可怜很多open source的归宿恰恰就是这样,No user。

我不希望Linux将来会到这一步,Linux和Android应该双赢,而不是将来双输。
作者: henvelleng    时间: 2010-2-7 16:36

GNU的想法是:一个程序只专注做一件事情,并将它做到最好,最终使用者将许许多多这样的程序串起来使用。分流意味着,同样的事情有重复的项目在做,那么开源社区的资源就被浪费了一半,无论是测试的人还是开发的人。我们不需要这样内部竞争

对于商业公司来说,开源意味着以较小的代价对外宣传自己的产品和技术,会引来很多人来使用、测试、提交bug和改进的建议。至于是不是能引来commiter来贡献代码,那不是短期需要考虑的事情。如果真有人提交代码,那么说明这个开源项目已经成功运作起来了,已经有足够数量的用户了,以至于能吸引到外面的开发者的眼球和兴趣(至少这意味着他本人承认了可用性所以在使用该软件并对其代码架构和技术含量给予了较高评价),这个时候公司完全可以考虑直接给报酬甚至是招安,没有任何问题

google为什么会引来争议?因为它没有把自己improved feature回馈给社区。google不能被当作普通的用户来看待,它在用开源社区的成果提供服务直接谋取金钱,而普通用户仅仅只是使用,他们主要做到在使用之便时向身边人宣传就已足够,哦不,实际上他们仅仅只是使用就已足够
作者: henvelleng    时间: 2010-2-7 16:43

当前几乎所有参与open source项目的开发者和公司(我们暂且可以把RMS和其信徒们排除在外),都是利字当头的,这没有什么问题,是双赢的结果。那么谁坏了规矩,破坏了开源社区的生态环境,谁就要付出代价,这本身也是规矩
作者: jun4rui    时间: 2010-2-7 16:49

Open source越来越少人用,标明这个方式很不幸,只是类似社会主义的幻想,《集市和教堂》我当初也很欣赏,但是这几年下来,现实的情况标明这玩意越来越似不着边际的幻想。

关于开源软件是否要区分个人用户和企业用户,这点谁也没规定,既然没违规,我想再在事后追究多少有点不地道。而Google对开源的共享不妨看看:http://code.google.com/intl/zh-CN/opensource/,专门有,写得很清楚。

并不是贡献给Linux才叫有贡献,目前我在用的Chrome就是Google开源的,它给众多上网的用户的共享,我想有些东西并不要以回馈Linux代码才叫对开源社区有共享吧?

如果不回馈Linux代码改进就叫用开源社区的成果谋取金钱,呵呵,我想给Linux代码的80%是付费商业公司职员撰写的,他们才能用?


开源,不必做得这么狭隘才会受人尊敬,否则和欺世盗名无异。
作者: henvelleng    时间: 2010-2-7 16:57

improved feature……你在开源软件的基础上做了修改和添加,增加了功能或是提高了性能,但是呢,你偏偏没有把这些patch回馈给社区,而是自己闷在肚子里了自己管自己在用,说的就是这个事情。GPL没有对这种行为作出干涉

至于你再开其他的开源项目,那是另外一回事请,这年头谁都知道开源 != 慈善事业,大家都是为了钱为了市场推广为了打造品牌为了用户的使用体验回馈。这个事情是一码归一码,你偷了别人的东西,然后开了家饭馆营生,两件事情没有联系
作者: luokezhu    时间: 2010-2-7 17:00

说白了 google就是想将android掌控在自己一个人手中。这种做法对于一般人或小公司而言没什么,但对于google这样巨大、公众形象良好、又号称不做恶的公司,实在让人失望。
技术上,linux开源社区是一个伟大的组织,它和企业之间互利互惠,良性循环才是发展正道,这才是造福全人类。
作者: 卖哥    时间: 2010-2-7 17:02

TSR关于开源与商业重要的作品是魔法大锅炉……
作者: jun4rui    时间: 2010-2-7 17:47

引用:
原帖由 henvelleng 于 2010-2-7 16:57 发表
improved feature……你在开源软件的基础上做了修改和添加,增加了功能或是提高了性能,但是呢,你偏偏没有把这些patch回馈给社区,而是自己闷在肚子里了自己管自己在用,说的就是这个事情。GPL没有对这种行为作出干 ...
关于有没有回馈,可以看这里:http://linux.cn/home/space-3870-do-thread-id-1170.html

Google不是没有回馈,而是回馈了没有声明,你觉得一个有大量开源项目和共享的公司,没有为Linux代码回馈过?

1、是不好意思,写得不好,偷偷patch了就好了
2、维护的代码有很多是针对Google本身特性做的修改,即没有广泛性,又落后主流版本时间太多。
作者: jun4rui    时间: 2010-2-7 17:54

其实相反的,Linux的三大维护专家,都在Google工作,甚至Linux领袖之一的莫顿在加盟Google的时候还说了如下的话:
引用:
莫顿表示:“作为一名Linux内核维护者,我希望为一家真正对kernel.org内核感兴趣的公司工作,因为这样我的工作才更有意义。Google拥有自己的内核版本,并在内部广泛应用,因此显然对kernel.org内核非常感兴趣。”Google一直积极推广Linux应用和参与开放源代码开发,这也是吸引莫顿加盟的重要原因之一。他说:“同Google签约对于我本人和Linux都有好处。”

  加盟Google之后,莫顿同OSDL之间的关系并没有发生变化,而Google也可以从中获益。Google一直希望扮演开放源代码软件“忠实信徒”和用户的角色,莫顿的加盟将帮助该公司在开放源代码社区赢得更多赞誉。
http://tech.sina.com.cn/i/2006-08-07/10491073486.shtml
作者: jun4rui    时间: 2010-2-7 18:02

其实说Google没有回馈代码给Linux的同学想一想,原来Linux中的Android代码是不是Google回馈给Linux的呢?

只是,这个代码给Linux内核本身发展带来了负面影响,所以剔除了。基于此种理论,加上前面有说过的,Google自身使用的就是一个小众的Linux版本,专门为内部事物优化过的,这种代码回馈给Linux是否有更不好的影响呢?

无论如何,Google没有回馈Linux代码,或者Google只获取不回报的说法,我想是可以破除了。因为人家有请3大高手专职开发Linux,又有Android代码整合进入Linux核心,所以以上两众批评完全就不对。
作者: henvelleng    时间: 2010-2-7 18:10

googlecode只是一个平台,类似于sourceforge,任何人都可以在上面发布开源项目,注意是任何人

代码是否优雅的问题,明显是借口,这个不解释了

至于版本的问题,之所以google会面临这样的问题,正是因为它没有把代码提交给社区而是自己闷头在维护才导致如此大量的工作,这完全是颠倒因果逻辑。只要coding style符合规范,并且代码本身有价值,就可以通过审核进入mainline,然后社区里有的是人会帮你改进,包括kernel频繁升级导致的api变化,会有人会帮你维护你的代码,以及测试和除bug、大量的改进建议等等。这才是正常的社区流程。另外,由于程序员是在工作时间写的代码,所以提交的代码不仅有程序员自己的署名,还应该有公司的title,偷偷patch的说法不能接受
作者: jun4rui    时间: 2010-2-7 18:18

引用:
原帖由 henvelleng 于 2010-2-7 18:10 发表
googlecode只是一个平台,类似于sourceforge,任何人都可以在上面发布开源项目,注意是任何人

代码是否优雅的问题,明显是借口,这个不解释了

至于版本的问题,之所以google会面临这样的问题,正是因为它没有把 ...
这你就完全错了,首先Google有没有反馈和是否借口你没有证据,而Android的代码不是Google那是谁patch到核心的?

其次,这次删除出Android代码的缘故表面的说法是因为没人关注,事实上是因为Google允许其他公司采用非开源的方式编写驱动绕过了GPL,所以被删除了。而且这点很有意思,只有Google撰写了Linux的源代码才有此能力,为何又要攻击Google对Linux不作为呢?

我实在只能无奈的苦笑了。这次事件无论正反两方,谁说过Gogole没有给Linux写代码了?真是奇怪至极
作者: henvelleng    时间: 2010-2-7 18:21

至于养一个开源社区的标志性人物,连微软也做过这样的事情

我们从kernel.org上下的kernel里是不会有android的部分的,去年年底在staging line上因为无法通过审核被删除了,否则在即将到来的2.6.33上我们就能看到android的部分了,当然现在看来在以后相当长一段时间内都不可能有了

android是开源的,无论有没有merge into mainline,它都是开源的,可以在android主页上git到源码。而显然google自己内部维护的kernel分支并没有开源,这就是惹怒大家的原因
作者: henvelleng    时间: 2010-2-7 18:25

有没有反馈,直接翻看changeLog即可,代码是否优雅,android我们都看到了
作者: jun4rui    时间: 2010-2-7 18:27

引用:
原帖由 henvelleng 于 2010-2-7 18:10 发表 另外,由于程序员是在工作时间写的代码,所以提交的代码不仅有程序员自己的署名,还应该有公司的title,偷偷patch的说法不能接受
我觉得你这个说法太扭曲了,试问:刚才我说得三大Linux高手在Google维护Linux,那么他们上班维护的代码不算Google,下班维护的代码算Google的吗?

你这样说,Google岂不是里外不是人?
作者: henvelleng    时间: 2010-2-7 18:28

android被T不是因为没人关注,没人关注没关系只要有用能跑就行。真正的原因(即使不说真正,但至少是最官方的原因吧)前面我贴了,那个是kernel组的代表关于为什么T掉android的说明原文
作者: jun4rui    时间: 2010-2-7 18:29

引用:
原帖由 henvelleng 于 2010-2-7 18:25 发表
有没有反馈,直接翻看changeLog即可,代码是否优雅,android我们都看到了
那请问你在这里面找到google字样没?
http://www.kernel.org/pub/linux/kernel/v2.6//ChangeLog-2.6.18
作者: henvelleng    时间: 2010-2-7 18:35

引用:
原帖由 jun4rui 于 2010-2-7 18:27 发表



我觉得你这个说法太扭曲了,试问:刚才我说得三大Linux高手在Google维护Linux,那么他们上班维护的代码不算Google,下班维护的代码算Google的吗?

你这样说,Google岂不是里外不是人?
出钱养一个审核成员啊,他原来在干什么事情现在还是继续干什么事情,这个和robert love那种不同,robert love在novel的时候是主导开发suse桌面系统的,后来加入google的android开发组,工作内容都变了
作者: henvelleng    时间: 2010-2-7 18:38

引用:
原帖由 jun4rui 于 2010-2-7 18:29 发表



那请问你在这里面找到google字样没?
http://www.kernel.org/pub/linux/kernel/v2.6//ChangeLog-2.6.18
连微软都提交代码的,这又能说明啥?
作者: jun4rui    时间: 2010-2-7 18:40

引用:
原帖由 henvelleng 于 2010-2-7 18:35 发表

出钱养一个审核成员啊,他原来在干什么事情现在还是继续干什么事情,这个和robert love那种不同,robert love在novel的时候是主导开发suse桌面系统的,后来加入google的android开发组,工作内容都变了
是啊,人家是质量审核,自然没有维护代码,而且Google另外也没有维护代码的人了,那请问Android的代码是谁整进去的?

另外你说Google没有维护核心代码,那kernel的Changelog(http://www.kernel.org/pub/linux/kernel/v2.6//ChangeLog-2.6.18)里面一堆用google内部邮件的人(没办法,这个changlog除了人名就是邮件地址,我想从人名应该看不出他来自哪间公司,哦,如果叫bill gates的话我还是能猜出),感情都是上班拿工资开发的所以不算google的了?
作者: henvelleng    时间: 2010-2-7 18:43

引用:
原帖由 jun4rui 于 2010-2-7 18:40 发表


是啊,人家是质量审核,自然没有维护代码,而且Google另外也没有维护代码的人了,那请问Android的代码是谁整进去的?

另外你说Google没有维护核心代码,那kernel的Changelog(http://www.kernel.org/pub/linu ...
我感觉……你的概念……好混乱
作者: jun4rui    时间: 2010-2-7 18:44

引用:
原帖由 henvelleng 于 2010-2-7 18:38 发表

连微软都提交代码的,这又能说明啥?
是啊,这样你又不算了,共产党好歹是不给你制定规范,而你呢?

首先说Google没有patch到核心,没有维护Linux Kernel,好吧,我举出证据Google维护了

你说Google没有为开源尽力,好吧,google的开源专题页面和数据我帖给你了

你说changlog没有就不算,好吧,changlog我帖出来了

你说上班拿钱的时候维护的Linux核心不算,好吧,请问什么时候维护的代码才算了?


好吧,你说,究竟怎样Google才算给Opern souce尽了那么一点点力了?
作者: jun4rui    时间: 2010-2-7 18:46

引用:
原帖由 henvelleng 于 2010-2-7 18:43 发表

我感觉……你的概念……好混乱
[attach]176645[/attach]
不是我混乱,要看Changelog是你说的,你说的话顶不顶事?如果不顶事我就不和你废话了。
作者: henvelleng    时间: 2010-2-7 19:03

不知从何说起,因为几个帖子一下子积了好几个概念性问题

1 不是说有了google title的patch就能够说明什么问题了,为什么中国人被人说对linux社区贡献少,是真的连一个patch都没有提交过吗?当然不是罗。同样的,google自己使用的kernel,没有提交给社区,是谁都能看到的,因为ChangeLog是公开的,patch的内容任何人都可以看到,不用diff source code也能明白

2 title也是公开的,不存在“偷偷”patch一说

3 googlecode给开源项目提供了一个在线svn的平台,嗯,这个可以说是为开源事业出力,就好象供养mozilla基金会一样,但这同样是另一回事,是商业行为

4 以代码不够优雅作为理由,想出这条理由的人比较有才,应该不是google的人

5 再次强调,大家对google的意见(撇开android的一系列麻烦事不谈)主要在于:没有把自己内部使用的对kernel相对于标准kernel的改进和增强回馈给社区,注意,请结合第一条
作者: jun4rui    时间: 2010-2-7 19:14

[posted by wap, platform: GoogleChrome]

1、既然Changelog有google,那就是Google对kernel有贡献了;
2、当然可以偷偷啊,不已@google.com的邮箱登记,谁知道你是Google来的?
3、我前面就贴过Google自己的开源项目页面了,远远超过GCode那个SVN,当然,你要说SVN太小算不上一个贡献也没啥。
4、因为Google内部用的Linux是自己编写的啊,我们公司的办公系统也是自己随便捣鼓的,垃圾得要死,要是我放出来patch到discuz中去,我还真丢不起这个脸,因为纯粹闹着玩的。
5、你怎么知道kernel中没有Google的贡献呢?Changelog不是有么?你说过Changelog为准么?里面没google的,难道那些人都是去捣蛋的?

你继续扯点理由出来,我吃个饭看着
作者: masterfish    时间: 2010-2-7 19:47

引用:
原帖由 jun4rui 于 2010-2-7 19:14 发表
[posted by wap, platform: GoogleChrome]

1、既然Changelog有google,那就是Google对kernel有贡献了;
2、当然可以偷偷啊,不已@google.com的邮箱登记,谁知道你是Google来的?
3、我前面就贴过Google自己的开源 ...
老兄,你这样纠缠不清的没用
事实就是:android对linux的改进不被linux核心组接受,被踢出去了
换句话说,就是linux的组员感觉到很不爽,为什么不爽?google为linux推广,捐钱,付出这么多,为什么还不爽?如果不是linux那帮人贱格(我很难相信),那么就一定是google做的事长远上不利于linux的发展
作者: jun4rui    时间: 2010-2-7 20:09

[posted by wap, platform: GoogleChrome]

LS,你要知道Redhat整合的代码也被踢出去过,后来又回到了kernel,目前确实是Android的代码不利于Linux发展,这点我相信我们有共同点,事实上我也没有争论这个。

你看人家给Google借这个事给Google扣的什么帽子?没有回馈核心啦、用这个赚钱不回报啦,嘿嘿,帽子真多啊。

作为用户,我是讨厌Android的,但是我不会找些歪理来说Google。
作者: luokezhu    时间: 2010-2-7 20:24

修改内核自己搞出一个分支,并且开源程度远远不够,以此来说google回馈不够我想是合理的。
作者: jun4rui    时间: 2010-2-7 20:40

[posted by wap, platform: GoogleChrome]
引用:
luokezhu 发表于 2010-2-7 20:24
修改内核自己搞出一个分支,并且开源程度远远不够,以此来说google回馈不够我想是合理的。
奇齐了,源代码都看到了,何来不够?

另外开源不够的话,和回馈不够是什么个关系?

因为开源不够,所以回馈必然不够?

这个想法独到啊!Orz
作者: luokezhu    时间: 2010-2-7 20:49

不是说过了吗,android开源的仅仅是修改过的内核,内核之上的东西都绕过了gpl,开源社区想为android维护一个分支也没能力。。。
不知道有啥奇怪的,回馈不是回馈源码难道是回馈手机?
作者: jun4rui    时间: 2010-2-7 21:00

[posted by wap, platform: GoogleChrome]
引用:
luokezhu 发表于 2010-2-7 20:49
不是说过了吗,android开源的仅仅是修改过的内核,内核之上的东西都绕过了gpl,开源社区想为android维护一个分支也没能力。。。
不知道有啥奇怪的,回馈不是回馈源码难道是回馈手机?
好笑,内核智商的东西绕过GPL?整个Linux上有多少东西绕过GPL了,Linux干脆都干掉算了,你连Flash都看不到。

绕过GPL居然能扯到Google没有回馈Linux代码,真的无知啊,前面那位说Changelog没有Google的已经去数了,你也去麻烦数数里面有多少个google。

这年头胡搅蛮缠也是有技术含量的,5毛也要有本事拿
作者: luokezhu    时间: 2010-2-7 21:30

这里说的是底层的驱动,开源社区的精神是厂商把驱动源码回馈给开源社区,社区帮你维护,这样可以帮助社区发展,也可以提高厂商出新驱动的效率,多数厂商也都是乐意的。android自己搞出一套规则,人家社区提了修改意见它也不理,驱动不需要回馈源码,并且即使回馈了因为平台依赖也没什么用,这就是google想回馈社区的态度?
作者: jun4rui    时间: 2010-2-7 21:55

[posted by wap, platform: GoogleChrome]
引用:
luokezhu 发表于 2010-2-7 21:30
这里说的是底层的驱动,开源社区的精神是厂商把驱动源码回馈给开源社区,社区帮你维护,这样可以帮助社区发展,也可以提高厂商出新驱动的效率,多数厂商也都是乐意的。android自己搞出一套规则,人家社区提了修改意见 ...
别扯虚的,除了apache之类极少数东西,这个世界上封闭源代码的东西比开源的好的多了去了,Flash开源后GNU的模仿品比原版差太多了,诸如此类的比比皆是,这也叫社区帮你维护,提高厂商出新驱动的效率?

别骗人了,这你自己都不信!



其次,Google自身对Linux核心是有反馈的,原因见Linux核心的官方Changelog,里面写得很清楚,你根本没搞清楚为什么说Google没有回馈社区。


说Google没有回馈社区,是指Google的Android部分代码,允许驱动厂商制作闭源的驱动程序,而这些程序不必执行GPL协议,也就无所谓回馈社区了,而Android本身是绝对开源,并且回馈到社区,甚至回馈到社区都不接受的地步,这叫没有回馈?

你连事情都没搞清楚,Google哪里没回馈了?Google只是在开源和闭源之间,搭建了一座互相沟通的桥梁,让两者能更好的为手机提供服务。你要说这个是为了Android免费提供给手机厂商是谋利行为也行,那以此推论我说Linus开发Linux免费提供也是牟利估计也能成立了。
作者: luokezhu    时间: 2010-2-7 22:49

因果关系又错了,厂商回馈是因为能从开源社区得到好处,不然才不会去理什么社区。关于google,我这里仅仅说android,它搞了自己一套独特的规则是事实,他无事开源社区的修改意见是事实,它让android上的代码无法用在别的平台、无法回馈到社区也是事实。
android是免费,但google用它来卖手机赚钱就不是用它牟利了?
作者: henvelleng    时间: 2010-2-7 23:04

军爷,看了你后面的贴子以及其他的人跟贴我发现我的表达能力恐怕已经远远低于我自己的估计了,这其中或许有一些原因是因为有些东西是在我看来不必说明大家本来就明白的,看来有几点是必须要澄清的了

我们之前说的google不回馈社区是完全脱离android来说的,android的情况和我们刚刚说的完全不同,android小组在google内部完全是另类,下面我要先声明:暂时先把android的情况完全撇开不提,只谈google那N多的服务器所使用的kernel
作者: jun4rui    时间: 2010-2-7 23:18

[posted by wap, platform: GoogleChrome]

Google用Android卖手机赚钱?

嗯,Android本身不收费,而且Android本身是开放的,Google有违反GPL了吗?

你只能说,关于这个,你可以说看不顺眼,但是你没有道理要求人家啊,就像Linux有权力踢掉Android,Google也有全力做自己的一套,因为两者都没有违反规则,最多是你看不顺眼罢了。

至于楼上说的Google那N多的服务器用的Kernel,Sorry,你没有任何可证明的东西说Google违反了GPL,Sorry,你说的东西我不认可,这只是你个人的猜测,如果这就是你觉得“不必说明”的东西,这太让我吃惊了,原来你已经深入Google服务器内部打开源代码查看过了。

据我所知,就算Google有,也不会留下你能看到的证据,作为一个严谨的辩论者,你的“臆测”恐怕帮不了你。

“可能”这种东西我看就算了吧,何况Google自己构架一套完全独立于GPL之外的架构是完全有可能的,Android不就是例子吗?

另外,Google的Google File System这个海量的文件系统已经有完备的东西准备提供了。

我只想问你,你除了臆测Changlog里面没有google的存在,臆测Google没有回馈代码,甚至臆测Google雇佣Linux核心开发人员只是个“审核人员”没有为Kernel作出贡献外,还想臆测些啥?

上面这么多东西你都无法自圆其说,真的很遗憾

本帖最后由 jun4rui 于 2010-2-7 23:21 通过手机版编辑
作者: henvelleng    时间: 2010-2-7 23:24

LS我不知道你在说什么,GPL并不会对内容服务商要求什么,只有当你发布的软件使用了GPL协议的代码以后,才会给你寄律师信,我假设你知道这点,显然假设是失败的
作者: henvelleng    时间: 2010-2-7 23:33

按google自己的说法,不将kernel的改进回馈给社区主要是因为他们内部使用的版本控制工具太过糟糕,原本很简单的git rebase就能合并分支,而现在他们却不得不花上18个月的时间去手工完成,以至于来不及发布适合于当前版本kernel的patch,完全没能跟上kernel组织的脚步

他们所作的工作很多是和kernel组织重复的,或是kernel组织正在想办法解决的问题,比如说kernel大量使用的kmalloc、get_free_page等申请内存的方式在无法申请到内存的时候不是直接返回错误而是挂起等待,当系统中有大量线程存在时,会造成很大问题,google采用类似多核多cpu负载均衡的numa方式来处理这个问题,而kernel组织也正在努力用类似的方法解决,但是kernel组织并不知道google的做法也不知道google已经有了具体的实现
作者: jun4rui    时间: 2010-2-7 23:35

[posted by wap, platform: GoogleChrome]
引用:
luokezhu 发表于 2010-2-7 22:49
因果关系又错了,厂商回馈是因为能从开源社区得到好处,不然才不会去理什么社区。关于google,我这里仅仅说android,它搞了自己一套独特的规则是事实,他无事开源社区的修改意见是事实,它让android上的代码无法用在 ...
NoNoNo,Linus从来就不反对用Linux赚钱,甚至鼓励。

另外Android并未违反GPL协议。Android本身并不赚钱,开源免费,不知道集成了Google Maps之类的免费软件装机是否也要厂家付费给Google呢?既然不需要,为何Google就不能卖手机硬件,预装Android软件?

Android本身就GPL而言,从法律上来说是完全合法的。另外Android上的代码可以用在广泛的手机平台甚至PC,当然不可能用在所有平台,不然你试试你Linux kernel里ARM的东西能用到X86上?

Linux kernel的问题是,不像要留条路径给闭源厂商,哪怕这个东西只是userspace的。就像APPLE一样,所有软件都要通过APPStore,Flash想染指没门。

至于对错,两者本身都没有错,但是从长远来看,Linux这种拒绝闭源的东西,怎么可能比开源和闭源都接纳的其他系统走得远?

一味追求Open source的Linux迟早会完蛋。即使Linux因为核心的关键性必须走完全开源这条道路,但是也不能扼杀掉仅在用户空间这种根本不触及核心的的高层面驱动接口方式。
作者: jun4rui    时间: 2010-2-7 23:38

[posted by wap, platform: GoogleChrome]
引用:
henvelleng 发表于 2010-2-7 23:24
LS我不知道你在说什么,GPL并不会对内容服务商要求什么,只有当你发布的软件使用了GPL协议的代码以后,才会给你寄律师信,我假设你知道这点,显然假设是失败的
好啊,你就把Google服务器机房Linux kerlnel里面违反GPL或者开源精神的东东贴出来大家看看啊,别一天到晚在这里意淫了,你前面YY的东西都被戳穿了。
作者: jun4rui    时间: 2010-2-7 23:40

[posted by wap, platform: GoogleChrome]
引用:
henvelleng 发表于 2010-2-7 23:33
按google自己的说法,不将kernel的改进回馈给社区主要是因为他们内部使用的版本控制工具太过糟糕,原本很简单的git rebase就能合并分支,而现在他们却不得不花上18个月的时间去手工完成,以至于来不及发布适合于当前 ...
当然,你可以选择不相信Google的说法,转而猜测他们别有用心故意不放出改进的Linux核心代码,这是你的自由,但是你自己想想就好了,拿来当事实做证据?
作者: henvelleng    时间: 2010-2-7 23:43

你戳穿了什么?ChangeLog里有google字样?你知道我们喷的是什么吗?这一话题当年是怎么起来的,是因为有一份统计报告罗列了各大公司发布的patch数和补丁行数,这又是我的一个基本假设,看来也是失败的
作者: jun4rui    时间: 2010-2-7 23:44

[posted by wap, platform: GoogleChrome]
引用:
henvelleng 发表于 2010-2-7 23:43
你戳穿了什么?ChangeLog里有google字样?你知道我们喷的是什么吗?这一话题当年是怎么起来的,是因为有一份统计报告罗列了各大公司发布的patch数和补丁行数,这又是我的一个基本假设,看来也是失败的
好吧,我再帖一次,第三次了,自己看:http://www.kernel.org/pub/linux/kernel/v2.6//ChangeLog-2.6.18
作者: henvelleng    时间: 2010-2-7 23:46

android的代码可以移植到所有的平台上,所有的
作者: henvelleng    时间: 2010-2-7 23:47

引用:
原帖由 jun4rui 于 2010-2-7 23:44 发表
[posted by wap, platform: GoogleChrome]

好吧,我再帖一次,第三次了,自己看:http://www.kernel.org/pub/linux/kernel/v2.6//ChangeLog-2.6.18
你贴这个的意义何在?
作者: jun4rui    时间: 2010-2-7 23:47

[posted by wap, platform: GoogleChrome]

次数太多了,我想你也不会看的,我帮你帖一个把,几十个呢,我一天只能帖几张图就随便弄一个得了。
作者: henvelleng    时间: 2010-2-7 23:48

唉……那份报告指出google为linux kernel贡献的patch行数占总patch数的1.1%,这就是喷google的起源
作者: jun4rui    时间: 2010-2-7 23:57

[posted by wap, platform: GoogleChrome]
引用:
henvelleng 发表于 2010-2-7 23:48
唉……那份报告指出google为linux kernel贡献的patch行数占总patch数的1.1%,这就是喷google的起源
如果那是你喷google的起源,那这就是我喷你的起源。原来还有1.1%啊,那你怎么说“没有”呢?
作者: henvelleng    时间: 2010-2-8 00:02

已经战到咬文嚼字这一步了吗?你翻ChangeLog出来的时候我差点喷了出来,然后我说连微软都贡献过代码,这又能说明什么?我不是叫你用这种方式去翻ChangeLog,而是说,每一行patch都是有迹可寻的,既不存在数量上的争议也不存在偷偷摸摸的可能
作者: jun4rui    时间: 2010-2-8 00:03

[posted by wap, platform: GoogleChrome]
引用:
henvelleng 发表于 2010-2-8 00:02
已经战到咬文嚼字这一步了吗?你翻ChangeLog出来的时候我差点喷了出来,然后我说连微软都贡献过代码,这又能说明什么?我不是叫你用这种方式去翻ChangeLog,而是说,每一行patch都是有迹可寻的,既不存在数量上的争议 ...
我以为微软为Linux内核提交过GPL代码是路人皆知的事情,看来我错了…………
作者: jun4rui    时间: 2010-2-8 00:05

[posted by wap, platform: GoogleChrome]

我可以找给你看,别缩啊
作者: henvelleng    时间: 2010-2-8 00:09

你又想说明什么?
作者: jun4rui    时间: 2010-2-8 00:10

[posted by wap, platform: GoogleChrome]

我没啥好说的,我想说的,想贴的,都做完啦,睡觉,你们继续
作者: henvelleng    时间: 2010-2-8 00:15

微软贡献过代码本来就是一个几乎是网上路人皆知的事情,我想以此来说明1.1%意味着什么。(我觉得用这种方式来为自己说的话解释意图很多余)
作者: lijgame    时间: 2010-2-8 00:24

[posted by wap, platform: iPhone]
引用:
jun4rui 发表于 2010-2-8 00:10


我没啥好说的,我想说的,想贴的,都做完啦,睡觉,你们继续
你太有耐心了
网络就是这样,有些人在辩论的时候可以不讲逻辑,战线无限拉长,这个话题没词了马上换一个还能够理直气壮仿佛自己赢了。
东一枪,西一炮的,很快你就觉得脱力了
作者: jun4rui    时间: 2010-2-8 07:46

[posted by wap, platform: Nokia (E71)]

是啊,谎言揭穿还要死撑,当初战区多少人就这样,其实不还是自己的嘴脸大家都看到了。

前面一口一口的google没有回馈开源社区云云,哈哈哈,早上起来疼打落水狗!
作者: masterfish    时间: 2010-2-8 14:29

这贴争到现在已经落入咬文嚼字了,最后的下场难免就是一团浆糊
其实我们还是要看看重点:
1、存在许多的操作系统,linux几乎是唯一的在内核上坚持GPL的OS了,为什么那么顽固?就像有朋友说的,freeBSD随便你艹,Windows足够封闭,这些都是选择。而Linux的社团则是咬定了开源这个东西,这就是他们这个社团的精神支撑,文化支柱,讲白了,我甚至怀疑,他们宁愿没有现在那么受人关注,也要坚持这个原则
2、google为什么被喷?不是他们不贡献,我想上面大家都看到了,而是他的做法导致驱动厂商可以不用提交开源代码,这个实际上会导致整个linux社区的分裂,也就是说google虽然是合法的,但是其行为包庇和助长了非法的分裂主义行为(StarWar?),这是无法容忍的。
3、综合上面,其实我就觉得,以google这样的强大的公司,还要受Linux这帮“顽固分子”的气干嘛?自己发明一套东西不好吗?干脆尘归尘,土归土




欢迎光临 TGFC Lifestyle (http://club.tgfcer.com/) Powered by Discuz! 6.0.0