h*c
2 楼
一条路 海角天涯
两颗心 相依相伴
风吹不走誓言
雨打不湿浪漫
意济苍生苦与痛
情牵天下喜与乐
一条路 千山万水
两颗星 无怨无悔
风吹不走誓言
雨打不湿浪漫
意济苍生苦与痛
情牵天下喜与乐
明月清风相思
丽日百草也多情
两颗心长相伴
你我写下爱的神话
明月清风相思
丽日百草也多情
康美情长相恋
你我写下爱的神话
两颗心 相依相伴
风吹不走誓言
雨打不湿浪漫
意济苍生苦与痛
情牵天下喜与乐
一条路 千山万水
两颗星 无怨无悔
风吹不走誓言
雨打不湿浪漫
意济苍生苦与痛
情牵天下喜与乐
明月清风相思
丽日百草也多情
两颗心长相伴
你我写下爱的神话
明月清风相思
丽日百草也多情
康美情长相恋
你我写下爱的神话
n*1
3 楼
如果你把android算成linux,那linux早就普及了。 Torvalds这种务实派就是这么看的
,这哥们还买了CB pixel。
如果偏要说Gnome/Kde这类Stallman一系的才算, 那你就要等到共产主义统一世界了。
打个比方,生产者可以接受的OS可用度是80%的话, 那普通用户必须要到99%才会满意。
而为了提高这19%的可用度所需要付出的努力可能比已有的80%还要多。
换句话说,普通用户能力实在太弱, 而且喜欢吹毛求疵。开源社区根本无力迎合小白
鼠的各种无厘头要求。所以普通用户只能被MS/Apple宰一笔, 换取那个19%.
唯一的希望就是将来Web一桶浆糊, 这样啥系统都不重要了。
,这哥们还买了CB pixel。
如果偏要说Gnome/Kde这类Stallman一系的才算, 那你就要等到共产主义统一世界了。
打个比方,生产者可以接受的OS可用度是80%的话, 那普通用户必须要到99%才会满意。
而为了提高这19%的可用度所需要付出的努力可能比已有的80%还要多。
换句话说,普通用户能力实在太弱, 而且喜欢吹毛求疵。开源社区根本无力迎合小白
鼠的各种无厘头要求。所以普通用户只能被MS/Apple宰一笔, 换取那个19%.
唯一的希望就是将来Web一桶浆糊, 这样啥系统都不重要了。
n*7
4 楼
你跟我说的有偏差
首先我主要说桌面系统。要是桌面上来个类似android这样流行的linux,当然算普及了
。我没RMS那么偏执,用个电脑还要开源bios
其次我不光指这些application了,而是更广泛的方面,比如对硬件的优化之类的,这
也是我问省电distro的原因。
这个问题其实就两个基本原因
1.硬件驱动,厂商不开源
2.开源社区的态度,对易用性不看中。这个态度没有贬义,本来做开源就是做自己愿意
贡献的东西,而不是刻意迎合市场。但是这样也让本来可以大众的东西变小众了。
首先我主要说桌面系统。要是桌面上来个类似android这样流行的linux,当然算普及了
。我没RMS那么偏执,用个电脑还要开源bios
其次我不光指这些application了,而是更广泛的方面,比如对硬件的优化之类的,这
也是我问省电distro的原因。
这个问题其实就两个基本原因
1.硬件驱动,厂商不开源
2.开源社区的态度,对易用性不看中。这个态度没有贬义,本来做开源就是做自己愿意
贡献的东西,而不是刻意迎合市场。但是这样也让本来可以大众的东西变小众了。
n*1
5 楼
其实驱动问题也是因为开源社区精力不足. 理论上来说内核是可以有闭源驱动的, 就像
windows一样.
Torvalds坚持内核驱动开源, 不是因为意识形态, 而是因为linux是单内核,闭源驱动参
差不齐容易影响内核稳定性/安全性, 造成win98那种动不动就蓝屏的效果.
windows当年为了硬件驱动稳定和软件向后兼容, 花费了无数精力, 甚至主动帮其他
adobe之类的商业公司改代码. 好处就是屎一样的win32软件/驱动都能在xp/vista/win7
里面跑得好好的(linux经常有abi不兼容情况,就像前几天有人问glibc),但为了后兼容
不得不保留大量的遗留代码, 于是windows越来越臃肿. 这个是开源界绝对无法接受的.
Apple的驱动好是开挂作弊.
windows一样.
Torvalds坚持内核驱动开源, 不是因为意识形态, 而是因为linux是单内核,闭源驱动参
差不齐容易影响内核稳定性/安全性, 造成win98那种动不动就蓝屏的效果.
windows当年为了硬件驱动稳定和软件向后兼容, 花费了无数精力, 甚至主动帮其他
adobe之类的商业公司改代码. 好处就是屎一样的win32软件/驱动都能在xp/vista/win7
里面跑得好好的(linux经常有abi不兼容情况,就像前几天有人问glibc),但为了后兼容
不得不保留大量的遗留代码, 于是windows越来越臃肿. 这个是开源界绝对无法接受的.
Apple的驱动好是开挂作弊.
S*A
6 楼
Torvalds 在什么地方说过不是意识形态问题?有引用没有?
这个绝对不仅仅是稳定性的问题,而是 Torvalds 希望有互惠互利。
用了 Linux 就希望有改进的话就要回馈。
【在 n****1 的大作中提到】
: 其实驱动问题也是因为开源社区精力不足. 理论上来说内核是可以有闭源驱动的, 就像
: windows一样.
: Torvalds坚持内核驱动开源, 不是因为意识形态, 而是因为linux是单内核,闭源驱动参
: 差不齐容易影响内核稳定性/安全性, 造成win98那种动不动就蓝屏的效果.
: windows当年为了硬件驱动稳定和软件向后兼容, 花费了无数精力, 甚至主动帮其他
: adobe之类的商业公司改代码. 好处就是屎一样的win32软件/驱动都能在xp/vista/win7
: 里面跑得好好的(linux经常有abi不兼容情况,就像前几天有人问glibc),但为了后兼容
: 不得不保留大量的遗留代码, 于是windows越来越臃肿. 这个是开源界绝对无法接受的.
: Apple的驱动好是开挂作弊.
b*s
7 楼
对,将来界面都web化,底下是设备里的linux加网络上的云,微软起码前景不是很妙
【在 n****1 的大作中提到】
: 如果你把android算成linux,那linux早就普及了。 Torvalds这种务实派就是这么看的
: ,这哥们还买了CB pixel。
: 如果偏要说Gnome/Kde这类Stallman一系的才算, 那你就要等到共产主义统一世界了。
: 打个比方,生产者可以接受的OS可用度是80%的话, 那普通用户必须要到99%才会满意。
: 而为了提高这19%的可用度所需要付出的努力可能比已有的80%还要多。
: 换句话说,普通用户能力实在太弱, 而且喜欢吹毛求疵。开源社区根本无力迎合小白
: 鼠的各种无厘头要求。所以普通用户只能被MS/Apple宰一笔, 换取那个19%.
: 唯一的希望就是将来Web一桶浆糊, 这样啥系统都不重要了。
【在 n****1 的大作中提到】
: 如果你把android算成linux,那linux早就普及了。 Torvalds这种务实派就是这么看的
: ,这哥们还买了CB pixel。
: 如果偏要说Gnome/Kde这类Stallman一系的才算, 那你就要等到共产主义统一世界了。
: 打个比方,生产者可以接受的OS可用度是80%的话, 那普通用户必须要到99%才会满意。
: 而为了提高这19%的可用度所需要付出的努力可能比已有的80%还要多。
: 换句话说,普通用户能力实在太弱, 而且喜欢吹毛求疵。开源社区根本无力迎合小白
: 鼠的各种无厘头要求。所以普通用户只能被MS/Apple宰一笔, 换取那个19%.
: 唯一的希望就是将来Web一桶浆糊, 这样啥系统都不重要了。
b*s
8 楼
最麻烦的显卡驱动会保持和其他平台的同步更新,主要就是steam os带来的
win7
的.
【在 n****1 的大作中提到】
: 其实驱动问题也是因为开源社区精力不足. 理论上来说内核是可以有闭源驱动的, 就像
: windows一样.
: Torvalds坚持内核驱动开源, 不是因为意识形态, 而是因为linux是单内核,闭源驱动参
: 差不齐容易影响内核稳定性/安全性, 造成win98那种动不动就蓝屏的效果.
: windows当年为了硬件驱动稳定和软件向后兼容, 花费了无数精力, 甚至主动帮其他
: adobe之类的商业公司改代码. 好处就是屎一样的win32软件/驱动都能在xp/vista/win7
: 里面跑得好好的(linux经常有abi不兼容情况,就像前几天有人问glibc),但为了后兼容
: 不得不保留大量的遗留代码, 于是windows越来越臃肿. 这个是开源界绝对无法接受的.
: Apple的驱动好是开挂作弊.
win7
的.
【在 n****1 的大作中提到】
: 其实驱动问题也是因为开源社区精力不足. 理论上来说内核是可以有闭源驱动的, 就像
: windows一样.
: Torvalds坚持内核驱动开源, 不是因为意识形态, 而是因为linux是单内核,闭源驱动参
: 差不齐容易影响内核稳定性/安全性, 造成win98那种动不动就蓝屏的效果.
: windows当年为了硬件驱动稳定和软件向后兼容, 花费了无数精力, 甚至主动帮其他
: adobe之类的商业公司改代码. 好处就是屎一样的win32软件/驱动都能在xp/vista/win7
: 里面跑得好好的(linux经常有abi不兼容情况,就像前几天有人问glibc),但为了后兼容
: 不得不保留大量的遗留代码, 于是windows越来越臃肿. 这个是开源界绝对无法接受的.
: Apple的驱动好是开挂作弊.
n*1
9 楼
之前在lwn上读过一些, 好像他对闭源驱动最大的意见在于难以debug
驱动程序这种活又脏又累, 而且没有多大复用性, 其价值根本无法同内核里的其他核心
代码相比. Torvalds一搞软件的, 没必要在硬件驱动上要求互惠互利.
其实丫最希望的就是把这些驱动通通踢到userspacce里面去,然后就眼不见心不烦.
Linux的显卡驱动基本都是用户态的, 被用户骂了这么多年, 内核也就最近才加了个DRI.
【在 S*A 的大作中提到】
:
: Torvalds 在什么地方说过不是意识形态问题?有引用没有?
: 这个绝对不仅仅是稳定性的问题,而是 Torvalds 希望有互惠互利。
: 用了 Linux 就希望有改进的话就要回馈。
驱动程序这种活又脏又累, 而且没有多大复用性, 其价值根本无法同内核里的其他核心
代码相比. Torvalds一搞软件的, 没必要在硬件驱动上要求互惠互利.
其实丫最希望的就是把这些驱动通通踢到userspacce里面去,然后就眼不见心不烦.
Linux的显卡驱动基本都是用户态的, 被用户骂了这么多年, 内核也就最近才加了个DRI.
【在 S*A 的大作中提到】
:
: Torvalds 在什么地方说过不是意识形态问题?有引用没有?
: 这个绝对不仅仅是稳定性的问题,而是 Torvalds 希望有互惠互利。
: 用了 Linux 就希望有改进的话就要回馈。
r*y
11 楼
android不算linux算什么呢?:-)
【在 n****1 的大作中提到】
: 如果你把android算成linux,那linux早就普及了。 Torvalds这种务实派就是这么看的
: ,这哥们还买了CB pixel。
: 如果偏要说Gnome/Kde这类Stallman一系的才算, 那你就要等到共产主义统一世界了。
: 打个比方,生产者可以接受的OS可用度是80%的话, 那普通用户必须要到99%才会满意。
: 而为了提高这19%的可用度所需要付出的努力可能比已有的80%还要多。
: 换句话说,普通用户能力实在太弱, 而且喜欢吹毛求疵。开源社区根本无力迎合小白
: 鼠的各种无厘头要求。所以普通用户只能被MS/Apple宰一笔, 换取那个19%.
: 唯一的希望就是将来Web一桶浆糊, 这样啥系统都不重要了。
【在 n****1 的大作中提到】
: 如果你把android算成linux,那linux早就普及了。 Torvalds这种务实派就是这么看的
: ,这哥们还买了CB pixel。
: 如果偏要说Gnome/Kde这类Stallman一系的才算, 那你就要等到共产主义统一世界了。
: 打个比方,生产者可以接受的OS可用度是80%的话, 那普通用户必须要到99%才会满意。
: 而为了提高这19%的可用度所需要付出的努力可能比已有的80%还要多。
: 换句话说,普通用户能力实在太弱, 而且喜欢吹毛求疵。开源社区根本无力迎合小白
: 鼠的各种无厘头要求。所以普通用户只能被MS/Apple宰一笔, 换取那个19%.
: 唯一的希望就是将来Web一桶浆糊, 这样啥系统都不重要了。
w*g
13 楼
KDE/gnome桌面普及还是算了吧。PC的时代已经过去了。
【在 n****1 的大作中提到】
: 如果你把android算成linux,那linux早就普及了。 Torvalds这种务实派就是这么看的
: ,这哥们还买了CB pixel。
: 如果偏要说Gnome/Kde这类Stallman一系的才算, 那你就要等到共产主义统一世界了。
: 打个比方,生产者可以接受的OS可用度是80%的话, 那普通用户必须要到99%才会满意。
: 而为了提高这19%的可用度所需要付出的努力可能比已有的80%还要多。
: 换句话说,普通用户能力实在太弱, 而且喜欢吹毛求疵。开源社区根本无力迎合小白
: 鼠的各种无厘头要求。所以普通用户只能被MS/Apple宰一笔, 换取那个19%.
: 唯一的希望就是将来Web一桶浆糊, 这样啥系统都不重要了。
【在 n****1 的大作中提到】
: 如果你把android算成linux,那linux早就普及了。 Torvalds这种务实派就是这么看的
: ,这哥们还买了CB pixel。
: 如果偏要说Gnome/Kde这类Stallman一系的才算, 那你就要等到共产主义统一世界了。
: 打个比方,生产者可以接受的OS可用度是80%的话, 那普通用户必须要到99%才会满意。
: 而为了提高这19%的可用度所需要付出的努力可能比已有的80%还要多。
: 换句话说,普通用户能力实在太弱, 而且喜欢吹毛求疵。开源社区根本无力迎合小白
: 鼠的各种无厘头要求。所以普通用户只能被MS/Apple宰一笔, 换取那个19%.
: 唯一的希望就是将来Web一桶浆糊, 这样啥系统都不重要了。
g*r
15 楼
linux/unix 本来就不是为普通桌面用户设计的。就正如windows就不是为运行服务器设
计的。何必以己之短攻人之长呢。
Mac OS是例外,专门为小白用户设计,同时是Unix系统,但那可是砸了好多银子下去才
成的。但正经用mac跑服务器还是用的少。
计的。何必以己之短攻人之长呢。
Mac OS是例外,专门为小白用户设计,同时是Unix系统,但那可是砸了好多银子下去才
成的。但正经用mac跑服务器还是用的少。
S*A
16 楼
所以我觉得这个不是 Torvalds 本人原意,是外人解读的。
这个讨论 Torvalds 本人有说过的。我记得基本上就是说,
给人太多自由,像 BSD 那样大家就会贪心,最后妨碍了
发展。
其他的我就不评价了。
DRI.
【在 n****1 的大作中提到】
: 之前在lwn上读过一些, 好像他对闭源驱动最大的意见在于难以debug
: 驱动程序这种活又脏又累, 而且没有多大复用性, 其价值根本无法同内核里的其他核心
: 代码相比. Torvalds一搞软件的, 没必要在硬件驱动上要求互惠互利.
: 其实丫最希望的就是把这些驱动通通踢到userspacce里面去,然后就眼不见心不烦.
: Linux的显卡驱动基本都是用户态的, 被用户骂了这么多年, 内核也就最近才加了个DRI.
这个讨论 Torvalds 本人有说过的。我记得基本上就是说,
给人太多自由,像 BSD 那样大家就会贪心,最后妨碍了
发展。
其他的我就不评价了。
DRI.
【在 n****1 的大作中提到】
: 之前在lwn上读过一些, 好像他对闭源驱动最大的意见在于难以debug
: 驱动程序这种活又脏又累, 而且没有多大复用性, 其价值根本无法同内核里的其他核心
: 代码相比. Torvalds一搞软件的, 没必要在硬件驱动上要求互惠互利.
: 其实丫最希望的就是把这些驱动通通踢到userspacce里面去,然后就眼不见心不烦.
: Linux的显卡驱动基本都是用户态的, 被用户骂了这么多年, 内核也就最近才加了个DRI.
n*1
18 楼
Some kernel contributors have even called for an outright ban of these
binary modules, which has met with resistance from the more practical-minded
in the Linux community, notably by Linus Torvalds himself, who reportedly
called it both "shortsighted" and "stupid."
http://arstechnica.com/business/2006/12/8428/
【在 S*A 的大作中提到】
: 所以我觉得这个不是 Torvalds 本人原意,是外人解读的。
: 这个讨论 Torvalds 本人有说过的。我记得基本上就是说,
: 给人太多自由,像 BSD 那样大家就会贪心,最后妨碍了
: 发展。
: 其他的我就不评价了。
:
: DRI.
binary modules, which has met with resistance from the more practical-minded
in the Linux community, notably by Linus Torvalds himself, who reportedly
called it both "shortsighted" and "stupid."
http://arstechnica.com/business/2006/12/8428/
【在 S*A 的大作中提到】
: 所以我觉得这个不是 Torvalds 本人原意,是外人解读的。
: 这个讨论 Torvalds 本人有说过的。我记得基本上就是说,
: 给人太多自由,像 BSD 那样大家就会贪心,最后妨碍了
: 发展。
: 其他的我就不评价了。
:
: DRI.
S*A
20 楼
你的逻辑明显有问题好不好。
binary module 导致难调试 叫做 A。
意识形态的考虑叫做 B。
Linux 内核开源叫做 C。
你的推理结果是,因为 A 导致 C, 所以 !B。
这个推理过程是错的。
A 是 C 的原因,并不能排除 B 也是 C 的原因好不好?
我举个例子,吃菜可以饱,吃饭也可以饱。
我们已知某同学饱了,而且有吃菜,然后能够得出
某同学没有吃饭的结论?
我知道 Linus 选择开源是有考虑回馈和发展的。你不
要把你自己的私货塞給 Linus 来说好不好。
你要举例论证的话,要举例说 Linus 就是说我不管
意识形态,我要开源就是要好调试一个原因就够了。
我知道 Linus 本人恰恰是关心这个的。
minded
【在 n****1 的大作中提到】
: Some kernel contributors have even called for an outright ban of these
: binary modules, which has met with resistance from the more practical-minded
: in the Linux community, notably by Linus Torvalds himself, who reportedly
: called it both "shortsighted" and "stupid."
: http://arstechnica.com/business/2006/12/8428/
binary module 导致难调试 叫做 A。
意识形态的考虑叫做 B。
Linux 内核开源叫做 C。
你的推理结果是,因为 A 导致 C, 所以 !B。
这个推理过程是错的。
A 是 C 的原因,并不能排除 B 也是 C 的原因好不好?
我举个例子,吃菜可以饱,吃饭也可以饱。
我们已知某同学饱了,而且有吃菜,然后能够得出
某同学没有吃饭的结论?
我知道 Linus 选择开源是有考虑回馈和发展的。你不
要把你自己的私货塞給 Linus 来说好不好。
你要举例论证的话,要举例说 Linus 就是说我不管
意识形态,我要开源就是要好调试一个原因就够了。
我知道 Linus 本人恰恰是关心这个的。
minded
【在 n****1 的大作中提到】
: Some kernel contributors have even called for an outright ban of these
: binary modules, which has met with resistance from the more practical-minded
: in the Linux community, notably by Linus Torvalds himself, who reportedly
: called it both "shortsighted" and "stupid."
: http://arstechnica.com/business/2006/12/8428/
n*1
21 楼
S*A
22 楼
我反对的是你这句原话:
“ Torvalds坚持内核驱动开源, 不是因为意识形态, 而是因为linux是单内核,...”
这个是你自己的推断,不是 Linus 的本人原意。理由上面已经讨论过了,
你也拿不出实质支持的论据。
至于什么通用部分和驱动部分,本来就你自己的划分。我也从来没有
说过内核简单一个整体,这个又是你自己給我安上去的。我上面原话那里
说过这个?我发现你很喜欢自己給别人乱推论然后说成是别人说的。
Linus 专门澄清过,GPL 适用于全部的内核代码,没有什么驱动和模块
有特例不需要遵守 GPL。有些驱动是同时有 GPL 和 BSD 其他的双重
License。但是内核源代码至少是包括 GPL 的。
【在 n****1 的大作中提到】
: 我只是倾向把内核分为通用部分和驱动部分。 我也坚决同意通用部分必须开源,理由
: 是共享互惠。 但驱动部分没有这个考量。
: 你倒喜欢把内核简单得看成一个整体, 非开即关的。
“ Torvalds坚持内核驱动开源, 不是因为意识形态, 而是因为linux是单内核,...”
这个是你自己的推断,不是 Linus 的本人原意。理由上面已经讨论过了,
你也拿不出实质支持的论据。
至于什么通用部分和驱动部分,本来就你自己的划分。我也从来没有
说过内核简单一个整体,这个又是你自己給我安上去的。我上面原话那里
说过这个?我发现你很喜欢自己給别人乱推论然后说成是别人说的。
Linus 专门澄清过,GPL 适用于全部的内核代码,没有什么驱动和模块
有特例不需要遵守 GPL。有些驱动是同时有 GPL 和 BSD 其他的双重
License。但是内核源代码至少是包括 GPL 的。
【在 n****1 的大作中提到】
: 我只是倾向把内核分为通用部分和驱动部分。 我也坚决同意通用部分必须开源,理由
: 是共享互惠。 但驱动部分没有这个考量。
: 你倒喜欢把内核简单得看成一个整体, 非开即关的。
n*1
23 楼
我上一贴里已经有Linus本人原意了, 里面还有个link到他在mail list上的发文
下面就是Linus自己的post
https://lkml.org/lkml/2006/12/13/370
If a module arguably isn't a derived work, we simply shouldn't try to say
that its authors have to conform to our worldview.
We should make decisions on TECHNICAL MERIT. And this one is clearly being
pushed on anything but.
I happen to believe that there shouldn't be technical measures that keep
me from watching my DVD or listening to my music on whatever device I damn
well please. Fair use, man. But it should go the other way too: we should
not try to assert _our_ copyright rules on other peoples code that wasn't
derived from ours, or assert _our_ technical measures that keep people from
combining things their way.
另一篇:
http://linuxmafia.com/faq/Kernel/proprietary-kernel-modules.htm
The reason the kernel is exposed in such a LGPLd way when using modules is
simply that there are a lot of kernel device drivers for Unix available, and
they were not all written under Linux. If somebody wants to port his SVR4
driver to Linux but doesn't want to GPL it, I feel that he should have the
right to do that, using modules. After all, the driver wasn't actually
derived from Linux itself: it's a real driver in its own right, so I don't
feel that I have the moral right to force him to switch copyrights.
Now, the above said, I much much prefer GPLd drivers, even if they are
available only as modules. Especially if they were actually originally
written for Linux, I consider it a bit dodgy to not use the GPL (they can
potentially be considered derived works, even if you don't actually link
them into the kernel, per se). But I do not want to force it on people that
arguably are not doing derived work. (It would be rather preposterous to
call the Andrew FileSystem a "derived work" of Linux, for example, so I
think it's perfectly OK to have a AFS module, for example.)
【在 S*A 的大作中提到】
: 我反对的是你这句原话:
: “ Torvalds坚持内核驱动开源, 不是因为意识形态, 而是因为linux是单内核,...”
: 这个是你自己的推断,不是 Linus 的本人原意。理由上面已经讨论过了,
: 你也拿不出实质支持的论据。
: 至于什么通用部分和驱动部分,本来就你自己的划分。我也从来没有
: 说过内核简单一个整体,这个又是你自己給我安上去的。我上面原话那里
: 说过这个?我发现你很喜欢自己給别人乱推论然后说成是别人说的。
: Linus 专门澄清过,GPL 适用于全部的内核代码,没有什么驱动和模块
: 有特例不需要遵守 GPL。有些驱动是同时有 GPL 和 BSD 其他的双重
: License。但是内核源代码至少是包括 GPL 的。
下面就是Linus自己的post
https://lkml.org/lkml/2006/12/13/370
If a module arguably isn't a derived work, we simply shouldn't try to say
that its authors have to conform to our worldview.
We should make decisions on TECHNICAL MERIT. And this one is clearly being
pushed on anything but.
I happen to believe that there shouldn't be technical measures that keep
me from watching my DVD or listening to my music on whatever device I damn
well please. Fair use, man. But it should go the other way too: we should
not try to assert _our_ copyright rules on other peoples code that wasn't
derived from ours, or assert _our_ technical measures that keep people from
combining things their way.
另一篇:
http://linuxmafia.com/faq/Kernel/proprietary-kernel-modules.htm
The reason the kernel is exposed in such a LGPLd way when using modules is
simply that there are a lot of kernel device drivers for Unix available, and
they were not all written under Linux. If somebody wants to port his SVR4
driver to Linux but doesn't want to GPL it, I feel that he should have the
right to do that, using modules. After all, the driver wasn't actually
derived from Linux itself: it's a real driver in its own right, so I don't
feel that I have the moral right to force him to switch copyrights.
Now, the above said, I much much prefer GPLd drivers, even if they are
available only as modules. Especially if they were actually originally
written for Linux, I consider it a bit dodgy to not use the GPL (they can
potentially be considered derived works, even if you don't actually link
them into the kernel, per se). But I do not want to force it on people that
arguably are not doing derived work. (It would be rather preposterous to
call the Andrew FileSystem a "derived work" of Linux, for example, so I
think it's perfectly OK to have a AFS module, for example.)
【在 S*A 的大作中提到】
: 我反对的是你这句原话:
: “ Torvalds坚持内核驱动开源, 不是因为意识形态, 而是因为linux是单内核,...”
: 这个是你自己的推断,不是 Linus 的本人原意。理由上面已经讨论过了,
: 你也拿不出实质支持的论据。
: 至于什么通用部分和驱动部分,本来就你自己的划分。我也从来没有
: 说过内核简单一个整体,这个又是你自己給我安上去的。我上面原话那里
: 说过这个?我发现你很喜欢自己給别人乱推论然后说成是别人说的。
: Linus 专门澄清过,GPL 适用于全部的内核代码,没有什么驱动和模块
: 有特例不需要遵守 GPL。有些驱动是同时有 GPL 和 BSD 其他的双重
: License。但是内核源代码至少是包括 GPL 的。
S*A
25 楼
好,这才开始靠点谱了。
你有没有注意到这里 Linus 讨论的一个关键字是 derived work。
Linus 不介意的一个重要限定语是非 derived work 。 这个和内核
的 GPL 是不矛盾的。这个恰恰印证了整个 kernel 代码是在 GPL
覆盖下的。 Linus 并没有給模块开特例。因为 GPL 只要求
derived work 部分更改需要开源出来。
你搬出来所有的讨论都是限定在非 derivered work下面的。
而到了你前面说的话就变成了驱动都不需要开源。
你有没有注意到你偷换了概念,把 “non derived work" 换成了
“驱动程序”。
所以关键的划分在于是不是 ”derived work“, 而不是内核
本身还是驱动程序。你看看你前面说的那里提到了”derived work“
了,是不是你前面的说法不太不精确?
需要已 ”derived work“ 来划分恰恰是反映了内核 GPL 的本质。
而不是你所说的驱动或者模块就不需要讲究开源。
【在 n****1 的大作中提到】
: 我上一贴里已经有Linus本人原意了, 里面还有个link到他在mail list上的发文
: 下面就是Linus自己的post
: https://lkml.org/lkml/2006/12/13/370
: If a module arguably isn't a derived work, we simply shouldn't try to say
: that its authors have to conform to our worldview.
: We should make decisions on TECHNICAL MERIT. And this one is clearly being
: pushed on anything but.
: I happen to believe that there shouldn't be technical measures that keep
: me from watching my DVD or listening to my music on whatever device I damn
: well please. Fair use, man. But it should go the other way too: we should
你有没有注意到这里 Linus 讨论的一个关键字是 derived work。
Linus 不介意的一个重要限定语是非 derived work 。 这个和内核
的 GPL 是不矛盾的。这个恰恰印证了整个 kernel 代码是在 GPL
覆盖下的。 Linus 并没有給模块开特例。因为 GPL 只要求
derived work 部分更改需要开源出来。
你搬出来所有的讨论都是限定在非 derivered work下面的。
而到了你前面说的话就变成了驱动都不需要开源。
你有没有注意到你偷换了概念,把 “non derived work" 换成了
“驱动程序”。
所以关键的划分在于是不是 ”derived work“, 而不是内核
本身还是驱动程序。你看看你前面说的那里提到了”derived work“
了,是不是你前面的说法不太不精确?
需要已 ”derived work“ 来划分恰恰是反映了内核 GPL 的本质。
而不是你所说的驱动或者模块就不需要讲究开源。
【在 n****1 的大作中提到】
: 我上一贴里已经有Linus本人原意了, 里面还有个link到他在mail list上的发文
: 下面就是Linus自己的post
: https://lkml.org/lkml/2006/12/13/370
: If a module arguably isn't a derived work, we simply shouldn't try to say
: that its authors have to conform to our worldview.
: We should make decisions on TECHNICAL MERIT. And this one is clearly being
: pushed on anything but.
: I happen to believe that there shouldn't be technical measures that keep
: me from watching my DVD or listening to my music on whatever device I damn
: well please. Fair use, man. But it should go the other way too: we should
x*a
26 楼
android都算?MacOSX是不是也应该算
【在 n****1 的大作中提到】
: 如果你把android算成linux,那linux早就普及了。 Torvalds这种务实派就是这么看的
: ,这哥们还买了CB pixel。
: 如果偏要说Gnome/Kde这类Stallman一系的才算, 那你就要等到共产主义统一世界了。
: 打个比方,生产者可以接受的OS可用度是80%的话, 那普通用户必须要到99%才会满意。
: 而为了提高这19%的可用度所需要付出的努力可能比已有的80%还要多。
: 换句话说,普通用户能力实在太弱, 而且喜欢吹毛求疵。开源社区根本无力迎合小白
: 鼠的各种无厘头要求。所以普通用户只能被MS/Apple宰一笔, 换取那个19%.
: 唯一的希望就是将来Web一桶浆糊, 这样啥系统都不重要了。
【在 n****1 的大作中提到】
: 如果你把android算成linux,那linux早就普及了。 Torvalds这种务实派就是这么看的
: ,这哥们还买了CB pixel。
: 如果偏要说Gnome/Kde这类Stallman一系的才算, 那你就要等到共产主义统一世界了。
: 打个比方,生产者可以接受的OS可用度是80%的话, 那普通用户必须要到99%才会满意。
: 而为了提高这19%的可用度所需要付出的努力可能比已有的80%还要多。
: 换句话说,普通用户能力实在太弱, 而且喜欢吹毛求疵。开源社区根本无力迎合小白
: 鼠的各种无厘头要求。所以普通用户只能被MS/Apple宰一笔, 换取那个19%.
: 唯一的希望就是将来Web一桶浆糊, 这样啥系统都不重要了。
n*1
27 楼
驱动程序不就是响应些interrupt,读写某个区域的内存么. 硬件驱动代码的很大一部分
都是从windows版本的驱动里面copy过来的, 因为硬件自己的逻辑都一样. 这些驱动只
是用到了一些kernel头文件用来整合入内核而已, derive了啥代码? 如果驱动都算
derivative work,那啥程序不算?
所以我一直认为绝大部分驱动是non-derivative work的子集。如果你可以举出反例我
欣然接受。
【在 S*A 的大作中提到】
: 好,这才开始靠点谱了。
: 你有没有注意到这里 Linus 讨论的一个关键字是 derived work。
: Linus 不介意的一个重要限定语是非 derived work 。 这个和内核
: 的 GPL 是不矛盾的。这个恰恰印证了整个 kernel 代码是在 GPL
: 覆盖下的。 Linus 并没有給模块开特例。因为 GPL 只要求
: derived work 部分更改需要开源出来。
: 你搬出来所有的讨论都是限定在非 derivered work下面的。
: 而到了你前面说的话就变成了驱动都不需要开源。
: 你有没有注意到你偷换了概念,把 “non derived work" 换成了
: “驱动程序”。
都是从windows版本的驱动里面copy过来的, 因为硬件自己的逻辑都一样. 这些驱动只
是用到了一些kernel头文件用来整合入内核而已, derive了啥代码? 如果驱动都算
derivative work,那啥程序不算?
所以我一直认为绝大部分驱动是non-derivative work的子集。如果你可以举出反例我
欣然接受。
【在 S*A 的大作中提到】
: 好,这才开始靠点谱了。
: 你有没有注意到这里 Linus 讨论的一个关键字是 derived work。
: Linus 不介意的一个重要限定语是非 derived work 。 这个和内核
: 的 GPL 是不矛盾的。这个恰恰印证了整个 kernel 代码是在 GPL
: 覆盖下的。 Linus 并没有給模块开特例。因为 GPL 只要求
: derived work 部分更改需要开源出来。
: 你搬出来所有的讨论都是限定在非 derivered work下面的。
: 而到了你前面说的话就变成了驱动都不需要开源。
: 你有没有注意到你偷换了概念,把 “non derived work" 换成了
: “驱动程序”。
S*A
28 楼
好,我门现在总结一下,你现在也承认这个内核的开源游戏规则就是 GPL。
问题事在 GPL 规则下如何可以通过 non-derived work 来不发布源代码。
基本上,你的理解 “driver is non derivative work subset" 是非常错误的。
首先,你能举例那些驱动是从 windows copy 过来的?写 linux 驱动的
人很多是没有访问到 windows 驱动的,甚至不是厂商的员工, 连完整的
硬件 Spec 都没有,更不用说 Copy 了。
我給你举个例子,Intel 的 GPU driver team, 和 Windows 是完全不同的
team, 相互不能看到代码。完全没有代码共享。而 Intel 的 GPU driver,
用到了非常深入的,只有 Linux 才有的内存访问界面,因为 Intel 没有自己
的显卡内存。有很多内存 swapping 的代码是专门针对 Intel 这个显卡改动
的,所以 Intel 的显卡驱动必须要 cover 在 GPL 下面。
derived work 是不好划分的一件事,我时间不多就不详细说了。
一些简单的公认的东西说一下。内核的 kernel symbol, 就分 GPL symbol
和通用 symbol 一说。如果你需要用到 GPL symbol,这个几乎就是很强
的论据你的驱动是 derived work。
其他比较隐晦的游戏规则和常见犯规行为我有空慢慢讨论。
你如果在 driver 上随便改些代码,肯定是 derived work。
要写个全新的不是 derived work 的驱动是非常不容易的。
【在 n****1 的大作中提到】
: 驱动程序不就是响应些interrupt,读写某个区域的内存么. 硬件驱动代码的很大一部分
: 都是从windows版本的驱动里面copy过来的, 因为硬件自己的逻辑都一样. 这些驱动只
: 是用到了一些kernel头文件用来整合入内核而已, derive了啥代码? 如果驱动都算
: derivative work,那啥程序不算?
: 所以我一直认为绝大部分驱动是non-derivative work的子集。如果你可以举出反例我
: 欣然接受。
问题事在 GPL 规则下如何可以通过 non-derived work 来不发布源代码。
基本上,你的理解 “driver is non derivative work subset" 是非常错误的。
首先,你能举例那些驱动是从 windows copy 过来的?写 linux 驱动的
人很多是没有访问到 windows 驱动的,甚至不是厂商的员工, 连完整的
硬件 Spec 都没有,更不用说 Copy 了。
我給你举个例子,Intel 的 GPU driver team, 和 Windows 是完全不同的
team, 相互不能看到代码。完全没有代码共享。而 Intel 的 GPU driver,
用到了非常深入的,只有 Linux 才有的内存访问界面,因为 Intel 没有自己
的显卡内存。有很多内存 swapping 的代码是专门针对 Intel 这个显卡改动
的,所以 Intel 的显卡驱动必须要 cover 在 GPL 下面。
derived work 是不好划分的一件事,我时间不多就不详细说了。
一些简单的公认的东西说一下。内核的 kernel symbol, 就分 GPL symbol
和通用 symbol 一说。如果你需要用到 GPL symbol,这个几乎就是很强
的论据你的驱动是 derived work。
其他比较隐晦的游戏规则和常见犯规行为我有空慢慢讨论。
你如果在 driver 上随便改些代码,肯定是 derived work。
要写个全新的不是 derived work 的驱动是非常不容易的。
【在 n****1 的大作中提到】
: 驱动程序不就是响应些interrupt,读写某个区域的内存么. 硬件驱动代码的很大一部分
: 都是从windows版本的驱动里面copy过来的, 因为硬件自己的逻辑都一样. 这些驱动只
: 是用到了一些kernel头文件用来整合入内核而已, derive了啥代码? 如果驱动都算
: derivative work,那啥程序不算?
: 所以我一直认为绝大部分驱动是non-derivative work的子集。如果你可以举出反例我
: 欣然接受。
n*1
29 楼
我的这个印象来自网卡。 记得当年linux下网卡原生驱动很少, 很多人都是用windows
驱动+ndiswrapper来使用网卡的。可见至少对于网卡来说两个系统代码是可以高度重用
的。 当然现在高性能网卡流行DMA,我就不清楚了。
显卡驱动大部分都是在用户态实现的,amd/nvidia都有binary blob. intel没有显存所
以需要内核给它开小灶, 这个对内核其他部分很intrusive, 当然该开源。
但不见得其他乱七八糟的驱动都要这样, 比如笔记本上Fn键所引出的特殊键盘驱动,
风扇根据温度调速的驱动, 屏幕亮度驱动, 都看不出有derivative work的痕迹。
【在 S*A 的大作中提到】
: 好,我门现在总结一下,你现在也承认这个内核的开源游戏规则就是 GPL。
: 问题事在 GPL 规则下如何可以通过 non-derived work 来不发布源代码。
: 基本上,你的理解 “driver is non derivative work subset" 是非常错误的。
: 首先,你能举例那些驱动是从 windows copy 过来的?写 linux 驱动的
: 人很多是没有访问到 windows 驱动的,甚至不是厂商的员工, 连完整的
: 硬件 Spec 都没有,更不用说 Copy 了。
: 我給你举个例子,Intel 的 GPU driver team, 和 Windows 是完全不同的
: team, 相互不能看到代码。完全没有代码共享。而 Intel 的 GPU driver,
: 用到了非常深入的,只有 Linux 才有的内存访问界面,因为 Intel 没有自己
: 的显卡内存。有很多内存 swapping 的代码是专门针对 Intel 这个显卡改动
驱动+ndiswrapper来使用网卡的。可见至少对于网卡来说两个系统代码是可以高度重用
的。 当然现在高性能网卡流行DMA,我就不清楚了。
显卡驱动大部分都是在用户态实现的,amd/nvidia都有binary blob. intel没有显存所
以需要内核给它开小灶, 这个对内核其他部分很intrusive, 当然该开源。
但不见得其他乱七八糟的驱动都要这样, 比如笔记本上Fn键所引出的特殊键盘驱动,
风扇根据温度调速的驱动, 屏幕亮度驱动, 都看不出有derivative work的痕迹。
【在 S*A 的大作中提到】
: 好,我门现在总结一下,你现在也承认这个内核的开源游戏规则就是 GPL。
: 问题事在 GPL 规则下如何可以通过 non-derived work 来不发布源代码。
: 基本上,你的理解 “driver is non derivative work subset" 是非常错误的。
: 首先,你能举例那些驱动是从 windows copy 过来的?写 linux 驱动的
: 人很多是没有访问到 windows 驱动的,甚至不是厂商的员工, 连完整的
: 硬件 Spec 都没有,更不用说 Copy 了。
: 我給你举个例子,Intel 的 GPU driver team, 和 Windows 是完全不同的
: team, 相互不能看到代码。完全没有代码共享。而 Intel 的 GPU driver,
: 用到了非常深入的,只有 Linux 才有的内存访问界面,因为 Intel 没有自己
: 的显卡内存。有很多内存 swapping 的代码是专门针对 Intel 这个显卡改动
S*A
30 楼
windows
高度重用个头,知道 ndiswrapper 是干什么的吗?是用Linux kernel 的API 来实现了
一套
windows kernel API 兼容的 wrapper。而且这种 wrapper 问题很多,没有可能进入
Linux 官方内核的。源代码完全没有重用,直接搞了windows 仿真的接口进行二进制代码
的接口。而且严格意义上这个不算真正的 driver。例如你要放到 PowerPC 或者其他
CPU
系统这个 ndiswrapper就完全没法用,这就是一个 hack。
你的例子完全是特例的 hack,真正的 native 的网卡驱动需要用很多 Linux 专用的
API。
估计很难做到 derivative clean。
聊显卡你算是撞到枪口上了,大错特错。 AMD/Nvidia 都有及其庞大的 kernel binary
blob。用户态的 OpenGL.so 只不过是把数据包装一下传給核心态下的驱动,真正的
体力活是在核心态完成的,包括最关键的图像任务切换,状态同步和调度。你看看 AMD/
Nvidia 核心驱动的大小你就知道了。你说的大概是 Windows 的驱动,Linux 的驱动绝对
不是这样的。Nvidia 的核心驱动基本上就是个小的操作系统。
,
你这三个例子都非常糟糕。我建议你这样,既然是你据了例子,你去把 kernel 里面这
三个例子的相关驱动代码找出来,然后我门看着代码说话。 你指着源代码可以告诉我为
什么这些东西没有 derivative work, 我可以告诉你为什么有。
BTW,你这三个东西都是 ACPI 做的,所以我感觉你要挖的话就直接把 Linux 的 ACPI
实现驱动給挖出来了。然后你想说这些实现是不依赖于 Linux, 我拭目以待。
【在 n****1 的大作中提到】
: 我的这个印象来自网卡。 记得当年linux下网卡原生驱动很少, 很多人都是用windows
: 驱动+ndiswrapper来使用网卡的。可见至少对于网卡来说两个系统代码是可以高度重用
: 的。 当然现在高性能网卡流行DMA,我就不清楚了。
: 显卡驱动大部分都是在用户态实现的,amd/nvidia都有binary blob. intel没有显存所
: 以需要内核给它开小灶, 这个对内核其他部分很intrusive, 当然该开源。
: 但不见得其他乱七八糟的驱动都要这样, 比如笔记本上Fn键所引出的特殊键盘驱动,
: 风扇根据温度调速的驱动, 屏幕亮度驱动, 都看不出有derivative work的痕迹。
S*A
31 楼
nod101, 我其实不是想针对你死嗑。
你的言论里有很多不精确和错误的地方,我本来也不想管。
如果就是说你自己理解如何如何,那就是你自己的事。
但是你把你的错误理解打着祖师爷的旗子来说成 Linus
如何如何,那我就觉得有必要出来指正一下,以免误导他人。
当然我的理解和我说的也不一定对,同样欢迎大家指正,
深入讨论。
你的言论里有很多不精确和错误的地方,我本来也不想管。
如果就是说你自己理解如何如何,那就是你自己的事。
但是你把你的错误理解打着祖师爷的旗子来说成 Linus
如何如何,那我就觉得有必要出来指正一下,以免误导他人。
当然我的理解和我说的也不一定对,同样欢迎大家指正,
深入讨论。
相关阅读
Chromium's KDE "version".Fedora kernel tokeep questionSkype 开源。。。?可能只是 UI 部分。。求一个WAVE邀请Splash top is goodGoogle是当之无愧的Linux最大用户[zz]emacspython descriptor 问题Suddenly cannot imput chinese using SCIM?ubuntu 9.10 rc来了,有人吃螃蟹么LOL, 10 things you didn't know about orgasm请捐出$10,帮助两个儿童基金会赢得Facebook大奖!Emacs的这些keyboard shortcuts都不是给laptop用的吧?ubuntu 9.10 today!没有router, 只有一个静态ip, 还能vpn吗?求教 shell scriptemerge: (10 of 302)ubuntu9.10发布了人老了,对linux越来越害怕了Ubuntu, Vista, Win7 bootup speed video...