来自:Linux迷链接:https://www.linuxmi.com/linux-vs-unix.html

Linux和Unix这两个术语可以互换地用来指同一操作系统。这在很大程度上是由于他们惊人的相似之处,以致很多人不能区分这两者。在Linux vs Unix难题中,存在关于哪个系统做什么的困惑。如果您出生于90年代中期,那么您很可能只与Linux操作系统进行过交互。Linux在数据中心和云计算平台中占据着巨大的市场份额。Linux无处不在,它支撑着智能手机、Android TV和物联网设备等大多数智能设备。

虽然Linux和Unix确实有很多共同点,尤其是在文件系统层次结构和终端命令方面,但我们不能忽略这两个系统之间存在的差异。在本文中,我们将更详细地了解Unix和Linux,并详细说明两者之间的差异。

首先,Linux是Unix的克隆。它是一种Unix变体,飞速发展,产生了数百种风格或发行版。它们由一个充满活力的开发人员社区维护。为了更好地理解我们是如何走到今天这一步的,让我们回顾一下Unix的历史。稍后,我们将研究引发Linux创建的一系列事件。

Unix的历史

Unix可以追溯到20世纪60年代末,在AT&T的贝尔实验室,当时由Dennis Ritchie和Ken Thompson领导的一群雄心勃勃的开发人员正在寻求为称为PDP-7的小型计算机开发多用户多任务系统。当时,Unix是Multics操作系统(Multiplexed Information and Computing Service)的派生产品。这是为大型机提供支持的系统。

然而,到了20世纪70年代,这两位主要开发人员开始对UNIX的发展方向感到不安。由于对Multics的范围和方向感到失望,他们决定制定一个不同的路线,从Multics衍生出一个新的操作系统。在被认为是C语言之父的Dennis Ritchie和Go语言的发明者Ken Thompson的共同努力下,诞生了一个更好的系统,即后来的UNIX。UNIX被证明是可移植的,可以被许多硬件体系结构安装和支持。

Unix在70年代和80年代迅速发展,并在学术界流行起来。在采纳并改变Unix发展轨迹的机构中,加利福尼亚大学伯克利分校(University of California in Berkley)的工程师们对Unix进行了进一步的修改和开发,从而产生了一种名为BSD的新系统,即BSD软件开发(Berkeley Software Development)的缩写。BSD附带了一些增强功能和新的软件应用程序,预示着操作系统的一个新时代。与此同时,AT&T制定了自己的路线,并推出了自己的UNIX版本,即System V。后来BSD出现了,并很快取代了System V,从BSD衍生出了NetBSD、OpenBSD和FreeBSD等变种。

Linux的诞生

1990年,Linux之父Linus Torvalds进一步研究了UNIX,并最终提出了一个可行的Linux内核,他称之为Linux。内核为实现带有实用工具和其他应用程序的操作系统打开了大门,远离了专有的UNIX系统。随着时间的推移,Linux在GNU/GPL许可模型下成为开放源码和免费使用的工具。这就为其他发行版腾出了空间,比如带有Linux内核的Slackware,像GCC编译器这样的GNU工具,X windows系统(图形用户界面),以及其他BSD组件。

现在已经有成百上千的Linux发行版。其中最流行和广泛使用的发行版是Ubuntu、Linux Mint、Fedora、Debian、CentOS、Arch Linux和Manjaro。

到目前为止,我们已经了解了UNIX的简短历史,以及通过许多开发人员的共同努力,它是如何产生了Linux这个免费和开源的系统。问题是,UNIX和Linux之间有什么区别?UNIX中有什么是Linux中没有的?

现在让我们换下角度,把焦点放在这两者的区别上:

Linux vs UNIX

现在让我们看看这两种操作系统之间的区别。

首先,Unix是一种最初由AT&T贝尔实验室开发的操作系统。Linux及其派生产品就是从Unix派生出来的。Linux代码是由Linux Torvalds在1991年从头开始开发的。

Linux是免费下载和使用的。虽然一些企业发行版(如RHEL)需要付费订阅,但大多数发行版在很大程度上仍然是免费和开源的。这是使它如此受欢迎并在开发人员和软件工程师中广泛使用的一个特性。它主要解释了为什么我们有无数的Linux发行版,每个发行版都有自己独特的方式。另一方面,UNIX在很大程度上是专有的,通常预装在大多数硬件中,macOS就是一个很好的例子。

此外,虽然Linux是开源的,但UNIX不是。您需要它的制造商的许可,即使这样,您也不能查看、修改代码,甚至不能重新发布代码。在Linux中,情况就完全不同了。Linux是免费和开放源码的,它允许用户自由地修改代码和重新发布代码而不受任何限制。

由于它的成本效益,Linux在数据中心、云托管平台,甚至在家庭或办公室的桌面使用上比UNIX更受欢迎。UNIX是专有的,一直是专门为应用程序服务器和internet服务器保留的。随着时间的推移,UNIX的使用量逐渐减少,Linux在云托管平台中占据了领先地位。

就可移植性而言,Linux的可移植性非常好,几乎可以安装在任何硬件平台上。你可以把它安装在intel, AMD处理器的硬件上,甚至是ARM的设备上,比如Raspberry Pi。与之形成鲜明对比的是,UNIX只能在少数几个平台上安装。

支持呢?

Linux构成了一个由活跃的开源爱好者组成的广泛社区。此外,还有大量的论坛为Linux用户提供支持和指导。然而,与Linux不同,UNIX中的支持是商业的。

总结

在本文中,我们将阐明UNIX的历史,以及开发人员如何通过各种努力将Linux开发成一种免费和开放源码的系统。最后,我们讨论了UNIX和Linux之间的差异,并详细说明了其中的细微差别。

