Linux vs Unix - Linux与Unix到底有什么不同?
来自: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到底有什么不同?的更多相关文章
- UNIX/Linux C 程序员需要掌握的七种武器
我是一名普通的软件工程师,不是什么技术大牛.这篇文章所提到的"七种武器"只是我这些年工作经验的一点体会和感悟,如果有错误的地方,还请大家指正. (一)C语言 作为一名C程序员,熟练 ...
- Unix/Linux系统时间函数API
首先说明关于几个时间的概念: 世界时:起初,国际上的标准时间是格林尼治标准时间,以太阳横穿本初子午线的时刻为标准时间正午12点.它根据天文环境来定义,就像古代人们根据日晷来计时一样,如下图: 原子时: ...
- Unix&Linux技术文章目录(2015-12-22更新)
Unix & Linux 方面的博客整理.归纳分类,要坚持不懈的学习Unix &Linux,加油!技术需要累积和沉淀.更需要锲而不舍的精神.持之以恒的毅力!借此下面名句勉励自己! 书上 ...
- 28个Unix/Linux的命令行神器_转
28个Unix/Linux的命令行神器 下面是Kristóf Kovács收集的28个Unix/Linux下的28个命令行下的工具,有一些是大家熟悉的,有一些是非常有用的,有一些是不为人知的.这些工具 ...
- 《UNIX/Linux网络日志分析与流量监控》新书发布
本书从UNIX/Linux系统的原始日志(Raw Log)采集与分析讲起,逐步深入到日志审计与计算机取证环节.书中提供了多个案例,每个案例都以一种生动的记事手法讲述了网络遭到入侵之后,管理人员开展系统 ...
- 《Unix/Linux网络日志分析与流量监控》获2015年度最受读者喜爱的IT图书奖
<Unix/Linux网络日志分析与流量监控>获2015年度最受读者喜爱的IT图书奖.刊登在<中华读书报>( 2015年01月28日 19 版) 我的2015年新作刊登在< ...
- 【程序员技术练级】熟悉Unix/Linux Shell和常见的命令行(一)文件系统结构和基本操作
作为程序猿,熟悉一些unix/linux命令行是非常必要的,因为部署服务的服务器现在基本上用的都是unix/linux系统,很少在windows上部署服务的. 今天我们就介绍一些在linux上的文件系 ...
- How to locate a path? - Unix & Linux Stack Exchange
How to locate a path? - Unix & Linux Stack Exchange http://unix.stackexchange.com/questions/2955 ...
- linux运维的认知及RHEL7 Unix/Linux 系统 介绍和安装
如何成为一个优秀的linux运维人员? 如果你有机会和条件:环境能够磨练一个人的能力和意志. 大胆的做你从未做过的项目,每一个项目都是对自身的极大提升. 有好的环境资源不 ...
随机推荐
- Hashmap如何同步?
当我们需要一个同步的HashMap时,有两种选择: ●使用Collections.synchronizedMap(..)来同步HashMap. ●使用ConcurrentHashMap的 这两个选项之 ...
- Redis的持久化方案(三)
Redis的所有数据都是保存到内存中的. Rdb:快照形式,定期把内存中当前时刻的数据保存到磁盘.Redis默认支持的持久化方案. aof形式:append only file.把所有对redis数据 ...
- SpringBoot使用JdbcTemplate批量保存
@Autowired DataSourceProperties dataSourceProperties; @Autowired ApplicationContext applicationConte ...
- springboot-数据访问之jdbc
官网的starthttps://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#using-boot-starter 111 ...
- MOS管工作原理精讲
- Vue-cli的打包初体验
前言:我司是一个教育公司,最近要做一个入学诊断的项目,领导让我开始搭建一套基于vue的H5的开发环境.在网上搜集很多的适配方案,最终还是选定flexible方案.选择它的原因很简单: 它的github ...
- C#枚举-通过值获取名字,通过名称获取值
public enum ProtoType { Move = 1, Enter = 2, Leave = 3, Attack, Die, } print("ProtoType.Move:&q ...
- 【Android开发】View 转 Bitmap
public static Bitmap loadBitmapFromView(View v) { int w = v.getWidth(); int h = v.getHeight(); Bitma ...
- JavaScript实现表单的校验以及匹配正则表达式
运行效果: 未填写信息报错: 匹配正则表达式: 信息校验无误: 源代码如下: 1 <!DOCTYPE html> 2 <html lang="zh"> 3 ...
- flex布局控制最后一个元素右浮动
可以在最后一个元素添加css属性 margin-left: auto; 例如我一排排列的元素 ,子元素并没有完全排列撑开父元素的宽度,这时候要使最后一个元素想最右 可以让最后一个元素的 margin- ...