Unix与Linux操作系统差异分析Linux认证考试

文章作者 100test 发表时间 2010:03:13 15:30:06
来源 100Test.Com百考试题网


  Unix与Linux操作系统是同一个操作系统吗?是,也不是。或许这个答案有自相矛盾的地方,但是却是一个比较合理的答案。笔者在后续的文章中,将陆续对Unix与Linux这两个操作系统的差异进行分析。若各位读者对这个话题感兴趣的话,请关注笔者后续的文章。

  一、Unix与Linux操作系统的源代码是不同的。

  虽然Unix与Linux操作系统有不少的命令是相同的,但是他们的源代码则是不同的。也就是说,在Linux操作系统开发过程中,采用了很多 Unix系统的设计理念,并遵循Unix操作系统的POSIX规范。但是其并没有采用Unix操作系统的源代码,并没有采用Unix操作系统的运行方式。从这一点来说,他们两个是不同的操作系统。

  现在Unix操作系统走的是商业化的道理,其源代码是受到保护的。这也就是说,任何社会团体与个人都不能够抄袭或者随意修改Unix操作系统的源代码。而Linux在开发过车观念中,源代码都是重新书写的,所以就没有版权上面的限制。无论是个人还是商业团体,只要遵循一定的规范,就可以对 Linux的源代码进行更改或者复制。不会涉及到版权的问题。 故Linux操作系统才是一个真正的开源操作系统。

  二、Unix与Linux采用相同的系统调用为此就是同一种操作系统。

  Unix从发展到现在,有了很多种版本。如BSD或者HP-Uinx操作系统等等。他们都是Unix操作系统。为什么这么说呢?并不是说他们的源代码的起源是相同的,而是说他们都采用了一样的系统调用。在Unix操作系统中,最出色的特点就是通过命令来完成相关的操作。在Unix系统中,具有 1000多个命令。但是令人惊奇的是,这么多的命令却是通过少数几个函数调用与系统内核进行通信,这些函数调用就称之为系统调用。

  这就好像一个写字楼,其大门可能只有前后两个。但是通往这两个大门的道路却有成千上百条。那么各个应用程序只需要遵守这两扇大门的通信规则,就可以跟写字楼内部人员进行沟通。如在Unix内核中有一个Write函数,主要是往文件中保存相关的信息。而很多应用程序需要往硬盘的文件中保存信息,如文本处理文件、数据库系统等等。但是这些应用系统的话最终都会调用Write函数往文件中保存信息,所以这些应用程序开发者只需要了解Write函数,就可以顺利往硬盘中保存文件。可见,真是因为大家都采用了相同的系统调用,所以应用程序才能够在不同的Unix版本中顺利移植。

  而Linux操作系统采用的系统调用跟Unix操作系统是相同的,都遵循POSIX的规范。从这一点上来说,Linux操作系统就是Unix操作系统,只是他们的开发者不同而已。为此即时他们的源代码不同,但是并不影响这个定性。由于两个操作系统采用了相同的系统调用,则在Unix操作系统上开发的应用软件,可以很方便的移植到另一个Linux操作系统上。

  所以说,Unix操作系统与Linux操作系统即是同一个操作系统(系统调用相同),又不是相同的操作系统(源代码不同)。这个答案看起来自相矛盾,但是真实的反映出了这两个操作系统相互之间的关系

  三、内核文件与外壳不同

  无论是Unix操作系统还是Linux操作系统,其基本上是有内核、外壳和应用程序三部分组成。毋庸置疑,内核是操作系统中最重要的部分,其直接跟计算机硬件打交道。负责外壳与系统硬件之间的信息交流。为此也有专家说,内核才算是真正意义上的操作系统。

  Unix操作系统与Linux操作系统内核文件是不同的。如Unix操作系统其内核程序对应的文件往往是/stand/unix文件.在 SUNOS的Unix操作系统中对应的是/kernel./genuix。操作系统在启动的时候会把这个内核程序加载到系统内存中。而Linux操作系统的内核程序与Unix操作系统有比较大的区别。Linux操作系统采用的内核文件为/boot/vlinuz。无论是系统工程师还是程序员必须要知道这个最基本的区别。如在对系统内核进行升级的时候,就需要知道所采用的内核文件。

  Unix操作系统与Linux操作系统不仅内核文件不同,所采用的外壳也是不同的。当目前为止,Unix操作系统主要支持四种外壳,分别为 SH、CSH、KSH和BASH。当用户登录到操作系统之后,就会启动一个外壳程序。通常情况下,在同一个时刻只能够启动一个外壳。系统工程师就是通过外壳同系统内核与硬件进行通信。而Linux操作系统目前为止只支持三种外壳程序,分别为BASH(默认采用的外壳程序)、CSH、KSH,比Unix操作系统少一种。这个差异对于普通用户来说,可能没有什么影响。但是对于系统工程师进行一些特定工作的话,就可能会带来比较大的不方便。



相关文章


Linux磁盘配额Quota配置详解(2)Linux认证考试
Linux磁盘配额Quota配置详解(1)Linux认证考试
如何开启关闭linux防火墙Linux认证考试
Linux不重启更新网卡驱动Linux认证考试
Unix与Linux操作系统差异分析Linux认证考试
查看调整swap分区大小Linux认证考试
Linux下清理内存和Cache方法Linux认证考试
全面解析Linux特殊用户权限的分配Linux认证考试
详细介绍Linux批量用户的创建Linux认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