00:00
Unix非常的牛啊,它的运行性能非常高效,而且非常的稳定啊,可以说是目前为数不多的啊,能达到所谓的高性能大型主机可靠性要求的这种系统啊。所以我们知道像银行啊,金融业啊,一些包含了重要数据的那些大型服务器,目前运行的系统依然是基于unix。那由于unix它呀,不是开源免费的软件啊,那当然最早期它其实也类似于是开源的,为了要扩展啊,让大家都用起来,那最早的时候他是放开源代码,但是后来呢,要去做商业化的时候,就把版权收回来了,所以一般只有一些大型的商业公司才会去购买unix的版权,然后去开发呃,对应的性能非常强悍的大型主机服务器啊,那与之对应的呢,之后就出现了各种各样商业版本的unix发行版啊,目前常见的有哪些呢?主要就有这几个了。
01:03
这个可能我们也听说过啊,像。Solari,呃,So其实就是sun公司所开发出来的一个非常重要的unix的一个分支啊,那呃,Solari呢,其实在之前一度占据了大量的市场,本来它就叫做sun solari。是sun公司开发出来的,后来我们知道sun公司被Oracle收购了嘛。诶,那所以呢,后来的soaries就叫做Oracle soloaries,但是我们知道so unix啊,它主要是运行在高性能的主机上,它其实是严重依赖硬件。我们现在呢,呃,危机的性能越来越强了,现在我们都是企业里边啊,不再去部署那种高性能强悍的那种大型主机了,诶所以呢,现在salaries也就慢慢的被。Oracle Linux替代。所以很多人也是为这个sorry非常的惋惜啊,认为它其实是一个非常好用的系统啊,但是这就是整个时代的发展啊,我们不再去依赖单节点非常强悍的主机,而是要构建一个集群,用普通的微型机,个人电脑也可以去跑,一个Linux系统就可以当成一个服务器了,这是我们当前的一个发展趋势。
02:23
啊,那当然了,不光是这个上公司的solo啊,像IBM也有它对应的一个unix版本,叫做IBM的X系统,那它主要是运行在IBM的P系列小型机里面,那就power系列里,那对应的呢,还有这个惠普公司,惠普公司的UX系统,它就是运行在惠普的大型服务器里面。那不管是solo,还是IBM的X,还是惠普的UX,这些系统他们主要是运行在高性能的大型机上面,所以我们说因为它对硬件的依赖太过于严重,现在的应用其实是越来越少了,那到今天还保留了。
03:07
发展的活力还在广泛应用的,有没有这样的unix分支呢?哎,所以这里面值得一提的就是这个BSD。BSD呢,很明显是一个缩写了,它的全称是。Berkeley software distribution,呃,翻译的话应该叫做伯克利软件套件啊。顾名思义,它就是。美国加州大学伯克利分校开发出来的一个unix版本。这个版本呢,非常的重要,因为基于它又衍生出来了另外一个版本叫做free b SD啊,那所以从名字上就能看得出来啊,这也是一个免费开源的自由软件啊,你可以随便用啊,啊所以本质上来讲,Free b SD跟Linux它是有某种意义上的相似之处。它也是由来自世界各地的志愿者去开发维护,就可以为不同架构的计算机系统提供不同程度的支持。
04:06
不过呢,这个free b SD啊,它的诞生比Linux要晚,它是1993年。前面我们说Linux是1991年就诞生了嘛,Free b SD是1993年12月的时候才发布了它的1.0版本,而且呢,后面由于这个版权的纠纷,因为我们知道这个unix本身是有版权的嘛,啊,那所以因为这个版权的纠纷,一直到1995年的时候才发布了它的。2.1版本,所以整个在这个过程当中啊,Linux其实已经是得到了非常迅猛的发展,并没有太受到free b SD的影响。但是free b SD它也有它的非常好的地方,所以说free b SD后来也得到了广泛的应用和发展,为什么这是为什么呢?这主要就要提到一个关于这个BSD啊,它其实也是一个协议的名称,就属于BSD,它是在这个BSD许可议下去发布。
05:05
什么叫做BSD许可协议呢?简单来讲,他跟我们那个Linux Linux本身也要遵循一个发布的协议,这个我们稍后再去具体的介绍,那简单来说,Linux它是可以直接去阅读源码,可以去修改,然后可以自己再去发布,但是Linux有一个限制,就是你如果用了。基于Linux内核啊,我们这样一个开源免费的软件,你做了更改,做了发布,那接下来你也必须把自己开发出来的代码完全的公开,也就是说只要你用到了nix,那么也就代表你开发出来的东西也必须是开源。而这里的这个free b SD呢,它的BSD协议相当于限制就更少。他的意思就是说所有人诶都可以看到我的源码,而且可以去随意的使用,随意的更改,而且可以发布自己新的更改之后的代码,而且接下来我可以把它包装起来,变成一个闭源的软件。
06:09
啊,所以我们就会发现free b SD的这样一个协议呢,它其实是会更加方便软件的商业化啊,啊,那所以我们需要了解的一个就是之后基于这个free b SD啊,当然了也借鉴了这个BSD里边的一些内容,那就发展出了一个新的系统叫做达尔文啊,那我们知道这其实就是苹果公司后来Mac osx的前身。Mac osx其实就是基于free b SD可以说就是基于BSD这套系统发展出来的。呃,那当然了,关于free b SD以及后来的达尔文,还有苹果的osx啊,当然现在叫做Mac OS啊,这一套系统,这些发展变化,这都是后话,在当时在上个世纪的80年代,90年代的时候呢,因为unix本身是必然不开源的。
07:08
它是有版权的,所以它本质上是一个商业软件,那基于它的这些商业发行版呢?啊,那其实往往都是价格不菲的,是运行在高性能主机上去使用,所以当时像这个Oracle或者IBM他们的这样一个高性能的大型主机都要卖到什么样的一个价位呢?80年代啊,差不多都得几万美金一台。那所以这个价格肯定是一般人用不起的啊,那一般人看不到这个unix到底是长什么样,买也买不起,也不知道它的源码长什么样,那肯定就没有办法进一步去做研究发展了呀,所以为了方便教学和研究啊,另外一位大神。这是荷兰的一位教授,叫做安德鲁塔嫩鲍姆,荷兰的一位教授,这个老教授啊,我们看这个发量一看也是大神,那这个老教授他也是著名的另外一本书叫做计算机网络的作者。
08:08
为了方便教学和研究啊,那这位老教授就决定。写一个不包含任何带unix版权的源代码的这样的一套操作系统啊,当然它还是借鉴unix的思想啊,类似于unix的这样的一个新的操作系统,它把它就叫做miniix啊,从命名上我们也看得出来,这就是mini unix,迷你版的unix。而且安德鲁坦顿鲍姆教授把这个minix开发出来之后呢,直接就开放了全部的源代码,这对于广大程序员来讲无疑就是一个福音了啊,所以他把这一个代码公开了之后,各个学校啊,主要一开始就是在学校里边啊,各个大学就可以方便的用它进行教学和研究工作了啊,那当然不光是老师们,教授们得到了福音,很多学生也得到了相对应的好处,那比如说李纳斯啊,那当时的一位大学生,他对unix非常感兴趣,现在我又拿不到unix,他是商业软件,看不到它的内部实现,现在lix开源了,那就给李纳斯打开了一扇通往操作系统内核的大门。
09:19
啊,所以呃,1991年的时候,李纳斯使用了mini之后呢,诶,他就发现这个系统有很多的缺陷,比如说这个性能不太好,不如unix,内核里边也有很多就是不太好的地方啊,不太好用,而且最大的一个问题呢,是当时在学校里边,如果想要上网的话,诶,那是需要登录学校的服务器的,学校服务器的操作系统呢,用的就是unix啊,因为学校肯定是买了版权的嘛,这个时候需要去登录一个unix操作系统的服务器,这个时候呢,就需要用到一个叫做。终端仿真器的东西,这个终端仿真器unix系统是提供了的,但是Linux没有提供啊,就是呃,谈谈鲍姆教授觉得你这个东西要上网,这不是研究操作系统内核的一个核心要求是吧,直接把它咔嚓精简掉,但是李纳斯就用着不爽啊啊,就没办法上网啊,这肯定不行啊,我们一般人现在这个如果要是没有网线的电脑,那那就不能叫电脑,对吧?啊,所以如果一般人碰到这个问题,那可能诶骂两句,然后算了,不用了,这东西不好用。
10:28
但是李纳斯那不是普通人啊,你不好用,我就自己来搞定,你的源码不是都开放了吗?所以李纳斯就决定抛开Linux,直接从硬件层面开始,自己单独的去设计一个终端仿真器。把终端仿真器先做做出来,然后做出来之后呢,诶,他发现你这个minix里边不是有很多不太好用的地方吗?性能不佳的地方吗?我干脆我把你全改了,哎,所以接下来他就越写越多,文件系统也重写了,磁盘驱动也写了啊越来越多之后,整个一个精简版的一个新的操作系统的内核雏形就形成了。
11:11
啊,所以到1991年6月的时候,前面我们说他就开始搜集unix系统标准的资料,然后确定我要开发一个类似于unix的系统,功能要比Linux更加强大,真正做到性能强劲,系统稳定,所有的功能都可以做到。所以两个月之后啊,到1991年9月的时候,林纳斯就完成了整个的操作系统,命名为Linux,上传到了FTP服务器上,这就是我们所说的Linux内核的0.01版本,这个小企鹅就终于诞生了。啊,整个这个Linux创造的过程当中,我们会发现李纳斯他其实也是没有用到任何的工具啊,当然了,那个时候肯定也没有促进生产效率的一些其他的工具啊,他写出来的整个这个系统差不多1万行代码,全部都是一行一行C代码手敲出来,纯手工打造啊,所以我们会发现就是工具啊,它主要是提高生产力,真正的编程内功。
12:12
跟工具其实是没多大关系的,那既然说到这儿,说到工具啊,我们就不得不说另外一个李纳斯大神的杰作,那就是大名鼎鼎的gate。相信大家都听说过这个啊啊,他get其实就是一个小工具了,它主要是用来做代码的版本管理,诶我们知道为什么李纳斯要开发这样一个工具呢?啊,其实就是因为一开始他独自开发出了Linux内核的0.01版本吧,啊,但是呢,因为他把它开源了嘛,后面就越来越多的人开始加入进来,跟他一起去做这个Linux内核的开发和完善,诶,所以他整个就变成了一个开发团队,逐渐壮大之后,哎,那我们人多了,你肯定就不能随便去提交代码了,那系统就乱了嘛,所以我们就需要有一个统一的代码管理工具来做这件事情。
13:08
哎,那我们知道早期的代码版本管理工具呢,呃,比较经典的有这个SVN。但是呢,这个SVN是一个所谓的集中式的代码版本管理工具,哎什么叫集中式呢?就是我们很多人同时在改代码,那最后到底谁的代码说了算呢?诶我们就是有一个标准的服务器,诶这个服务器就来了啊,有一个SVN服务器放在那里,所有人那就看谁先提交了,诶只要你提交确认上去了,服务器这里的代码一改就以这个为标准,你别人如果想改的时候呢,你先从服务器上把这个代码下下,在这个基础上再改啊,保证大家不要改乱。这是SVN这种集中式的方法,这个比较好理解,但是它会有问题啊,那就是你既然这里有一个服务器嘛,那当然就会出现单点故障了,一旦这个服务器挂掉,那不是我们整个这个就代码就没法同步了吗?啊,那所以为了解决这个问题呢,就有了其他的一些所谓的分布式代码管理工具,李纳斯他们这个开发团队一开始呢,用的是一个叫做。
14:14
Bitkeeper的。一个分布式代码管理工具。那这个工具呢,其实是要收费的啊,一开始也并不是开源免费的,不过呢,那他们就说了,林佳斯你们这个团队做了一次内核,哎,这个项目非常好,我看好你们,所以只针对你们给你们授权,对你们免费啊,所以我们一看那这种效果这就不保险吧,这种免费只是暂时的。到2005年的时候。Bit这个团队表示,诶,啊,你们这个Linux发展的不错啊,应该钱也挣不少了,诶那所以我们这个产品啊,对你们收回版权,不再免费给你们用了,也要开始收费了。那我们想,这还能忍啊?本来我们这个Linux整个的思想就是要开源免费,我现在用一个小工具去管理代码,居然还要收费,不能忍。
15:06
啊,所以李纳斯一怒之下,干脆,好,你不是收费吗?不用了。直接自己用了几个星期时间开发出了一个分布式代码版本管理工具,就叫做getate,诶,这就是gate的来源,那getate开发出来之后,不停的完善,技术日臻成熟,大家发现诶,这个东西很好用啊,所以越来越多的公司啊,都把自己的代码版本管理工具从SVN迁移到了getate上面啊,所以我们知道现在基本上getate就成了我们版本管理的一个标配了啊,而且更加著名的是2008年的时候。有一个网站上线了,这个网站叫做github。哎,我们知道这是。全世界最大的男性交友网站啊,不对啊,应该是目前最大的,全世界最大的源代码集散地啊,几乎所有优秀的代码都集中在这个getthu上啊,这是一个协作式的源代码托管网站啊,所以有人就开玩笑说这个你作为一个程序员,你可以不会写代码,但是你必须得会用getar,只要你会用get up在上面你可以找到所有你想实现的代码,所以可以说李纳斯大神的两个杰作啊,我们看一个Linux。
16:22
另外一个K。可以说给广大的程序员带来了无数的福音啊啊,当然了,他们的起源可能都非常的偶然啊,那大神就是这样啊,一个动念,一不小心就做出来一个改变世界的东西。这是关于Linux和unix他们的渊源发展的,所有的故事我们可以了解一下。
我来说两句