UNIX的历史1.萌芽:汤普森(Ken.Thompson)用汇编语言写了一套内核程序,其中还包括一些内核工具程序和一个小型文件系统。这个系统就是UNIX的雏形,叫做Unics文件系统有两个重要的概念,对后来Linux的发展产生了相当大的影响:1)、所有的程序或系统设备都是文件2)、与程序本身无关或辅助文件,只写了一个程序2.正式诞生:Ritchie等人用C语言编写了第一个正式的Unix内核。高级C语言与硬件并无密切关系,因此这一变化也使得UNIX易于移植。3.重要的UNIX分支和版权问题:一个重要的分支是BSD。由于UNIX的高便携性和强大的性能,以及没有版权纠纷,许多商业公司开始了UNIX操作系统的开发。开发在架构上类似,但只能支持自己的硬件(早期的硬件公司没有“协议”的概念),所以早期的UNIX只能等同于服务器或大型工作站,直到SystemV个人电脑有了X86架构在第七版之后才被支持。4.UNIX版权的回收导致了Minix的出现:前面说了,UNIX版权的回收直接导致了教授上课没有源代码。这时Tanenbaum教授写了Minix这个类UNIX内核程序,并没有参考UNIX的源代码,但是Minix和UNIX完全兼容Linux的诞生。前面我们提到,Tanenbaum教授为了应对UNIX版权回收问题,独立开发了一个类UNIX的Minix。这时,芬兰人托瓦兹出现了。在学习期间,他想自己打造一个UNIX来玩,但由于当时UNIX的源代码还没有开放,所以他选择在Intel386上安装Minix来满足自己玩的心态,但由于Minix只是为了满足教学需要,有些功能还不够强大,Torvalds想:“那我为什么不自己重写一个我想要的操作系统呢?”于是他开始了他的内核程序的开发我们需要明确的是,他的内核编程是建立在一些基础上的,比如GNU项目提供的bash和gcc编译器等免费软件,并参考了设计理念和程序Minix的代码,后来他真的成功了!后来为了让Linux兼容UNIX,他选择了修改Linux,参考了POSIX规范。这个正确的决定让Linux流传极快(它可以运行原本在UNIX上运行的程序)Linux虚拟团队的发展:从个人维护阶段到黑客志愿者参与阶段(这个黑客不是那个黑客,有兴趣的可以查一下原黑客的意思),在这个阶段,Linux逐渐发展成功能性的UNIX和Linux的大致发展史是这样的,参考书籍是鸟哥的Linux私房菜。
