12、 “开放”源代码就是“公开”源代码吗?
以微软为代表的“共享源代码”(Shared
Source)的实质是仅仅公开源代码(且非全部公开)。这是微软为应对“开放源代码运动”而提出的新策略,它与OpenSource最大的不同在于,微软向他的大客户拷贝其绝对机密的Windows
源代码,但用户只能看或提出修改意见,而不能对它有任何修改。
开放源代码与公开源代码的相同之处是二者都保证源代码被公开,即源代码以某种方式为人所知悉。但“开源”与“公开”源代码存在根本的查差别。开源软件的许可人不仅仅提供源代码以供其他人参考,同时还许可其他人可以将软件运行、修改和再授权。更直白的解释就是“公开”源代码只能“看”,“不能用、不能改、更不能再发布”;而“开放”源代码不仅能看,还“能用、能改、能再发布”。
13、 为什么开发者需要了解软件的知识产权?
知识产权是法律赋予人们对智力劳动成果所享有的民事权利。知识产权对软件的创造者而言,可以将知识产权理解为开发者可以在一定期限内对软件享有的独占权或专有权和软件开发者依法享有的其它权利。显然,开发者对成果的独占使用权可以带来各种收益,因此软件不仅是程序员所创造出来的成果,而且是企业的一笔财富。如何使管理和使用软件的知识产权,实现其价值最大化是开发者和企业都关心的问题。开发者可以将自己的智力成果进行各种形式的处理。比如公开软件、出售软件、甚至是将其进行销毁都是开发者的自由。这些自由都是法律所赋予的,其中知识产权法是非常重要的一部分。开发者经常忽视知识产权对自身的价值,多半是由于其将法律给予的自由视作与空气、阳光一样理所当然、天经地义。事实上,不管开发者是不是注意到知识产权法的存在,他的智力成果始终处于法律的保护和管制之下。开发者准备对自己或他人的智力成果进行任何处理之前,都应该考虑该行为是不是符合知识产权规则的要求。
14、 软件相关知识产权主要有哪几类?
最初的知识产权多涵盖的内容比较窄,主要包括版权、专利权和商标权。后来出现一些新型的知识产权,如地理标记权、集成电路布图设计权等等。当然与软件和软件产品关系最密切的还是版权、专利权和商标权。
15、 没有登记的软件受著作权法保护吗?
开发者大多知道软件可以通过申请著作权登记得到保护,实际上,软件从它诞生的那一刻起就已经受到版权法的保护。不管一个软件是不是申请了著作权登记,软件作品的作者都可以对侵犯其著作权的行为采取措施。例如,某公司的软件作品没有进行著作权登记,但是当有人非法复制这个软件时,该公司仍然可以通过法律手段追究非法复制者的责任。16、
在中国有没有软件专利,商业方法软件专利又是什么?关心软件产业的人们都注意到欧盟在2005
年没有通过软件专利法案,但美国的做法对国际规则大趋势的影响力也不得不考虑。即便没有专门的软件专利立法,软件的专利问题依然存在。“凝固”在产品中的软件专利已经为国内很多软件企业所认识。商业方法软件的专利保护最初也是从美国发起的。商业方法软件专利在美国、欧洲和日本的申请和授权十分火爆。中国国内的反映比较消极,企业对商业方法的专利申请尚处在无知状态,专利局的审查指南和政策也没有针对性的反映,专利代理服务机构多是在忙着为外国的申请进行代理。目前,中国涉及到商业方法的软件专利不多,而国外银行以及网络公司在中国申请的有关电子商务方法的专利已经覆盖了中国金融业的基础服务。
17、 软件产品为什么需要许可协议?
我们可以将软件理解为特殊的文字作品,只不过这些文字可以通过一定方法让计算机也可以读懂。作者根据著作权法的规定对作品享有一定程度的独占权,如果作者愿意让其它人共享自己的权利或其它人希望使用这个作品,就必须通过作者对他人进行授权,或者叫做许可。软件产品的所有者有对产品的独占权,包括使用、收益、署名、修改等等内容。如果用户希望合法地使用这个产品就必须获得许可。这个许可可能来自法律的强行规定,例如“合理使用原则”,尽管软件的所有者内心可能十分不情愿;这个许可还可能来自所有者,可能是收费的许可也可能是免费的许可。因此,许可协议也是用户合法使用软件作品的一个凭证。相当于在许可人与被许可人之间签订一个合同来规定双方当事人的权利和义务。通常,这个协议的内容是由许可方拟定的,被许可方和用户只能选择接受或者不接受,因此是一种格式化的合同。
18、 发布开源软件需要许可协议吗?
开源软件与传统软件都是智力成果,在决定以何种方式发布之前,在技术层面是没有任何差别的。不管是封闭源代码还是开放源代码,都是软件的发布者所使用的许可方式的一个内容或条款。许可证的内容可以差别很大:如传统软件许可证只许可用户使用软件但不允许用户再发布软件,同时为许可证的获得设定一些条件(例如收取许可费);如开源软件许可同时许可用户可以再发布软件,同时还对再发布的条件进行了一系列限制(例如GPL
许可协议规定不得使用其它许可证再发布,BSD
协议规定要保留作者的署名权);甚至发布者可以不选择或使用任何许可证、放弃任何对软件的任何权利,许可给其它人最大的自由。然而,就算是这样,还是应当理解为发布者与其他人达成了一个“该软件可以随意使用”的协议。显然,所有的软件作品都是需要许可的,开源软件的发布者对软件如何被使用还有各自的期望和条件,因此发布开源软件必然需要许可证,只不过许可的内容可以由发布者自己决定。
19、 使用开源软件需要获得许可吗?
开源软件虽然公开了源代码,使公众可以非常容易获得软件,与传统软件许可“先获得许可再获得软件”的模式有所差别。但使用开源软件仍然需要获得许可,因为开源软件也是软件作品,对其处理也必须符合著作权法的规定。这就是开源软件世界许可证存在的必要。开放源码软件是受到著作权的保护的作品,因此未经权利人许可不能随意使用。因此使用开源软件就一定要获得许可。如果没有获得许可就使用开源软件,就是侵犯了作者的独占权和专有权。多数人没有注意到许可的存在,是因为许可的成立并不是以传统的签字画押、点击“接受许可”等方式进行。开源软件的许可是在运行它或修改它或发布它的那一刻就马上生效的。开源软件的许可协议是一个开放的,只要有相应的行为就理解为默认接受的许可。当然,接受协议的前提条件还是有的,在许可证文本中讲得很清楚,一旦被许可人没有遵守这些条件,许可可能随时会被终止。许可一旦被终止,这时持有开源软件的人就没有权利使用它并且需要承担违约的责任。
20、 为什么存在诸多开源软件许可证?
软件的所有者对于如何处理其创作的软件都有各自不同的想法。对于授权给被许可人权利的大小存在不同的考虑。许可证是许可人和被许可人之间的合同,如同其它商业合同一样,通过不同的条款约定用于实现不同的目的。例如,GPL许可证通过严格的copyleft条款最大限度地保障软件的自由,并由此实现“消除计算机程序在复制、分发、理解和修改方面的限制”这一FSF
的初衷;而MPL
通过将“发布”定义为“以源代码方式发布的文件”,因此为借鉴别人的源代码用作足迹的商业软件开发的行为留下一个豁口。
21、 开发者是否可以自己创造一个许可证?
当然可以。如果某个人或者组织开发了一种新的程序,这个程序又没有受控于任何已有的许可证,这个开发者就可以选择已有的许可协议或许可协议模板进行修改发布自己的软件。当然,如果开发者认为现有的许可证都是不理想,他就可以自己编写新的许可证,他可以将自己价值取向体现在对许可人和被许可人的权利和义务的不同规定中。也可以将许可证提交OSI进行认证,获得目前比较通用的证明,从而表示出遵循这个新的许可证的软件是开放源代码软件。
22、 一个软件是否可以适用多个许可?
可以,只要这些许可证之间不发生实质性的冲突。以前开发人员必须考虑的只是软件的依赖性和不兼容性,现在他们还得考虑开源软件项目之间许可证的冲突。如:Mozilla
包含四个不同的许可证。参与该项目的开发需要注意许可证间的冲突。Galeon
是一个基于Mozilla的浏览器,利用GPL下发布的GTK+图形工具包开发。对其的分发将在分别受MPL和GPL保护的模块间产生冲突。同样,Transarc(IBM
子公司)以IPL许可开发了一个Linux 分布式网络文件系统的变体。不幸的是IPL 与GPL 不兼容,因而禁止其在Linux
内核上运行。另外,对源代码的每个错误修正和改动,都具有“分叉”出一个新版本的潜在可能。
23、 开源软件许可证带来的纠纷可能有哪些?
(1) 发布软件时未表明版权信息以及必要的修改信息;
(2) 发布软件时没有附上相应许可证;
(3) 源代码提供不符合许可证的要求;
(4) 违反许可证的规定将软件代码与其他代码混合;
(5) 发布软件时违反许可证的规定收取不适当的费
用;
(6) 违反许可证的规定以开放源码软件申请专利。
24、 开源软件许可证有什么共同特点?
许可证的共同点一般都是规定了发布义务(将获得的源代码再发布)、对发布源代码的要求(须保证源代码的完整和可以被获得)、允许修改的权利(可以根据获得的源代码产生演绎作品)。一般开源软件许可证都不定补担保条款和责任免除条款。
(1) 开放源码软件许可证都会规定在被许可人接受本许可证或的源代码之后,有将源代码再发布的义务,以促进开源码运动。
(2) 开放源码软件许可证有“不担保”(No
Warranty)条款。由于源码程序准予免费使用,在一般情况下,对程序都没有担保。
(3) 开放源码软件许可证都规定了关于修改、复制和再发布的条款。但是各个许可证对授予被许可人的各项具体的权力略有不同。
25、 不同开源软件许可证之间差异在哪里?
开源软件许可证之间的差异主要体现在:
(1) 是否允许可以同其他非开放源码软件代码混合;
(2) 是否可以将对源代码的修改不公开;
(3) 是否明确了专利许可授权;
(4) 是否明确了专利侵权诉讼导致许可协议中止;
(5) 是否明确禁止与函数库连接;
(6) 是否只能按本许可证发布源代码;
(7) 是否要求对于获得的源代码可能存在的知识产权进行以“LEGAL”为抬头的提示。
26、 主要许可证的之间有哪些关键差别?
(1) BSD 许可——它要求版权和著者身份申明;
(2) GPL——通用公共许可("CopyLeft")禁止派生或发行产品的限制;
(3) LGPL——库/次级GPL,它不同于GPL许可证,在这个许可证下,库(函数库)可以自由地联接到专有软件;
(4) Artistic 许可——使作者保持对进一步开发的控制。
(5) Netscape 公共许可(NPL)——基于GPL 精神的新的许可证,但是保持了对源码更多的控制和所有权;
(6) 公共域(Public Domain)——通常用于决定性的算法以鼓励广泛使用,通常由美国政府使用。
27、 许可证之间的规定存在冲突怎么办?
国际上较为严格的许可证主要是GPL 许可证、QNCL许可证和Ricoh
许可证三种,其他的均被认识是比较宽松的开放源码软件许可证。来自于不同许可证的程序源代码想要结合起来就会产生许可证之间规定的冲突问题。实际上,主流的开源软件,尤其是开源平台LAMP(Linux,
Apache, MySQL,
PHP/Perl/Python),都是依照GPL发布的。而GPL又是一个要求严格的许可证,所以冲突主要是不同许可证与GPL
许可证之间的冲突。一些开源许可证要求当出现程序之间的连接、或者程序修改时,如果出现了组合作品,则要求连接各部分都受该开源许可证限制,也就是必须成为指定的开源软件,是容易产生问题的地方。对于冲突的问题,现在我们能做的就是尽量避免。
28、 OSI与开源许可证是什么关系?
答:OSI
组织也即“开放源代码首创行动组织”(Open Source Initiative,简称OSI),这是一个非盈利的组织,Open
Source Initiative、OSI等标志都是属于该组织的证明商标,统称为“OSI
Certified”标志,由OSI组织作为证明商标的管理者。OSI组织的宗旨就是要让开源软件的发展有一个更好的土壤,OSI主要管理和推广开放源码的定义,尤其是OSI认证的开放源码软件的认证标记和认证程序。根据OSI组织的规章,是否是开源软件,不光要看权利人是否提供源代码,另外一个很重要的标志就是许可证的问题,因为基本所有的开源软件在发布时都会附带一个许可协议,即我们所说的许可证,在许可证中,会规定许可人和被许可人的权利与义务,而正是这些权利和义务,决定了权利人是否将源代码真正的向社会公
众开放,从而可以实现是否是开源软件的判断。开放源代码组织是通过开源软件许可证这种合同形式来明确规定源代码使用者的义务,使开放源代码的思想得以传播,同时巧妙地保有了其Open
SourceInitiative、OSI
等一系列商标的所有权。虽然,对这些证明商标没有使用费的要求,但是使用这些商标还是必须遵守OSI的规则。
29、 许可证经OSI认证有何益处?
OSI组织从软件的许可证上着手,将证明商标许可给那些经其审核认定为开源软件的软件提供者。这样,凡被认定为开源软件许可证的,都可以标注OS、OSI等商标标识。因此,许可证经过OSI
认证可以在一定程度上保证遵循它的软件获得开源软件界的认可。但OSI终究是个非官方组织,OSI组织要想在开源软件领域实现“统一标准”的目的几乎没有什么成功的希望。但是该组织的定位和战略很好,将自己定位为一个行业自律协会性质,并且巧妙的应用了商标战略。将Open
Source Initiative、OSI申请了证明商标 ,称为“OSI
Certified”标志,自己作为证明商标的管理者,为开源软件业的发展做出了重大的贡献。
加载中,请稍候......