Linux vs Unix

Stella981
• 阅读 684

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

以上就是良许教程网为各位朋友分享的Linux vs Unix - Linux与Unix到底的不同。 以上就是良许教程网为各位朋友分享的Linux相关知识。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
HIVE 时间操作函数
日期函数UNIX时间戳转日期函数: from\_unixtime语法:   from\_unixtime(bigint unixtime\, string format\)返回值: string说明: 转化UNIX时间戳(从19700101 00:00:00 UTC到指定时间的秒数)到当前时区的时间格式举例:hive   selec
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这