http://mrdede.com/

一个从零开始并且为了自己心底的理想不断奋斗中的人


WEB开发技术知识个人记录与收集,前端技术、后端技术、算法研究等。生命不息,学习不止!

织梦先生mrdede.png

https://www.gnu.org/

150px-Heckert_GNU_white.svg.png

GNU的开发始于1983年,它是自由的类Unix操作系统,这使得计算机用户拥有了分享和改进其所用软件的自由。


GNU是一个自由的操作系统,其内容软件完全以GPL方式发布。这个操作系统是GNU计划的主要目标,名称来自GNU's Not Unix!的递归缩写,因为GNU的设计类似Unix,但它不包含具著作权的Unix代码。GNU的创始人,理查德·马修·斯托曼,将GNU视为“达成社会目的技术方法”。

作为操作系统,GNU的发展仍未完成,其中最大的问题是具有完备功能的内核尚未被开发成功。GNU的内核,称为Hurd,是自由软件基金会发展的重点,但是其发展尚未成熟。在实际使用上,多半使用Linux内核、FreeBSD等替代方案,作为系统核心,其中主要的操作系统是Linux的发行版。Linux操作系统包涵了Linux内核与其他自由软件项目中的GNU组件和软件,可以被称为GNU/Linux(见GNU/Linux命名争议)。


开发者 社区
编程语言 各种(特别是C语言以及汇编语言)
操作系统家族 类Unix系统
运作状态 当前
源码模式 自由软件
市场取向 个人计算机、移动设备、嵌入式设备、服务器、大型机、超级计算机

支持平台 IA-32(仅限Hurd内核)and Alpha, ARC, ARM, AVR32, Blackfin, C6x, ETRAX CRIS, FR-V, H8/300, Hexagon, 安腾, M32R, m68k, META, MicroBlaze, MIPS, MN103, OpenRISC, PA-RISC, PowerPC, s390, S+core, SuperH, SPARC, TILE64, Unicore32, x86, Xtensa (仅限Linux-libre内核)

内核类别 微内核 (GNU Hurd)或宏内核 (Linux的分支,GNU Linux-libre)
用户空间 GNU

许可证 GNU GPL、GNU LGPL、GNU AGPL、GNU FDL、GNU FSDG
官方网站 https://www.gnu.org/


历史

理查·斯托曼, GNU计划的创建者_Richard_Stallman_-_Fête_de_l'Humanité_2014_-_010.jpg
理查·斯托曼, GNU计划的创建者

GNU操作系统起源于GNU计划,由理查·斯托曼在麻省理工学院人工智能实验室发起,希望发展出一套完整的开放源代码操作系统来取代Unix,计划中的操作系统,名为GNU。1983年9月27日,理查·斯托曼在 net.unix-wizards 和 net.usoft新闻组中公布这项计划。 。理查德·斯托曼通过使用变化单词的各种手法来选择名称,包括曲目The Gnu。

斯托曼的目标是成立一个完全自由的操作系统,他希望电脑用户是能够“自由使用”的。因为在20世纪60年代和70年代 - 大多数人都能自由学习软件的源代码,自由地与他人分享的软件,可自由修改软件的行为,自由发布的软件的修改后的版本。这种理念,在1985年3月出版的GNU宣言崭露无遗。

1984年1月5日,正式开始开发软件,为了防止这些软件将来可能被主张所有权,影响到自由软件的发展,斯托曼辞去了在实验室的工作。理查·斯托曼使用不兼容分时系统 (ITS)(一种早期的操作系统,使用汇编语言撰写,因其所运行的称为 PDP-10的电脑系统架构停止发展而变得过时)的经验,导致了需要一种可移植系统的决定。因此,会议决定,将开发新的系统,并使用 C 和Lisp作为系统编程语言。 且GNU将与UNIX兼容。 当时,UNIX已经是一个流行的专有操作系统。而Unix的设计是模块化的,所以它可以被逐步分块的实现。

1984年,开始发展编辑器Emacs等软件。1985年,发表GNU宣言。1989年,发表GNU通用公共许可协议。GNU计划中的其他部分,如编辑器、编译器、shell等都已经完成,独缺操作系统核心。1990年,自由软件基金会开始正式发展Hurd,作为GNU项目中的操作系统。根据托马斯·布什内尔的回忆,最早自由软件基金会使用Trix来开发操作系统,但在1986年放弃这个项目。在此后,他们原希望以轻量化后的4.4BSD为基础进行开发。1987年,理查德·斯托曼决定以GNU Mach微内核进行开发,认为可以借此加速操作系统的开发,但因为一直不确定卡内基梅隆大学何时要将核心源代码发布,造成计划延宕三年。他在之后承认这是个错误。

许多必要的软件需要从零写起,但已存在的第三方组件,如 TeX、X Window System和Mach微内核等等组成了 GNU Hurd 的核心。 除了上述的第三方组件外,大多数的GNU软件是由许多志愿者,在他们的空闲时间,或由公司、教育机构和非营利性组织赞助下撰写。1985年10月,理查·斯托曼创建自由软件基金会 (FSF)。在1980到1990年代,他们雇用软件发展工程师去转写GNU必须的软件。

1991年,Linux出现。1993年,FreeBSD发布。所有GNU计划中,运行于用户空间的软件,都可以在Linux或FreeBSD上使用。许多开发者转向于Linux或FreeBSD。其中,Linux成为常见的GNU计划软件运行平台。理查德·斯托曼主张,Linux操作系统使用了许多GNU计划软件,应正名为GNU/Linux,但没有得到Linux社区的一致认同,形成GNU/Linux命名争议。

由于GNU颇具知名度,有兴趣的商家开始促进发展或出售GNU软件和技术支持。其中最突出的和成功的,是Cygnus Solutions,现在红帽公司的一部分。


