Linux介绍,Linux不同发行版本,以及这些发行版本之间的区别

1.Linux的由来

Linux是GNU-Linux的简称。GNU是理查德-史托曼(Richard Stallman)创立的一个开源组织。当年由于Unix收费和比尔盖茨,造成了很多程序员认为软件应当是商品,应该收费卖钱。而且盖茨认为源代码是机密,应当保密,收了买家的钱还不提供源代码。于是,理查德-史托曼(Richard Stallman)很愤怒,他认为这样搞会阻碍IT的发展。于是他创立了GNU,他想另起炉灶搞一个开源(免费提供源代码)的操作系统。但是他苦于内核一直写不好。后来林纳斯·托瓦兹(Linus Benedict Torvalds)按照Unix的机制,新写了一个内核,让Richard Stallman老爷子很兴奋,他找到了林纳斯·托瓦兹(Linus Benedict Torvalds),说出了他的自由软件思想。于是他两一拍即合。因为GNU开发了GCC编译器和EMACS编辑器。可以用EMACS写C,再用GCC编译成各种工具或者APP。所以很快GNU工具包+Linux内核的生态圈就建立了起来。你可以把GNU理解成操作系统的一系列工具集。用GCC和EMACS编写出来的软件和程序都必须遵守GNU的GPL协议。所以GNU-Linux就横空出世了。

2.林纳斯·托瓦兹(Linus Benedict Torvalds)写的是内核,不是 Linux

Linus开发的最早的内核只具有基本的功能(代码不到1万行),简单的说其实是个玩具。经过这么多年的发展,内核代码已经达到近千万行。因此,可以这么理解,内核中最核心的代码是Linus开发,但后续很多功能是社区的开发人员一起完成的。现在 Linus 基本上是做最终审核人。大部分开发工作都是各个贡献人提交上去的。Linus在1991年创建了开源的Linux,之后,Linux系统不断发展,已经成为最大的服务器系统软件了。

3.git的由来

Linus虽然创建了Linux,但Linux的壮大是靠全世界热心的志愿者参与的,这么多人在世界各地为Linux编写代码,那Linux的代码是如何管理的呢?

事实是,在2002年以前,世界各地的志愿者把源代码文件通过diff的方式发给Linus,然后由Linus本人通过手工方式合并代码!

为什么Linus不把Linux代码放到版本控制系统里呢?不是有CVS、SVN这些免费的版本控制系统吗?因为Linus坚定地反对CVS和SVN,这些集中式的版本控制系统不但速度慢,而且必须联网才能使用。有一些商用的版本控制系统,虽然比CVS、SVN好用,但那是付费的,和Linux的开源精神不符。

不过,到了2002年,Linux系统已经发展了十年了,代码库之大让Linus很难继续通过手工方式管理了,社区的弟兄们也对这种方式表达了强烈不满,于是Linus选择了一个商业的版本控制系统BitKeeper,BitKeeper的东家BitMover公司出于人道主义精神,授权Linux社区免费使用这个版本控制系统。

安定团结的大好局面在2005年就被打破了,原因是Linux社区牛人聚集,不免沾染了一些梁山好汉的江湖习气。开发Samba的Andrew试图破解BitKeeper的协议(这么干的其实也不只他一个),被BitMover公司发现了(监控工作做得不错!),于是BitMover公司怒了,要收回Linux社区的免费使用权。

Linus可以向BitMover公司道个歉,保证以后严格管教弟兄们。嗯,这是不可能的。

实际情况是这样的:

Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是Git!一个月之内,Linux系统的源码已经由Git管理了!牛是怎么定义的呢?大家可以体会一下。

Git迅速成为最流行的分布式版本控制系统,尤其是2008年,GitHub网站上线了,它为开源项目免费提供Git存储,无数开源项目开始迁移至GitHub,包括jQuery,PHP,Ruby等等。

历史就是这么偶然,如果不是当年BitMover公司威胁Linux社区,可能现在我们就没有免费而超级好用的Git了。

4.内核是什么

Linux内核本身是有非常多的模块组成的,其核心功能是实现对计算机硬件资源的管理。并且为上层应用程序提供访问的接口。这些硬件资源包括CPU、内存、磁盘和网卡等等。

可以看到,kernel在系统最核心的位置,直接与硬件打交道,是上层应用和硬件之间的中间层。
在这里插入图片描述
Linux内核中包含的模块(忒复杂了)
在这里插入图片描述

5.Linux命令是什么

Linux的各大版本的shell操作命令,比如cd、cp、mv、ls等等,都是C语言写的程序,只不过这些程序的名字叫cd、cp、mv、ls等等等等而已,它们靠shell解释成内核能懂的机器码。

所以,你操作的Linux命令是C的程序名字,这些程序可以加各种参数,实现不同的效果。

6.Linux不同的发行版本

6.1 Red Hat Linux

Red Hat 公司的产品主要包括 RHEL(Red Hat Enterprise Linux,收费版本)和 CentOS(RHEL 的社区克隆版本,免费版本)、Fedora Core(由 Red Hat 桌面版发展而来,免费版本)。

其中以CentOS在国内用的最为普遍,它是基于 Red Hat Enterprise Linux 源代码重新编译、去除 Red Hat 商标的产物,各种操作使用和付费版本没有区别,且完全免费。缺点是不向用户提供技术支持,也不负任何商业责任。

红帽版本的优点是稳定,缺点是软件包组更新比较慢,内核版本,还有上层应用的软件一般都比最新版本低很多。

  • 安装工具:yum
  • 包名称:rpm

6.2 Debain,Ubuntu

Debian,或者称Debian系列,包括Debian和Ubuntu等

Ubuntu 基于知名的 Debian Linux 发展而来,界面友好,容易上手,对硬件的支持非常全面,是目前最适合做桌面系统的 Linux 发行版本,而且 Ubuntu 的所有发行版本都免费提供 。

Ubuntu就是 一个拥有Debian所有的优点,以及自己所加强的优点的近乎完美的 Linux桌面系统。

这两个发行版,研发人员用的多。因为各种软件包组经常能升级,缺点是没有Centos稳定。

  • 安装工具:apt-get
  • 包名称:dpkg
  • debain下的包组管理神器:aptitude(能自动处理依赖关系,还能进行升级降级操作。)

6.3 SUSE

跟IBM关系深厚。只做企业用的Server的Linux。最早是用在IBM大型机的操作系统,直到x86服务器出来了,才有了x86版本。后来才有了opensuse的PC版本。

6.4 Fedora

从属于红帽公司,是RedHat的试验田,一有啥新功能马上会在Fedora版本中发布。追求时尚的桌面用户首选。

7.发行版本关系图

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值