文档章节

笨兔兔的故事——带你了解Ubuntu,了解Linux 第十三章 开源

雨中人X
 雨中人X
发布于 2016/01/04 08:34
字数 891
阅读 32
收藏 0
(13)开源
大家见识了老p的本领之后,都很乐意的听候他的调遣,整体的工作效率提高了一些。不知道查皮那里有没有类似的角色,于是就拜托狐狸妹妹去网上问问,结果发 现在查皮发布的时候,有点软的公司就宣称,查皮有类似的功能,可以记录用户对软件的使用情况,使用的多的软件就能够较快的启动。而让人不解的是,5年后, 查皮的下一代,长得比他漂亮的Vista(看到这个词,总让我想起Visa,于是我总觉得这个系统很贵)系统发布时,有点软公司还在宣传,Vista系统 增加了记录用户习惯的功能,用的多的程序将得到更快的启动速度。也不知道到底是加了没加,反正他们公司的系统,总是越用越慢倒是真的。到底为什么慢,我也 说不清,因为他是一个闭源的系统。
  
什么是闭源呢?就是源代码不开放。我们知道,程序是程序员们一行一行的语句编出来的,c语言也好,java也好,这一行一行的语句,就是这个程序的源代 码。有了源代码,就能够100%的了解整个程序的构造,如何工作。而源代码是不能运行的,比需要把源代码变成可执行的二进制程序,这个过程叫做编译。源代 码经过编译之后,才可以运行,但是编译之后的程序就不能够知道内部的构造了。我们平时在网上下载的各种程序,都是编译好的二进制程序,如果你想要它的源代 码,对不起,不行!这是商业秘密,怎么能给你?给了你,我们的软件怎么卖钱?这种不开放源代码的程序,就叫闭源程序。打个比方,就好像肯德基。麦辣鸡翅谁 都可以得到,只要花钱买就行,但是配方没人知道(虽然其实也没多好吃)。配方就相当于源代码,麦辣鸡翅就相当于编译好的二进制程序,制作过程就相当于编译 过程。如果有了配方(源代码)你就可以自己作麦辣鸡翅(自己用源代码编译出二进制程序),甚至还可以根据口味对配方进行修改。(根据自己的需求修改源程 序,为软件增加自己需要的功能)
  既然有闭源,那是不是还有开源呢?你答对了。linux,就是一个开源的系统。
开源是什么?开源是一种精神,是乐于分享的理念。再举个例子,有一天你发现,蒸鸡蛋羹的时候往里面加点牛奶,可以让鸡蛋羹更滑嫩。知道了这个窍门,你很高 兴的把它告诉你的朋友,让他们分享你的经验,于是大家很高兴的也学会了做这样的鸡蛋羹。这就是开源。你也可能不把它告诉别人,而是保留这个秘密,甚至申请 个专利,然后开个店去卖京城独一份的奶香滑嫩鸡蛋羹。这就是闭源。当然,这之中没有谁对谁错,睡好谁坏,只是不同的理念而已。 linux

本文转载自:

共有 人打赏支持
雨中人X
粉丝 8
博文 57
码字总数 15326
作品 0
深圳
高级程序员
5 款没有专利纠葛的 Linux 发行版

众所周知,Linux 是一免费、开源的操作系统。然而,Linux可以使用和加载非公开源码的设备驱动。一些销售商编译的的二进制驱动,没有公开丝毫源代码,我们叫它“Binary Blobs”(二进制斑点)...

火耳
2011/02/23
2.5K
7
笨兔兔的故事——带你了解Ubuntu,了解Linux 免疫 第十九章

(19)免疫   有人问,查皮那里的病毒那么可怕,你这里怎么没有病毒呢?好~      笨兔兔老师第二讲——为什么linux不中毒 首先我们来了解一下病毒,病毒是什么?其实说简单了,病毒只是...

雨中人X
2016/03/05
11
0
笨兔兔的故事——带你了解Ubuntu,了解Linux 第十章 人才

(10)人才    终于把照片都拷贝到了我的屋子里,把它们放在了专门放主人文件的分区下。有人忽然想问,查皮那里那么多碎片影响性能,那你怎么放这些文件呢?其实很简单,我更倾向于把文件分散...

雨中人X
2016/01/04
9
0
笨兔兔的故事——带你了解Ubuntu,了解Linux 第一章 开端

(1)开端    我叫Ubuntu,主人喜欢叫我“笨兔”,但是我绝对不笨,与某种耳朵长尾巴短的哺乳动物也没有什么联系,我是一个操作系统,我是一个Linux,我是Ubuntu。   在2008年的4月,我来...

雨中人X
2016/01/01
123
0
Linux管理员常用网络资源(收集帖)

本文给力,收集的是Linux管理员常用网络资源。笨兔兔想会对各位Linux系统管理员会有用的。如果喜欢,拿走即可。 Corntab Corntab是一款简易的网络crontab端,无需安装,轻松创建crontab语句。...

fly_xiang
2014/12/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

String ,  StringBuffer ,  StringBuilder的区别

String , StringBuffer , StringBuilder的区别 String 首先,String 是用来表示一个字符串常量的,它是一个不可变对象,意味着,一旦我们创建了某个字符串之后,就不能再改变它的值了,我们可...

tsmyk0715
48分钟前
2
0
区块链100讲:UTXO 和 Account 模型对比

在当前区块链世界中,主要有两种记录保存方式,UTXO 模式(Unspent Transaction Output) 和 Account 模式。Bitcoin 采用的是 UTXO 模型,Ethereum 采用的 Account 模型,同样 CITA 也采用了 ...

HiBlock
50分钟前
1
0
Vue中路由管理器Vue Router使用介绍(三)

一、路由定义添加动态参数定义 1.路由定义项,使用:xx 方式 定义动态参数 { path:'/user/:id/:name', name:'user', component:()=>import('./views/User.vue') ...

tianma3798
51分钟前
1
0
从ibdata文件恢复mysql数据

DROP TABLE 恢复【一】 Recover InnoDB dictionary Percona Data Recovery Tool 单表恢复

IT--小哥
55分钟前
1
0
常见设计模式UML图

常见设计模式UML图 本文主要总结常见的设计模式的UML图,方便查阅和思考。 创建型模式 简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式和单例模式,这五种设计模式主要处理对象的创建...

陶小陶
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部