组成

该系统的基本组成包括GNU编译器套装(GCC)、GNU的C库(glibc)、以及GNU核心工具组(coreutils),另外也是GNU调试器(GDB)、GNU二进制实用程序(binutils)的GNU Cash shell中 和GNOME桌面环境。 GNU开发人员已经向GNU应用程序和工具的Linux 移植 ,现在也广泛应用在其它操作系统中使用,如BSD变体的Solaris,和OS X作出了贡献。

许多GNU程序已经被移植到其他操作系统,包括专有软件,如Microsoft Windows和OS X. GNU计划已经被证明是比他们的专有Unix更为可靠。 截至2015年11月,全国共有466 GNU软件包(包括退役,但不包括383 )主办的官方GNU开发的网站。


GNU 变种

GNU项目的官方核心是GNU Hurd;然而,截至2012年,Linux核心正式以Linux-libre为名成为GNU项目中的一部分,并删除了所有专有组件的变种。

像FreeBSD内核其他核心依然和GNU软件合作,形成一个工作的操作系统。 FSF认为Linux核心,与GNU工具和实用程序使用时,应承认自己为GNU变种,并促进改成 GNU/Linux 的这类系统名称(导致GNU/Linux命名争议) 。GNU工程已认可的Linux发行版,如gNewSense , TRISQUEL和Parabola GNU/Linux-libre。不使用Hurd作为核心的GNU的其他变种包括的Debian GNU / kFreeBSD和Debian GNU / NetBSD的,将得以对BSD的核心实现GNU的早期计划。


商标

GNU 30周年纪念商标_180px-Gnu-30-banner-without-background.svg.png
GNU 30周年纪念商标

上色版本_180px-Gnu-color-reiss-head.jpg
上色版本

粗体版本_180px-Heckert_GNU_white.svg.png
粗体版本

GNU的商标是一个牛羚头。

原先版本是Etienne Suvasa所设计,而今比较流行的粗体版本则是Aurelio Heckert所设计。 GNU商标出现在GNU的电子文件中,也是自由软件基金会的元素。

30周年商标是原商标的修正版本,是由自由软件基金会创作,其目的为庆祝30周年。


资料来源
https://zh.wikipedia.org/wiki/GNU

https://gnu.org/licenses/lgpl.html

240px-LGPLv3_Logo.svg.png
GNU宽通用公共许可证


GNU宽通用公共许可证(英语:GNU Lesser General Public License,简称:LGPL)是由自由软件基金会公布的自由软件许可证。它允许企业与软件开发者使用,或将LGPL授权的软件集成至他们自己的软件内(即使该软件是私有软件也被允许),同时不会受到Copyleft特性的许可证强制对软件开源的限制。该许可证常被用于一些(但不是全部)GNU程序库。

这个许可证以前被称为GNU程序库通用公共许可证(GNU Library General Public License)。此许可证最新版本为“第3版”,2007年6月29日发布,较早的版本有2.0和2.1版。此种许可之出现,是为了在GPL与许可式许可(如MIT许可证及柏克莱大学的BSD许可证)间获取折衷。

采用LGPL之项目本身虽然仍有“Copyleft”之限制条件,但这些限制不感染仅仅只链接到本项目的软件。不过此等软件仍会受到其他限制。

LGPL主要使用之标的为软件库(Software Libraries),但是其亦可使用于独立存在的应用程序。比较有名的例子为Mozilla跟OpenOffice.Org。


作者 理查德·斯托曼
版本 3
发布者 自由软件基金会
DFSG兼容 是
自由软件 是
OSI认证 是
GPL兼容 是
Copyleft 是
与其他协议代码链接 可以
网站 gnu.org/licenses/lgpl.html


历史

LGPL原本被称为GNU Library General Public License,最初于1991年发布,为与GPLv2保持一致而采用2.0版的编号。许可证的2.1版与1999年在修订后发布。与此同时,它被重命名为GNU Lesser General Public License,以显示FSF认为并不是所有程序库都应当采用该许可证的态度。LGPL的第3版于2007年发布,它以在GPL第3版之上附加应用一系列许可的方式表现。


LGPL与GPL差异之处

LGPL有一特点是LGPL软件可以被转换成GPL(参见Section 3)。这种特性对于在GPL库或应用程序中直接使用LGPL程序有一定程度之帮助。


编程语言要求

LGPL 协议主要是面向使用 C语言 以及类C语言。Franz Inc. 发布了 LLGPL 协议,增加了序言部分以澄清 LISP 语言中的上下文问题。

另外 Ada 语言还有一个特殊的特性——泛型,所以需要使用 LGPL 的另一个变种 GNAT Modified General Public License:允许代码链接一些特殊情况,以避免被 GPL 所覆盖。

C++ 模板和只有头文件的库也会遇到类似于 Ada 的泛型问题。LGPL 的第三版在第三小节中专门处理了这方面的特殊情况。


可闭源特性

由于许多程序员都弄不清各种许可证之间的差别,导致一些开源项目成为了小部分别有用心人士所利用的对象,较著名的例子有DivX,早期DivX雏形是一个使用LGPL许可证的自由软件,由大部分优秀的软件高手义务地开发,但当软件渐渐成形时,DivX的公司DXN利用LGPL的漏洞对DivX进行了闭源,大部分软件爱好者都感到被出卖,所以着手开发了XviD。虽然XviD在软件方面明显比DivX优秀,但市场占有率却不如DivX。


资料来源
https://zh.wikipedia.org/wiki/GNU%E5%AE%BD%E9%80%9A%E7%94%A8%E5%85%AC%E5%85%B1%E8%AE%B8%E5%8F%AF%E8%AF%81