字体:大 中 小    
		护眼
    	关灯
	上一章
	目录
	下一章
	
		  		第六百八十三章 贝尔实验室的UNIX  (第1/1页)
    Kenthompson在老婆不在家的三周里面写出了UNIxcao作系统。    1966年硕士毕业之后,被贝尔实验室多次邀请加入。    他和GE、mIt一起开发multicscao作系统,1969年因为过度设计而无法实现其宏大目标。    贝尔实验室花不少钱推出,但是Ken继续找到一台pdp7机器,废物回收,设计了太空旅行游戏。pdp7运行速度慢,他和dennisRitchie等人,重新设计文件系统,加快速度。    结果他第一周开始实现shell,第二周开始实现编辑器,第三周开始实现汇编器。    这三周刚好老婆带孩子回娘家,他完成了所有工作,在1969年写出了cao作系统Unix。    而dennisRitchie发明c语言。然后用c语言重写了UNIx。让UNIx可以轻松的在各个游戏之间移植。    公元1969年,贝尔实验室的Kenthompson和dennisRitchie正在设计一个史无前例的cao作系统:Unix    dennis兄,昨夜我一夜未眠,我感觉我们上了贼船了设计一个cao作系统可真不容易啊你看看cao作系统得管理多少设备键盘,鼠标,屏幕,打印机,光盘U盘,游戏杆......    嘘!机不可泄漏,光盘,游戏杆,U盘,几十年后才能发明啊!    所以上帝交给我们的任务不容易啊,得应对未来几十年的变化。你想想,我们可以开发一个针对键盘读写的程序,还可以开发一个针对打印机读写的程序,可是光盘U盘现在都不存在,怎么开发    在昨晚梦里,上帝好像了一句话,我想不起来了只记得抽象这俩字    抽象这些多乱七八糟的设备,有什么共同点    你看啊,这些设备虽多,但共同点是都可以向它们写点东西,或者可以从它们读点东西。    一个东西,可读可写,那不就是我们上周开发完的文件吗    对对,老弟得非常对我想起来了!上帝在梦里给我的就是:Everythingisafile!    我们再细化一下,文件就是个抽象的概念像个接口,其他的设备都是文件的实现。    没错,但是还有一个问题,既然把这些设备当成了文件那总得像文件那样给它们一个路径名吧!    嗯,有道理,当这些设备注册到cao作系统的时候,cao作系统就给它们分配一个像文件那样的路径,让它们成为文件系统的一部分!    如此甚好,以后程序员可以像cao作一个文件一样来cao作设备了:    它们都有一致的命名空间    它们都有一致的cao作方法    。    钦,等等!我们俩不是在用汇编开发cao作系统吗,你这是什么编程语言    哦,我忘了告诉你了,这是我私下里开发的语言叫做c语言,可移植性比较好,用它来开发Unix将来就可以移植到各种机器上去了。    老兄厉害啊,这c语言比汇编看起来舒服多了,敲完这行喝酒去!    1971年,Ken休假期间回到母校加州大学,开设课程,讲解cao作系统原理。一行行的给学生分析代码。激发了很多学生对编程的热情。Unix在很多大学开始流行起来。    其中影响了billJoy。    1983年Ken和dennis获得图灵机。    2000年Ken从贝尔实验室退休。    6年后63岁的他加入Google,发明了go语言。
		
				
上一章
目录
下一章