什么是GNU
什么是GNU
GNU
GNU's Not Unix, GNU 并非 Unix
GNU是一个自由的 操作系统, 其内容完全以 GPL方式发布
这个操作系统是 GNU 计划的主要目标, 名称来自 Unix 的 递归缩写
因为GNU的设计类似 Unix, 但它不包含 具著作权的Unix代码
GNU的内核, 称是 自由软件基金会发展的重点
但是其发展尚未成熟. 在实际使用上, 多半使用 Linux内核, FreeBSD等替代方案, 作心
其中主要的操作系统 是 Linux的发行版
许多 Unix 系统上也安装了 GNU 软件, 因为 GNU软件的 质量 比 之前 Unix的软件还要好,
GNU 工具还被广泛地 移植到 Windows 和 Mac OS上
GNU 包含3个协议条款
1, GPL, GNU General Public License, GNU通用公共许可证
2, LGPL, GNU Lesser General Public License, GNU较宽松公共许可证
3, GFDL, GNU Free Documentation License, GNU自由文档许可证
这里指的 自由, 并不是 价格免费, 这和价格无关而是使用软件对所有的用户来说是 自由的, GPL 通过如下途径实现这一目标
1, 它要求软件一 源代码的形式发布, 并规定任何用户能够以 源代码的形式 将软件复制或 发布给别的用户
2, 如果用户的软件使用了 受 GPL 保护的任何软件的 一部分, 那么该软件就继承了 GPL 软件, 并因此而成为 GPL 软件, 也就是说必须随应用程序一起发布源代码
3, GPL并不排斥对 自由软件 进行 商业性质的 包装 和 发行, 也不限制在 自由软件的基础上 打包发行 其他非 自由软件
由于 GPL 很难被 商业软件所 应用, 它要求调用它的库的代码也得 GPL, 全部开放, 并且一同发布, 不能直接连接, 所以后来 GNU 推出了 LGPL许可证
参考链接
原文地址:https://www.cnblogs.com/beyondx/p/15319755.html
- 利用Lucene打造站内搜索引擎的思路
- Lucene.Net 删除索引DeleteDocuments的注意事项
- 使用VS2010的Database 项目模板统一管理数据库对象
- 利用c#制作托盘程序,并禁止多个应用实例运行
- dotNET跨平台相关文档整理
- .NET Core 2.0 正式发布信息汇总
- iis7.0上发布mvc4.0网站
- 遍历文件夹所有文件(示例)
- Visual Studio 2017 : client version 1.22 is too old
- httphandler和httpmodule的区别
- 每周.NET前沿技术文章摘要(2017-06-21)
- Access数据库多表连接查询
- Lucene2.1 的官方示例代码
- 使用NUnit在.Net编程中进行单元测试
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Docker安装官方Nexus3镜像构建Docker私服 实践笔记
- js事件大全
- Centos7 安装 jdk8 的正确姿势 实践笔记
- 初探雾效果!shader 源码分析与讲解! Cocos Creator 3D Shader Fog !
- js键盘键值大全
- mysql用户创建+密码修改+删除用户+角色分配 的正确姿势 实践笔记
- Centos7 安装 Nginx 的正确姿势 并设置开机自启 实践笔记
- js函数大全(2)
- HTML之打开/另存为/打印/刷新/查看原文件等按钮的代码
- Centos7 安装 Keepalived+Nginx 双机热备HA 的正确姿势 并开机自启 实践笔记
- 从 findbugs-maven-plugin 到 spotbugs-maven-plugin 帮你找到代码中的bug
- nmap常用命令检查主机在线与在线主机端口开放情况
- 想做测试工程师的可以看看
- nginx 实现Web应用程序的负载均衡
- 线上遇到nginx Cors跨域请求OPTIONS方法405 Method Not Allowed问题