Linux在开放源码领域占据着主导地位,它拥有大量可以免费下载和使用的发行版。虽然仍然在特殊平台中使用,但UNIX的使用和需求正在下降。这主要是由于供应商锁定和专有许可。

- End -

关注「开源Linux」加星标,提升IT技能

Linux vs Unix - Linux与Unix到底有什么不同?的更多相关文章

  1. UNIX/Linux C 程序员需要掌握的七种武器

    我是一名普通的软件工程师,不是什么技术大牛.这篇文章所提到的"七种武器"只是我这些年工作经验的一点体会和感悟,如果有错误的地方,还请大家指正. (一)C语言 作为一名C程序员,熟练 ...

  2. Unix/Linux系统时间函数API

    首先说明关于几个时间的概念: 世界时:起初,国际上的标准时间是格林尼治标准时间,以太阳横穿本初子午线的时刻为标准时间正午12点.它根据天文环境来定义,就像古代人们根据日晷来计时一样,如下图: 原子时: ...

  3. Unix&Linux技术文章目录(2015-12-22更新)

    Unix & Linux 方面的博客整理.归纳分类,要坚持不懈的学习Unix &Linux,加油!技术需要累积和沉淀.更需要锲而不舍的精神.持之以恒的毅力!借此下面名句勉励自己! 书上 ...

  4. 28个Unix/Linux的命令行神器_转

    28个Unix/Linux的命令行神器 下面是Kristóf Kovács收集的28个Unix/Linux下的28个命令行下的工具,有一些是大家熟悉的,有一些是非常有用的,有一些是不为人知的.这些工具 ...

  5. 《UNIX/Linux网络日志分析与流量监控》新书发布

    本书从UNIX/Linux系统的原始日志(Raw Log)采集与分析讲起,逐步深入到日志审计与计算机取证环节.书中提供了多个案例,每个案例都以一种生动的记事手法讲述了网络遭到入侵之后,管理人员开展系统 ...

  6. 《Unix/Linux网络日志分析与流量监控》获2015年度最受读者喜爱的IT图书奖

    <Unix/Linux网络日志分析与流量监控>获2015年度最受读者喜爱的IT图书奖.刊登在<中华读书报>( 2015年01月28日 19 版) 我的2015年新作刊登在< ...

  7. 【程序员技术练级】熟悉Unix/Linux Shell和常见的命令行(一)文件系统结构和基本操作

    作为程序猿,熟悉一些unix/linux命令行是非常必要的,因为部署服务的服务器现在基本上用的都是unix/linux系统,很少在windows上部署服务的. 今天我们就介绍一些在linux上的文件系 ...

  8. How to locate a path? - Unix & Linux Stack Exchange

    How to locate a path? - Unix & Linux Stack Exchange http://unix.stackexchange.com/questions/2955 ...

  9. linux运维的认知及RHEL7 Unix/Linux 系统 介绍和安装

    如何成为一个优秀的linux运维人员?      如果你有机会和条件:环境能够磨练一个人的能力和意志.      大胆的做你从未做过的项目,每一个项目都是对自身的极大提升.      有好的环境资源不 ...

随机推荐

  1. Contos 安装nodeJs环境

    1.去nodeJs官网选择版本: https://nodejs.org/en/download/ 选择64位,右键复制链接地址 https://nodejs.org/dist/v8.12.0/node ...

  2. 当心,你搞的Scrum可能是小瀑布

    摘要:有的团队刚接触Scrum,一个问题令他们很困扰:迭代初期开发人员的工作较多,测试人员闲着:迭代末期开发人员闲着,测试人员的工作比较多,怎么解决资源等待的问题呢? 本文分享自华为云社区<当心 ...

  3. Rust 中的数据布局--非正常大小的类型

    非正常大小的类型 大多数的时候,我们期望类型在编译时能够有一个静态已知的非零大小,但这并不总是 Rust 的常态. Dynamically Sized Types (DSTs) Rust 支持动态大小 ...

  4. Anaconda 怎么安装cv2

    Anaconda run python程序的时候,如果有import cv2, 但是遇到报错的时候, 可以考虑在anaconda 中安装opencv, 安装过程非常简单. 什么是opencv , op ...

  5. MySQL索引机制(详细+原理+解析)

    MySQL索引机制 永远年轻,永远热泪盈眶 一.索引的类型与常见的操作 前缀索引 MySQL 前缀索引能有效减小索引文件的大小,提高索引的速度.但是前缀索引也有它的坏处:MySQL 不能在 ORDER ...

  6. gulp详细基础教程

    一.gulp简介 1.gulp是什么? gulp是前端开发过程中一种基于流的代码构建工具,是自动化项目的构建利器:它不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成: ...

  7. 前端每日实战:116# 视频演示如何用 CSS 和原生 JS 开发一个监控网络连接状态的页面

    效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/oPjWvw 可交互视频 此视频是可 ...

  8. JavaScript 工作原理之七-Web Workers 分类及 5 个使用场景

    Web Workers 分类及 5 个使用场景 原文请查阅这里,略有删减,本文采用知识共享署名 4.0 国际许可协议共享,BY Troland. 这是 JavaScript 工作原理的第七章. 本系列 ...

  9. 下载jar包方法

    第一种通用下载jar包方法 apache官网下载jar包地址:http://ftp.cuhk.edu.hk/pub/packages/apache.org/   第二种通用下载jar包方法  mave ...

  10. Python使用函数实现杨辉三角

    运行效果: 可在函数中指定阶层数,输出对应的杨辉三角 源代码如下: 1 # -*-coding:utf-8 -*- 2 ''' 3 chapter4_do.py 4 函数yanghui(n)用于输出n ...