Linux的前世今生

0X0 Linux是什么?

Linux是一套免费使用和自由传播的类Unix操作系统,是一个多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

说的简单点,它就是一个操作系统

0X1 Linux的特点?

1、完全免费

Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了Linux的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变,这让Linux吸收了无数程序员的精华,不断壮大。

2、完全兼容POSIX 1.0标准

这使得可以在Linux下通过相应的模拟器运行常见的DOS、Windows的程序。这为用户从Windows转到Linux奠定了基础。许多用户在考虑使用Linux时,就想到以前在Windows下常见的程序是否能正常运行,这一点就消除了他们的疑虑。

3、多用户、多任务

Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。

4、良好的界面

Linux同时具有字符界面和图形界面。在字符界面用户可以通过键盘输入相应的指令来进行操作。它同时也提供了类似Windows图形界面的X-Window系统,用户可以使用鼠标对其进行操作。在X-Window环境中就和在Windows中相似,可以说是一个Linux版的Windows。

5、丰富的网络功能

Unix是在互联网的基础上繁荣起来的,Linux的网络功能当然不会逊色。它的网络功能和其内核紧密相连,在这方面Linux要优于其他操作系统。在Linux中,用户可以轻松实现网页浏览、文件传输、远程登陆等网络工作。并且可以作为服务器提供WWW、FTP、E-Mail等服务。

6、可靠的安全、稳定性能

Linux采取了许多安全技术措施,其中有对读、写进行权限控制、审计跟踪、核心授权等技术,这些都为安全提供了保障。Linux由于需要应用到网络服务器,这对稳定性也有比较高的要求,实际上Linux在这方面也十分出色。

7、支持多种平台

Linux可以运行在多种硬件平台上,如具有x86、680×0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游戏机上。2001年1月份发布的Linux 2.4版内核已经能够完全支持Intel 64位芯片架构。同时Linux也支持多处理器技术。多个处理器同时工作,使系统性能大大提高。

0X2 Linux和Windows的区别?

1. 软件与支持

Windows 平台:数量和质量的优势,不过大部分为收费软件;由微软官方提供重要支持和服务;

Linux 平台:大都为开源自由软件,用户可以修改定制和再发布,由于基本免费没有资金支持,部分软件质量和体验欠缺;有全球所有的 Linux 开发者和自由软件社区提供支持。

2. 安全性

Windows 平台:三天两头打补丁安装系统安全更新,还是会中病毒木马;

Linux 平台:要说 Linux 没有安全问题,那当然是不可能的,这一点仁者见仁智者见智,相对来说肯定比 Windows 平台要更加安全,使用 Linux 你也不用装某杀毒,某毒霸。

3. 使用习惯

Windows:普通用户基本都是纯图形界面下操作使用,依靠鼠标和键盘完成一切操作,用户上手容易入门简单;

Linux:兼具图形界面操作(需要使用带有桌面环境的发行版)和完全的命令行操作,可以只用键盘完成一切操作,新手入门较困难,需要一些学习和指导(这正是我们要做的事情),一旦熟练之后效率极高。

4. 可定制性

Windows:操作范围大多已经受到微软的限制,所以基本上是系统怎样设置,用户就只能规矩操作。

Linux:提供了更高的定制性,它支持开发者通过编码来定义适合自己的操作系统。

5. 应用范畴

Windows:无特定的应用范畴,一般就是常规的电脑使用场景。

Linux: 主要作为服务器主机,进行忙碌的数据处理和运算

6. 是否开源

Linux:免费开源

Windows:收费闭源

0X3 Linux和UNIX的区别?

UNIX 的坎坷历史

UNIX 操作系统由肯•汤普森(Ken Thompson)和丹尼斯•里奇(Dennis Ritchie)发明。它的部分技术来源可追溯到从 1965 年开始的 Multics 工程计划,该计划由贝尔实验室、美国麻省理工学院和通用电气公司联合发起,目标是开发一种交互式的、具有多道程序处理能力的分时操作系统,以取代当时广泛使用的批处理操作系统。

说明:分时操作系统使一台计算机可以同时为多个用户服务,连接计算机的终端用户交互式发出命令,操作系统采用时间片轮转的方式处理用户的服务请求并在终端上显示结果(操作系统将CPU的时间划分成若干个片段,称为时间片)。操作系统以时间片为单位,轮流为每个终端用户服务,每次服务一个时间片。

