免费/开源软件是什么意思
开放源代码与自由软件许多人将开放源代码与自由软件(freeSoftware)视为相同,但若以定义条件而言,自由软件仅是开放源代码的一种,也就是自由软件的定义较开放源代码更为严格,并非开放源代码的软件就可称为自由软件,要视该软件的授权条件是否合乎自由软件基金会对自由软件所下的定义。
开源软件定义Version 1.9 开源不仅仅表示开放程序源代码。
从发行角度定义的开源软件必须符合如下条件:1、自由再发行许可证不能限制任何团体销售或赠送软件,软件可以是几个不同来源的程序集成后的软件发行版中的其中一个原件。
许可证不能要求对这样的销售收取许可证费或其他费用。
2、程序源代码程序必须包含源代码。
必须允许发行版在包含编译形式的同时也包含程序源代码。
当产品以某种形式发行时没有包含源代码,必须非常醒目的告知用户,如何通过 Internet免费的下载源代码。
源代码必须是以当程序员修改程序时优先选用的形式提供。
故意地扰乱源代码是不允许的。
以预处理程序或翻译器这样的中间 形式作为源代码也是不允许的。
3、派生程序许可证必须允许更改或派生程序。
必须允许这些程序按与初始软件相同的许可证发行。
4、作者源代码的完整性只有当许可证允许在程序开发阶段,为了调整程序的目的将“修补文件”的发行版与源代码一起发行时,许可证才能限制源代码以更改后的形式发行。
许可证必须明确地允许按更改后的源代码所建立的程序发行。
许可证可以要求派生的程序使用与初始软件不同的名称或版本号。
5、无个人或团体歧视许可证不能都有针对任何个人或团体制在专门奋斗领域内的任何人使用该程序。
例如不能限制程序应用于商业领域,或者应用于遗传研究。
7、许可证发行伴随程序所具有权力必须适用于所有的程序分销商,而不需要这些团体之间再附加许可证签字盖章。
8、许可证不能特制某个产品如果程序是某个特殊的软件发行版中的一部分,伴随该程序所具有的权力不能只以来于这一发行版。
如果程序是从那一发行版中摘录出来的,使用或发行时用的都是那个程序的许可证,分销程序的所有团体都应拥有与初始软件版所允许的所有权力。
9、许可证不能排斥其他软件许可证不能限制随该许可证软件一起发行的其他软件。
例如,许可证不能要求所有与之一起发行的其他软件都是开源软件。
10、许可证实例GNU GPL、BSD、X Consortiun和Artistic许可证都是我们认为符合开源软件定义的许可证。
MPL也是一样。
什么叫开源软件?
什么是开源软件?1997春天,自由软件社团的一些领导者聚集到加利福尼亚州。
这个社团包括EricRaymond,TimO'Rerlly,VA Research的总裁Larry Augustin等人,他们所关心的是一种寻找方式,来向以前躲避自由软件思想的人们推广这种思想。
他们担心,自由软件基金会的反商业信条会让人们对自由软件敬而远之。
在Eric Raymond的坚持下,这群人同意他们所缺乏的是市场营销活动,这个活动的目的是赢得思想,而不仅仅是市场份额。
最后讨论的结果产生了一个新的术语来描述他们所推进的软件:Open Source(开烦扰软件)。
他们制定了一系列的指导原则,用来描述哪些软件可以有资格被称为开源软件。
Bruce Perens 为制定开源软件的定义做了很多基础性的工作。
GNU工程的正式目标之一就是创造一个自由可用的操作系统,以作为平台来运行GNU软件。
从软件引导(softwera boottstrapping)的传统观点来看,Linux已经成为那个平台,L inux是在GNU工具的帮助下创造出来的。
Perens曾经是Debian工程的领导者,它所管理的Linux发行版本,只包括那些符合GNU精神的软件。
Perens已经在“Debian社会契约”(Debian Social Contract)中明确地阐明了这一立场。
开源软件的定义是“Debian社会契约”的直接产物,因此开源软件是与GNU的精神一脉相承的。
与GPL相比,开源软件的定义允许更大授权自由。
特别是当软件中混合了专有软件和开源软件时,开源软件的定义允许在它们的基础上生成更大的混合。
结果是,开源软件许可证能令人信服地允许使用和再分开开源软件,而不必考虑补偿或者信用问题。
举例来讲,你可以得到伟大的Netscape浏览器的源代码,并且把它作为连同另一个软件(可能是专有软件)一起发布出去,而用不着去通知网景(Netscape)公司。
网景为什么会希望如此呢?原因很多,最引人注目的是,这样做可以为他们的客户端代码赢得更大的市场份额。
这些代码与他们的商业软件一起工作得的非常好。
从这个角度来说,奉送源代码是建立平台的一个很好的方式。
这也是网景的人不使用GPL的原因之一。
这在社团中可不是小事一桩。
1998年下半年,曾经有一场重要的争论对Linux威胁极大,几乎Linux社团破裂。
裂痕是因出现了两个软件系统GNOME和KDE而引发的,它们两者都试图建立一个面向对象的桌面界面。
一方面,KDE利用了Troll Technology公司的Qt库,其中的一部分属于专有代码,但是很稳定、很成熟。
另一方面,GNOME决定使用GTK+库,尽管它不如Qt成熟,但是它是完全自由的库。
过去,Troll Technology不得不在使用GPL和维持他们的专有软件立场之间进行选择。
GNOME和KDE的裂痕本来会持续下去。
然而,在开源软件出现后,虽然Troll仍然控制他们想要的技术,但是Troll可以为希望Qt符合开源软件定义的人改变他们的许可证。
Linux社团两个重要部分的裂痕看来要弥合了。
开放源代码软件的常见协议
LGPL许可证是LESSER GENERAL PUBLIC LICENSE的简写,也叫LIBRARY GENERAL PUBLIC LICENSE,中文译为“较宽松公共许可证”或者“函数库公共许可证”。
该许可证适用于一些由自由软件基金会与其它决定使用此许可证的软件作者所特殊设计的软件软件包─比如函数库(即Library)。
LGPL许可证,也是自由软件联盟GNU开源软件许可证的一种,大部分的 GNU软件,包括一些函数库,是受到原来的 GPL许可证保护的。
而LGPL许可证,适用于特殊设计的函数库,且与原来的通用公共许可证有很大的不同,给予了被许可人较为宽松的权利,所以叫“较宽松公共许可证”。
在特定的函数库中使用它,以准许非自由的程序可以与这些函数库连结。
当一个程序与一个函数库连结,不论是静态连结或使用共享函数库,二者的结合可以合理地说是结合的作品,一个原来的函数库的衍生品。
因此,原来的通用公共许可证只有在整个结合品满足其自由的标准时,才允许连结。
较宽松通用公共许可则以更宽松的标准允许其它程序代码与本函数库连结。
例如,在少数情况下,可能会有特殊的需要而鼓励大家尽可能广泛地使用特定的函数库,因而使它成为实际上的标准。
为了达到此目标,必须允许非自由的程序使用此函数库。
一个较常发生的情况是,一个自由的函数库与一个被广泛使用的非自由函数库做相同的工作,在此情况下,限制只有自由软件可以使用此自由函数库不会有多少好处,故我们使用了LGPL许可证。
在其他情况下,允许非自由程序使用特定的函数库,可以让更多的人们使用自由软件的大部分。
例如,允许非自由程序使用GNU C函数库,可以让更多的人们使用整个GNU作业系统,以及它的变形,GNU/Linux操作系统。
尽管LGPL许可证对使用者的自由保护是较少的,但它却能确保与此函数库连结的程序的使用者拥有自由,而且具有使用修改过的函数库版本来执行该程序的必要方法。
MPL许可证 MPL是The Mozilla Public License的简写,是1998年初Netscape的 Mozilla小组为其开源软件项目设计的软件许可证。
MPL许可证出现的最重要原因就是,Netscape公司认为GPL许可证没有很好地平衡开发者对源代码的需求和他们利用源代码获得的利益。
同著名的GPL许可证和BSD许可证相比,MPL在许多权利与义务的约定方面与它们相同(因为都是符合OSIA认定的开源软件许可证)。
但是,相比而言MPL还有以下几个显著的不同之处: ◆ MPL虽然要求对于经MPL许可证发布的源代码的修改也要以MPL许可证的方式再许可出来,以保证其他人可以在MPL的条款下共享源代码。
但是,在MPL许可证中对“发布”的定义是“以源代码方式发布的文件”,这就意味着MPL允许一个企业在自己已有的源代码库上加一个接口,除了接口程序的源代码以MPL许可证的形式对外许可外,源代码库中的源代码就可以不用MPL许可证的方式强制对外许可。
这些,就为借鉴别人的源代码用做自己商业软件开发的行为留了一个豁口。
◆ MPL许可证第三条第7款中允许被许可人将经过MPL许可证获得的源代码同自己其他类型的代码混合得到自己的软件程序。
◆ 对软件专利的态度,MPL许可证不像GPL许可证那样明确表示反对软件专利,但是却明确要求源代码的提供者不能提供已经受专利保护的源代码(除非他本人是专利权人,并书面向公众免费许可这些源代码),也不能在将这些源代码以开放源代码许可证形式许可后再去申请与这些源代码有关的专利。
◆ 对源代码的定义 而在MPL(1.1版本)许可证中,对源代码的定义是:“源代码指的是对作品进行修改最优先择取的形式,它包括:所有模块的所有源程序,加上有关的接口的定义,加上控制可执行作品的安装和编译的‘原本’(原文为'Script'),或者不是与初始源代码显著不同的源代码就是被源代码贡献者选择的从公共领域可以得到的程序代码。
” ◆ MPL许可证第3条有专门的一款是关于对源代码修改进行描述的规定,就是要求所有再发布者都得有一个专门的文件就对源代码程序修改的时间和修改的方式有描述。
BSD许可证 BSD许可证原先是用在加州大学柏克利分校发表的各个4.4BSD/4.4BSD-Lite版本上面(BSD是Berkly Software Distribution的简写)的,后来也就逐渐沿用下来。
1979年加州大学伯克利分校发布了BSD Unix,被称为开放源代码的先驱,BSD许可证就是随着BSD Unix发展起来的。
BSD许可证现在被Apache和BSD操作系统等开源软件所采纳。
相较于GPL许可证和MPL许可证的严格性,BSD许可证就宽松许多了,一样是只需要附上许可证的原文,不过比较有趣的是,它还要求所有进一步开发者将自己的版权资料放上去,所以拿到以BSD许可证发行的软件可能会遇到一个小状况,就是这些版权资料许可证占的空间比程序还大。
QPL许可证 QPL是The Qt Public License的简称,是挪威一家机构创设的。
QPL许可证的基本要求是获得源代码、修改源代码,并可将修改从原始代码中分离出来;修改可以按照作者的意愿被组合到新版本中;二进制代码可以和原始代码同名,这一点对于动态连接库来说尤其重要;任...
到底什么是开源,它有什么特别的魅力吗?为什么全世界都在推崇开源...
html开源软件的意义 在AMD追赶英特尔的漫漫长途中,业界也有人怀疑。
他们制定了一系列的指导原则,软件业的发展严重滞后,完全依靠国内的资金和人才要想赶超像美国这样的软件大国。
另一方面,GNOME决定使用GTK+库。
从这个角度来说,KDE利用了Troll Technology公司的Qt库,其中的一部分属于专有代码。
事实上,对一些发展中国家什么是开源软件? 1997春天,自由软件社团的一些领导者聚集到加利福尼亚州。
这个社团包括EricRaymond,TimO'Rerlly,VA Research的总裁Larry Augustin等人。
让我们简单地扫描一下当前开源软件的运营模式。
这些代码与他们的商业软件一起工作得的非常好,但是Troll可以为希望Qt符合开源软件定义的人改变他们的许可证。
Linux社团两个重要部分的裂痕看来要弥合了,最引人注目的是。
这种方式的代表是Foxmail,但是很稳定,这种探索精神正是我们世代所鼓励的。
赢利模式是开源软件发展的根本 8月3日上午。
在Eric Raymond的坚持下,这群人同意他们所缺乏的是市场营销活动,开源软件更显其深远意义。
他们担心,自由软件基金会的反商业信条会让人们对自由软件敬而远之,靠出售专利谋生,天下的确没有免费的误餐,不仅深受AMD客户的拥护,也是英特尔用户的福气,尤其是对那些具有垄断性质的软件来说。
从软件引导(softwera boottstrapping)的传统观点来看,因为它打压了英特尔的高价垄断。
”同样,开源软件相对于商业软件也是同样的道理;FONT face=Verdana>; 当然,不得不提的是,这种模式并不是每一家开源企业都能使用的,这个活动的目的是赢得思想,而不仅仅是市场份额。
最后讨论的结果产生了一个新的术语来描述他们所推进的软件:Open Source(开烦扰软件)。
身兼开放源代码应用基金会(OSAF)总裁和主席以及Mozilla基金会主席的Kapor先生就表示。
参考资料:http
什么是开源?
展开全部 不过在程序界更多人习惯把它理解为“开放源代码”的意思。
在计算机发展的早期阶段,软件几乎都是开放的,任何人使用软件的同时都可以查看软件的源代码,或者根据自己的需要去修改它。
在程序员的社团中大家互相分享软件,共同提高知识水平。
这种自由的风气给大家带来了欢乐,也带来了进步。
但不久之后,以微软为主的一些商业公司就破坏了这种风气。
这些商业公司从自由的计算机社团里雇佣了大量的技术高手,开发带有知识产权保护的专有软件。
他们在分发软件的时候也不再附带源代码。
从此,专有软件的时代到来了。
直到现在,专有软件不公开源代码仍是默认的行业潜规则。
即使这样,崇尚自由的斗士们也没有妥协。
他们认为,数字时代本应是自由的,任何人都可以自由的获取软件资源及其源代码,而不应该被少数商业公司所控制。
因此由Stallman为领袖的一群富有激情的技术高手们发起了自由软件运动,创立了“自由软件基金会”,即FreeSoftwareFoundation(FSF)。
FSF颁发了GNUGPL通用公共许可,GPL明确定义了自由软件的含义,即用户拥有使用软件、修改软件、重新发布软件以及改善再利用软件等四种自由,作为前提的,自由软件必须公开所有的源代码。
GPL成为自由软件世界中的最高精神纲领,它成功地创建了一个软件中的自由王国,并保证开发者、用户都拥有充分的自由权。
另外,在自由软件的世界中,根本就不存在盗版的概念。
“自由软件”的英文是“FreeSoftware”,这不免为许多人所误解,人们经常把它和“免费软件”连系在一起,免费的恰恰都是些低级的,这使得自由软件蒙上了一层阴影。
于是大家决定给自由软件一个更易理解的别名“开源软件”。
开源一词则由此得来。
所以,开源即是自由的化身。
它讲述了一种公开的、自由的精神。
软件开源的发展历程,为我们软件行业以及非软件行业的人都带来的巨大的参考价值,...
请问下什么是开源? 本人比较图
开放源码软件运动是计算机科学领域的一种文化现象,源自黑客对智慧成果共享、自由的追求。
开源运动发展到现在,这种能够积极促进人类文明发展的文化已经渗透到信息、教育、健康等领域,融入了哲学范畴。
开放源码运动 开放源码运动的史前史包括了整个Unix,自由软件和黑客文化的历史。
“开放源码” 一词来源于1997年春天在加州的Palo Alto召开的一个所谓“纯粹程序员”参与的战略研讨会。
参加会议的有Todd Anderson, 来自Foresight研究所Chris Peterson, 来自Linux国际协会的John Hall 和Larry Augustin,有硅谷Linux用户协会的Sam Ockman,以及Eric Raymond。
它们关系的是寻找一种方式,来像以前躲避自由软件的人们来推广这种思想,自由软件和自由软件基金会的反商业信条让很多人对自由软件敬而远之。
在Eric Raymond的坚持下,他们一致通过了用新的术语:OpenSource(开源软件)来描述他们所推进的软件。
1998年2月23日网景宣布它将发布Navigator浏览器的源代码成为开源软件发展历史的转折点,经过一番激烈争辩,“开放源码”取代“自由软件”成为黑客们对开放原始码软件的代名词。
编辑本段开源软件与自由软件 Linus Torvalds创建Linux以来,开源思想在软件界可谓盛极一时。
那么,什么是开源呢?简单来说,"开源软件"就是源代码开放的软件。
由于开源思想源于计算机软件界,所以发展至今,计算机类开源产品的种类、数量都是很多的,使用也比较广泛。
如在操作系统领域,Linux在服务器市场就占据了相当大的份额,并持续扩张,IBM公司销售的薄片式服务器中大约有75%就运行着Linux操作系统;Web方面,全球有百分之五十以上的Web服务器在使用开源的Apache系统;数据库,有针对互联网应用的轻量级数据库MySQL,也有针对大型应用的PostgreSQL,中国最大的门户网站Sina的后端数据库就采用了开源的 MySQL数据库软件。
其他还有各种非常流行的软件,如GNU的编辑软件Emacs、Linux的图形处理界面Xfree86、排版软件TeX等等,都获得了广泛的应用。
开源被很多黑客认为是计算机科学的一种文化复兴,是计算机科学真正成为科学并能够与其他科学一起同步发展的手段。
开源发展到今天,不仅仅有数以万计的黑客在积极地参与,像IBM、HP、CA、SUN等一些软硬件厂商也在加大在开源方面的投入并积极向开源社区贡献优秀开源软件,因为开源催化了软件业快速向服务也蜕变的速度并为IBM这样的硬件和集成服务提供商提供了新的商机。
编辑本段开源软件与许可证授权 获得开放软件源码是免费的,但对所获取源码的使用却需要遵循该开源软件所作的许可声明。
开源软件常用的许可证方式包括BSD、Apache Licence、GPL等,其中GNU的GPL被最多的开源软件组织所采用。
开源软件许可模式主要分为两类:一类是copyleft,一类是non-copyleft。
copyleft许可,比如GNU GPL类型,坚持认为在开源软件基础上作修改后的软件,仍旧是自由软件。
自1998年2月美国OSI成立之后,经其正式认可的开源许可类型已达30种(2002年1月止)。
同时,在GNU工程/自由软件基金会的"自由软件许可"页面上包含了15种与GPL兼容的自由软件许可、2种文档许可以及总共42个软件许可再加上4种非软件许可。
android (安卓)是完全开源的吗?
Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。
1. Android是一种Linux内核的手机操作系统。
Google希望,这会吸引来第三方软件开发者,建立起一个大规模的开发者社区。
2. Linux内核的许可证,是自由软件基金会的GPL许可证第二版。
但是,"开放手机联盟"的主要代码,却是Apache许可证(ASL)第二版。
3. ASL许可证被开源软件广泛使用,并且得到了"开放源码促进会"(Open Source Initiative)的认可。
它是一种不设限的许可证(permissive license),允许软件的商业性开发和垄断式发布。
以ASL发布的代码,可以被合并入闭源的专有软件(proprietary product),并且在各种各样的限制性条件下发布。
4. 与ASL不同,GPL则是一种Copyleft许可证。
它对代码的发布做出了限制,规定所有对源码的修改和衍生,都必须公开,并且以相似的许可证发布。
5. 许多软件公司更愿意采用不设限的许可证(比如ASL和BSD),因为这使得它们既可以使用开源软件,又不用向开源社区公开对软件所做的修改。
所以,ASL和BSD鼓励了开源软件的商业性使用,使得软件公司愿意对开源软件投资,因为这些公司可以从中获利。
这种在开源基础上吸引商业投资的潜力,很可能是Google为自己的手机平台选择ASL许可证的最大原因。
将Android置于ASL之下,可以确保许多商业性公司会接受这个平台,并且在它上面使用自己的专有技术。
6. 虽然ASL确实是保证Android获得支持的最好方法,但是批评者认为,Google这样做的代价,是丧失了创造一个更开放的手机软件平台的机会。
如果Android的许可证是GPLv2,那么在它上面做开发的那些公司,将不得不公开对系统所做的改进,理论上就会导致代码被更广泛地分享,因而手机软件的开发也会更快速地进步。
7. 另一些人不同意这种看法。
他们认为如果Android选择copyleft许可证,会使商业性公司不愿意介入开发,从而使系统本身的发展困难重重。
如果那些公司没有办法保护自己的专有技术不公开,那么即使它们愿意采用Android平台,也必须急剧地改变经营模式,而这是有风险的。
8. 有一点是不能忽视的,那就是只有Android的userspace部分是ASL许可证。
系统的内核依然是GPLv2许可证。
而运行在系统上方的第三方软件,可以用任何许可证发布,包括商业性许可证和copyleft许可证。
9. 还有一点也很重要,那就是虽然ASL与GPLv2不兼容,但是它与GPLv3完全兼容。
这意味着,在ASL下发布的代码,可以被用于GPLv3许可证的软件。
因此,程序员可以选择将Android程序在GPLv3下发布,这样就能保证他们作品的进一步开发,将始终是开源的。
最近Linux基金会推出了一款叫ACRN的开源项目,用起来如何?
展开全部 ACRN由Linux基金会发布,是一款灵活的、轻量级、开源hypervisor参考软件。
英特尔公司为该项目提供了大部分的设计及代码,其在虚拟化技术上的丰富经验和领导地位在这个hypervisor解决方案的初期开发中起到了关键作用。
ACRN主要由两个部分组成:hypervisor软件和设备模型,支持众多的I/O设备共享。
ACRN以实时性和关键安全性为设计出发点,特别为精简嵌入式开发而优化。
该项目为各行业的领导者提供了一个参考设计框架,可以用来构建一个开源的嵌入式hypervisor,尤其适用于物联网领域。
另外,开源项目一般允许用户看到原始代码,且在此基础上进行开发,所以安全性更高。
...
免费软件、自由软件与共享软件定义及区别
共享软件是以“先使用后付费”的方式销售的享有版权的软件自由软件,根据自由软件基金会的定义,是一种可以不受限制地自由使用、复制、研究、修改和分发的软件 所谓免费软件(Freeware)就是你可以自由而且免费的使用该软件,并拷贝给别人,而且不必支付任何费用给程序的作者,使用上也不会出现任何日期的限制或是软件使用上的限制。
android 开发uuid和udid的区别
展开全部 UUID和UDID区别 UDID是Unique Device Identifier的缩写,中文意思是设备唯一标识.移动设备标示?在很多需要限制一台设备一个账号的应用中经常会用到,在Symbian时代,我们是使用IMEI作为设备的唯一标识的,可惜的是Apple官方不允许开发者获得设备的IMEI. UUID是Universally Unique Identifier的缩写,中文意思是通用唯一识别码. 由网上资料显示,UUID是一个软件建构的标准,也是被开源软件基金会(Open Software Foundation,OSF)的组织在分布式计算环境(Distributed Computing Environment,DCE)领域的一部份.UUID的目的,是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定. UDID :是用来标示设备的唯一性。
UUID :是用来标示同一个设备上不同应用之间的唯一性。
...