00:00
哦,EZ教程。好,咱先回要上节课内容啊,上节课讲了什么呢?讲了import,哎,什么叫印呢,往里来破呢,港口往港口里来,就是什么进口,放咱们这儿呢,就是导入,导入俩包,一个OS,一个time,哎,那么OS呢,可以清屏,调用这系统命令clear尔清屏,然后输出一行,然后呢,Time呢,可以延迟愣一秒之后再输出第二行,这样呢,我们就可以逐行输出文字了。哎,但是有个问题,这OS操作系统是用什么语言写的,写操作系统,这语言又运行在什么操作系统之上呢?哎,这是一个问题,以前的软件好说,以前的软件全都是指令,指令全都写好了,直接批处理,对吧?比如说unix这个系统是用什么语言写的呢?写写Unix这个编程语言是运行在什么系统之上呢?Unix不是第一个操作系统嘛,所以这事儿啊,绕的就有点儿,互为因果,无始无终是吧?先有鸡还是先有蛋呢?其实呢,它是一个生命的不同阶段,童年的时候大哎,长大了,那就是97操作系统,Unix是用CPU的汇编语言写的。
01:19
汇编语言最早开发的目的就是玩儿游戏。但是只有一台PP7,哎,想申请呢,失败了,后来呢,汤普森也长技术了,哎,向上管理,看看上层有什么需求,管理层啊,需要管理这个专利文书,他就以这个名义买了一台PP11文书管理系统做没做出来不知道,Unix做出来了,他把unix移植到这个PDB11上了,咱们呢叫移植,人家呢叫做portable,港口嘛,Port import, 哎,Portable可移植性,哎,咱们用移植呢,因为咱们老种地是吧,人家用portt呢,因为人家老在港口呆着是吧,这就文化差异嘛,但是我沿海港口也可以,这个PB11有多强呢?这个性能有24K的物理内存,甚至有500K的磁盘空间,那简直是天亮了。当时最初的unix是用汇编语言写的,汇编语言就是CPU的指令,它是需要记忆大量这种指令,那怎么让这个unix更通用呢?
02:23
就啊得有各种各样的应用,为了把这个制作应用的门槛降低,它创造了这么一种语言,叫什么呢?叫高级编程语言,高级high level, 它和高在哪儿呢?它和这汇编相对,它是high level高级的,抽象的,而汇编呢,就是就是低级的,或者说紧挨着硬件的。C语言制作的目的啊,就是为了不用记忆复杂的汇编指令,CPU指令不用记,而且呢,用类似人类的语言来编程,编完了交给编译器,那unix编程来,这版权算谁的呢?嗯,汤姆森是贝尔实验室员工,用的是贝尔实验室设备,版权会跟着汤普森走吗?就像Python跟着ID一样,当时呢,At.
03:14
这个垄断不能进入计算机行业,就像这个派拉蒙影业,你不能又做电影公司,又做影院院线,更何况啊,人们对这个曹勇没有认知,更别说购买了一个新东西出来,人都不知道是什么,你让他花钱,那不行,他总要经历这么一个过程。那版权这个事儿,At MT的管理层没想到,单这这个东西不影响unix自身的进化。C语言最早是在unix上开发应用,哎,那么C语言和unix呢?在PDP11上,没有文档,没有书籍,没有人知道。1973年unix的第4个版本,不但可以用C写这个unix应用,而且用C重写了unix系统本身,并且编译成功。此后Unix和C呢,共同进化,74年呢,SM发表文章,这是unix和外界首次接触,学术界感觉这挺有意思,要源码,哎,大学计算机系发现了有一种那时候可能还叫。
04:15
的机电系,发现了一种叫做操作系统的东西,哎,于是有了操作系统这样的课程,这个东西挺好玩儿啊,第5版呢,就以教育目的供大学使用,成为什么呀,成为范例,各个大学都玩unix,死代码,各做各种各样的改进。跟这个变种,75年的秋天,汤姆森修了一个长假,回到这个母校加州伯克利开了一门unix课程,带着大家读源码,此时unixx c语言就在。伯克利扩散开来,伯克利也成为超越贝尔实验室的一个新的技术引擎,Unix伴随着C语言从无到有,这两个打工人也成为这个新领域的明星。Unix很简单,他需要一个天才才能理解他的简单。
05:05
那这个硬件呢,也在不断变化,从最早的PDB7,然后呢,到这个PDP11申请到的,然后这个。VERSIONSON4就在用C重写了,然后VERSIONSON6,然后呢,它就分成两个分支,一个是at nt的版本,还有一个是bse的版本,哎,Be就后来发展成各种各样的b SE c system呢,就是这个at TT的版本,但是at t at TNT他不懂这个东西能卖钱,因为没人知道这个东西是个啥,伯克利的发行版呢,越来越火,抢过这个unix的风头,这个at TNT和贝尔实验室也快坐不住了,你说大家都用这BSD,不用我这个正版unix怎么办呢?哎,那么我们再回顾一下这节课,这节课呢了解到在unix上制作出了C语言的编译器,而且呢,用这个C语言的编译器编译了C语言的编译器,哎,这就是完成了自己就是用这个编译器去完成了这个编译器程序的编译,然后呢,这个,而且使用这个编译器呢,重新编译了unix,就是把这个系统。
06:16
都给编译了,并且启动成功,嗯,这个时候啊,还有个问题,你可以这个用C语言,用Python语言,但是里面比如说abcdh hello word这些字母是怎么来的,你计算机不是只认0101吗?它怎么会有H这些字母呢?咱下次再说o ez教程。
我来说两句