可惜,由于 Multics 工程计划所追求的目标太庞大、太复杂,以至于它的开发人员都不知道要做成什么样子,最终以失败收场。以肯•汤普森为首的贝尔实验室研究人员吸取了 Multics 工程计划失败的经验教训,于 1969 年实现了一种分时操作系统的雏形,1970 年该系统正式取名为 UNIX。自 1970 年后,UNIX 系统在贝尔实验室内部的程序员之间逐渐流行起来。

1971-1972 年,肯•汤普森的同事丹尼斯•里奇发明了传说中的C语言,这是一种适合编写系统软件的高级语言,它的诞生是 UNIX 系统发展过程中的一个重要里程碑,它宣告了在操作系统的开发中,汇编语言不再是主宰。到了 1973 年,UNIX 系统的绝大部分源代码都用C语言进行了重写,这为提高 UNIX 系统的可移植性打下了基础(之前操作系统多采用汇编语言,对硬件依赖性强),也为提高系统软件的开发效率创造了条件。可以说,UNIX 系统与C语言是一对孪生兄弟,具有密不可分的关系。

https://pic3.zhimg.com/80/v2-91bfc7f1b1b8e8608219bc7fe7cfaea2_1440w.jpg

Linux 的那些往事

Linux 内核最初是由李纳斯•托瓦兹(Linus Torvalds)在赫尔辛基大学读书时出于个人爱好而编写的,当时他觉得教学用的迷你版 UNIX 操作系统 Minix 太难用了,于是决定自己开发一个操作系统。第 1 版本于 1991 年 9 月发布,当时仅有 10 000 行代码。

https://pic4.zhimg.com/80/v2-51f5e51cf207b1bda0de499c4bf346a3_1440w.jpg

李纳斯•托瓦兹没有保留 Linux 源代码的版权,公开了代码,并邀请他人一起完善 Linux。与 Windows 及其他有专利权的操作系统不同,Linux 开放源代码,任何人都可以免费使用它。据估计,现在只有 2% 的 Linux 核心代码是由李纳斯•托瓦兹自己编写的,虽然他仍然拥有 Linux 内核(操作系统的核心部分),并且保留了选择新代码和需要合并的新方法的最终裁定权。现在大家所使用的 Linux,我更倾向于说是由李纳斯•托瓦兹和后来陆续加入的众多 Linux 好者共同开发完成的。

关于 Linux Logo 的由来是一个很有意思的话题,它是一只企鹅。为什么选择企鹅,而不是选择狮子、老虎或者小白兔?我更愿意相信以下说法,企鹅是南极洲的标志性动物,根据国际公约,南极洲为全人类共同所有,不属于世界上的任何国家,可国家都无权将南极洲纳入其版图。Linux 选择企鹅图案作为 Logo,其含义是:开放源代码的 Linux 为全人类共同所有,任何公司无权将其私有。

UNIX与Linux的亲密关系

二者的关系,不是大哥和小弟,"UNIX 是 Linux 的父亲"这个说法更恰当。之所以要介绍它们的关系,是因为要告诉读者,在学习的时候,其实 Linux 与 UNIX 有很多的共通之处,简单地说,如果你已经熟练掌握了 Linux,那么再上手使用 UNIX 会非常容易。二者也有两个大的区别:

  • UNIX 系统大多是与硬件配套的,也就是说,大多数 UNIX 系统如 AIX、HP-UX 等是无法安装在 x86 服务器和个人计算机上的,而 Linux 则可以运行在多种硬件平台上;
  • UNIX 是商业软件,而 Linux 是开源软件,是免费、公开源代码的。

小结Linux 和 UNIX 的关系/区别

Linux 是一个类似 Unix 的操作系统,Unix 要早于 Linux,Linux 的初衷就是要替代 UNIX,并在功能和用户体验上进行优化,所以 Linux 模仿了 UNIX(但并没有抄袭 UNIX 的源码),使得 Linux 在外观和交互上与 UNIX 非常类似。

UNIX/Linux系统结构

UNIX/Linux 系统可以粗糙地抽象为 3 个层次,如图所示。底层是 UNIX/Linux 操作系统,即系统内核(Kernel);中间层是 Shell 层,即命令解释层;高层则是应用层。

https://pic2.zhimg.com/80/v2-c166ed20f0ddcd3da474115781e16535_1440w.jpg

  • 内核层

内核层是 UNIX/Linux 系统的核心和基础,它直接附着在硬件平台之上,控制和管理系统内各种资源(硬件资源和软件资源),有效地组织进程的运行,从而扩展硬件的功能,提高资源的利用效率,为用户提供方便、高效、安全、可靠的应用环境。

  • Shell层

