目前IT领域对Unix和Linux的概念模糊不清,有的人说差不多,有的人说一样,也有的人说不一样,到底这两者之间有什么异同点,下面我们来分析一下。
把Unix和Linux认为差不多的原因是什么呢?其实Linux就是类Unix,什么叫类Linux,就是类似于Unix,是Unix的分支,从文件系统的结构、命令等方面比较相似,故此很多人觉得Linux和Unix差不多,实际上差得太多了,从内核、进程管理、设备管理、I/O方式等都不一样,即使是Unix之间,它们的区别也是比较大,更不用说Linux。
对Unix的不了解也造成了上面概念的混肴,目前主流的Unix系统有三种,分别是AIX、HP-UX、Solaris,它们分别运行在各自的Unix服务器上,这些Unix服务器自成体系,有自己生产的CPU、内存、主板等等,这些Unix系统互不兼容,它们各自有自己的系统工程师,这些工程师一般只熟悉其中的某种Unix系统,如果要熟悉其它的Unix系统,则还要继续学习,这些Unix系统没有好坏,只有不同。
另外,目前各个行业关键性的应用领域采用的都是Unix服务器,为什么呢?Linux一般运行在PC机上,不太稳定,并行度不够 一般应用在小型企业;而Unix系统则运行在Unix服务器上,这些服务器非常稳定,已经经历过几十年的考验,还有这些Unix服务器CPU的个数最多的可以达到一百多个,并行度非常高,这个是PC机无法比拟的。目前在电信、金融、油田、移动、证券等行业的关键性应用,Unix服务器处于垄断地位。所以只有掌握了Unix才能真正意义上的进入高端行业,对以后的职业发展是至关重要的。
那是不是Linux就不如Unix呢?我们去区分好坏是比较困难,但是应该从应用上区分比较好,Linux被称作是IT的后PC时代,前景非常广阔,目前其最大的应用是在嵌入式方面,作为服务器的应用,一般停留在小型企业,比较低端的应用。
讲了这么多,大家应该对Unix和Linux有了比较清晰的认识,所以学会了Linux就等于会Unix的是个比较肤浅的认识。是个别公司商业上混肴视听的一种不负责任的做法。也造成了大家对Unix和Linux之间错误的认识。
那是不是说熟悉掌握了Linux,就一无是处?当然不是。至少以后学习Unix会比较容易一些,但是要能够真正的操作Unix系统,必须还要继续学习,以后就不能再说Unix和Linux差不多,我会了Linux就等于我会了Unix之类的言论。
那么如果想做一个有发展潜力的DBA,应该具备哪些知识呢?Oracle知识就不用说了,必须掌握的知识包括:Unix&Linux、存储管理、集群应用(RAC)、高可用性应用(MAA)等。
操作系统有两大阵营,一边是基于微软 Windows NT 的操作系统,一边是由UNIX衍生下来的操作系统。
Linux, Mac OS X, Android, iOS, Chrome OS甚至路由器上的固件,这些操作系统同出一族,都是基于最初的UNIX系统开发而来,统称Unix-like 操作系统。
Unix系统由AT&T贝尔实验室于1960年代开发。Unix哲学是专注于一件事去创造小而精的工具,并将他们做的完美。比如,在Linux终端上可以使用管道符组合几个工具去完成一项复杂的任务。在Unix系统中,一起皆文件,包括硬件设备和特殊文件在内,都属于文件。
Unix的“子孙后代“
截止目前,Unix已有40几年的历史,其子孙繁多。简单的说,Unix沿着个两个分支发展。
学院派分支
一个分支在学术界发展起来。这个分支中,比较出名的是BSD(Berkeley Software Distribution),它是一个开源的unix-like操作系统。BSD衍生出了 FreeBSD, NetBSD, 和 OpenBSD。NeXTStep也是基于BSD开发的,苹果公司的OS X 又是基于NeXTStep开发,iOS又在OS X基础上开发。
MINIX是一个用于教学的Unix-like操作系统。首MINIX启发,大学生 Linux开发了Linux操作系统。我们今天口口相传的Linux操作系统确切来说是GNU/Linux,至于为什么要加个‘GNU‘字样,那是另外一个话题了。GNU/Linux由 Linux kernel 内核和很多 GNU 工具组成。GNU/Linux并不是直接由BSD发展而来,但是它还是基于Unix,况且它出自校园,毕竟还是归结在学院派分支里。今天市面上常见的Android, Chrome OS和嵌入式操作系统,都是基于Linux操作系统开发的。
商业分支
AT&T UNIX, SCO UnixWare和Sun Microsystems Solaris这些是大公司开发的商业操作系统。商业操作系统不是经常接触到,不多说了。
下图Unix族谱
DOS 和 Windows NT
随着IBM个人PC的流行,微软DOS操作系统在个人电脑上流行起来。DOS是一个与Unix完全不相干的操作系统,这一点可以从DOS使用反斜杠来表示文件目录分隔符上看出来。Unix在70年代就使用正斜杠来分割文件目录,但是80年代在个人电脑上流行起来的DOS并不支持文件目录。DOS使用正斜杠来表示转换字符,以至于后来DOS2.0支持了目录后选择用反斜杠表示目录分隔符。Windows 3.1, Windows 95, Windows 98, 和 Windows ME底层都是DOS,后来微软开发了新一代的操作系统Windows NT(Windows New Technology),Windows XP是其代表作。在此之后的Windows 7, Windows 8, Windows RT, Windows Phone 8, Windows Server都是Windows NT内核。Windows NT同样不是Unix-like操作系统。
为了兼容之前的DOS系统和windows软件,Windows NT沿用了DOS的一些设计,比如磁盘符,目录反斜杠,正斜杠命令切换等。