linux 是由 Linus 和 GNU 基金会开发的原始代码,指的是 GNU/Linux 操作系统的内核。更一般地说,它是类Unix。Unix是由AT&T开发的原始代码,是指AT&T开发的原始操作系统。更一般地说,它指的是派生操作系统的系列。Linux是开源的,而Unix是混合的,实际上,很多是闭源的,很少有Unix项目是开源的。
Unix被认为是大多数操作系统之母。Unix系统的设计基于“Unix哲学”,其中包括以下特征:
这里值得一提的是下面关于Unix哲学的引用:
虽然这种哲学不能用一句话来写,因为它的核心是系统的力量更多地来自程序之间的关系,而不是程序本身。许多 UNIX 程序孤立地做着非常微不足道的事情,但是,与其他程序相结合,成为通用和有用的工具。 – Brian Kernighan & Rob Pike
下图将向您描述Unix体系结构。
Unix的主控程序是它的内核。内核可以完全控制整个系统。它具有为文件系统处理,资源处理,内存管理,启动和停止程序以及少数其他低级核心任务提供服务的子系统。
内核是操作系统的核心,充当用户和硬件之间的接口。每个内核子系统都具有某些功能,如并发、虚拟内存、分页和虚拟文件系统。
在架构的外层,我们有shell,命令和应用程序。Shell 是用户和内核之间的接口。Shell和用户键入命令,解释这些命令并相应地调用计算机程序。
Unix操作系统的例子是Solaris和HP-UX。UNIX系统的最大分销商包括IBM,HP和SUN。
到现在为止,你已经对Unix有了一个大概的了解。现在让我们详细探讨一下 Linux。
人们确实在Unix和Linux这两个术语之间混淆了很多,他们通常会问这样的问题:“Unix与Linux不同吗?”/“Linux和Unix是一回事吗?”/“Linux像Unix吗?”/ “Linux是建立在Unix之上的吗?
以下是所有这些问题的答案。首先,让我用一句话来澄清你的困惑。Linux和Unix是不同的,但它们确实相互关系,因为Linux是从Unix派生的。
Linux不是Unix,但它是一个类Unix的操作系统。Linux系统是从Unix派生出来的,它是Unix设计基础的延续。Linux发行版是直接Unix衍生品中最着名和最健康的例子。BSD(Berkley Software Distribution)也是Unix衍生品的一个例子。
在这个关键时刻,重要的是我们让你清楚什么是类Unix?
类Unix操作系统(也称为UN*X或*nix)是以类似于Unix系统的方式工作的操作系统,但是,它们不必符合单一UNIX规范(SUS)或类似的POSIX(可移植操作系统接口)标准。
SUS是任何操作系统都需要满足的标准,才有资格使用“UNIX”商标。该商标由“开放集团”授予。
目前注册的 UNIX 系统的一些示例包括 macOS、Solaris 和 AIX。如果我们考虑POSIX系统,那么Linux可以被视为类Unix的操作系统。
根据Linux内核官方README文件,Linux是由Linus Torvalds和团队从头开始开发的UNIX克隆。它的目标是符合 POSIX 标准。Linux内核代码完全是从头开始编写的。它的设计方式使其像Unix一样,但它没有原始的Unix代码。
同样重要的是要注意,Linux只是内核,而不是完整的操作系统。这个Linux内核通常被打包在Linux发行版中,从而使其成为一个完整的操作系统。
因此,Linux只是内核,而Linux发行版可以被视为操作系统。另一方面,UNIX本身就是一个完整的操作系统,因为所有东西(所有必需的应用程序都捆绑在一起)都来自一个供应商。例如 索拉里斯。
Linux发行版(简称发行版)是一种操作系统,由基于Linux内核构建的软件集合创建,是一个包管理系统。
标准的Linux发行版由Linux内核,GNU系统,GNU实用程序,库,编译器,附加软件,文档,窗口系统,窗口管理器和桌面环境组成。
Linux发行版中包含的大多数软件都是免费和开源的。它们可能包括一些专有软件,如二进制 blob,这对于一些设备驱动程序至关重要。
因此,Linux发行版实际上通过添加不同的应用程序使Linux内核完全可以用作操作系统。有各种版本的Linux发行版可以满足广泛的用户需求。
例如,我们有用于嵌入式设备的基于OpenWrt Linux的操作系统,用于个人计算机的Linux Mint和用于超级计算机的Rocks Cluster Distribution。总共存在大约600个Linux发行版。
有趣的是,您知道google流行的Android移动操作系统是基于Linux的。Android OS的每次迭代都是基于当前的Linux内核构建的。