Shell 层是与用户直接交互的界面。用户可以在提示符下输入命令行,由 Shell 解释执行并输出相应结果或者有关信息,所以我们也把 Shell 称作命令解释器,利用系统提供的丰富命令可以快捷而简便地完成许多工作。

  • 应用层

应用层提供基于 X Window 协议的图形环境。X Window 协议定义了一个系统所必须具备的功能(就如同 TCP/IP 是一个协议,定义软件所应具备的功能),系统满足此协议及符合 X 协会其他的规范,便可称为 X Window。说明:X Window 与微软的 Windows 图形环境有很大的区别:UNIX/Linux 系统与 X Window 没有必然捆绑的关系,也就是说,UNIX/Linux 可以安装 X Window,也可以不安装;而微软的 Windows 图形环境与内核捆绑密切。UNIX/Linux 系统不依赖图形环境,依然可以通过命令行完成 100% 的功能,而且因为不使用图形环境还会节省大量的系统资源。

linux和unix有啥不一样?

源代码
unix大多数都是商用(收费),只有少数公开源代码。
linux是自由软件,免费,公开源代码。

硬件兼容性
unix系统大多数都是和硬件配套的,很多unix版本都无法安装在x86服务器和个人计算机上。
linux对硬件要求很低,而且兼容性非常强,可以运行在多种硬件平台上,非常简单就能安装在服务器,个人计算机上。

为什么linux受欢迎?

linux属于开源软件,用户不用支付可费用就可以获得它和它的源代码,并且可以根据自己的需要对它进行必要的修改,无偿使用,无约束地继续传播;

linux具有 UNIX 的功能,操作起来也大同小异,任何使用 UNIX 操作系统或想要学习 UNIX 操作系统的人都可以从 Linux 中获益。

linux因为公开源代码的原因,不会像windows那样存在安全隐患,具有很高的系统安全性。

linux由社区人员共同维护,发现系统的bug,漏洞等,能够及时对其进行修复,而大多数闭源项目,对漏洞的修复较慢。

0x04为什么企业大多都使用的是linux?

说大多好像有点不恰当,全球500强企业,百分之九十五的服务器使用的都是linux系统,就连微软公司,其服务器也是使用的linux操作系统,可见一般。

稳定

linux一直以稳定著称,稳定到什么程度,其可以连续运行多年而不会发生重大情况,我们在使用的时候,极少会出现系统崩溃的情况,而像是windows server,即使是稳定版本,也会不定时出现停止服务的问题。

硬件

在硬件方面进行比较时,windows需要经常对硬件进行升级,以满足性能要求。而linux对硬件要求很低,不需要经常对硬件进行升级,升级后,你就可以直接感受到性能提升等变化,对于windows的硬件升级,使用起来性能提升的感觉不是那么明显。

资源占用

系统的运行也是需要一定的硬件资源的,过多的占用硬件资源,对于服务器来说也是一种资源浪费,实现同一服务,购买硬件配置越低的服务器越便宜,相对来说,还减少了成本。linux对硬件要求很低,像1G1内存50硬盘的云主机,搭建个网址都飕飕的,而换成windows,可能连系统都安装不上。

安全性

作为病毒和恶意软件攻击的对象windows,在安全方面不一定会有很好的保障,因其闭源的原因,很多漏洞都不能第一时间修复,对于系统本身来说,在安全方面并没有那么的强。而linux就不一样了,作为多用户多任务操作系统,任何用户的访问都有严格的权限控制,只有特定的用户才能登陆系统中,而且linux中的防火墙及其强大,可以有效地抵挡大部分恶意流量。

成本

这是一个不可避免的话题,再有钱的公司也会对成本进行考虑,能省为什么不省不是?抛去硬件不说,企业是不可能使用盗版软件的,所有软件,只要是商用的,肯定都是正版。一些大型公司,服务器成百上千比比皆是,你能想象每个服务器都购买正版的windows系统吗,显然这是不可取的,有免费的linux干嘛不用,而且稳定又安全。

操作

对于windows来说,图形化界面的操作大多都是点点点,偶尔输入一些内容,很是简单,但操作起来效率还是比较低,在linux中,所有的操作都是通过命令进行的,可以简单而高效的对系统进行各种各样的操作。在windows和linux中重命名一个文件,就可以很容易的知道到底哪个效率更高。

0X05后续待补充

….

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论