跟老刘学python

新猿教育老刘带你学习python,学完即可就业。

新猿0基础python教程 Linux入门介绍

# 一 什么是操作系统

```python

Operating System(操作系统) 简称OS

Windows,MacOS,Linux都是操作系统

```

# 二 什么是BootLoader

```python

# 在嵌入式操作系统中,BootLoader是在操作系统内核运行之前运行。可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境

# 一般在计算机启动的时候,选择启动Linux还是Windows的BootLoader是GRUB

# 如果没有选择,GRUB会在几秒后启动默认的操作系统

# 双操作系统启动流程如下图

```

# 三 Linux和Windows的软件

```python

# windows系统下的软件,不能在Linux上运行,Linux上的软件不能在windows上运行

# Linux上的软件,基本上都是免费的

# Linux上软件,更新更频繁,且免费

# Linux上软件,效率更高

```

# 四 操作系统发展

```python

# 1984年,微软发布了第一个操作系统-->MS-DOS

    -1980年,西雅图电脑产品公司(Seattle Computer Products)的一名24岁的程序员蒂姆·帕特森(Tim Paterson)花费了四个月时间编写出了86-DOS操作系统

    -在1981年7月27日,比尔盖茨完全获得了一个叫做Seattle Computer Systems(西雅图计算机系统公司)的“Quick and Dirty Operating System”,简称QDOS的授权,花费5w美元。后来该操作系统被称作MS-DOS



# 同时代,1969年(1970年,计算机元年)起,也有一款比较出名的操作系统交Unix

    -1968年 Multics项目

    -MIT、Bell实验室、美国通用电气有限公司走到了一起,致力于开发Multics项目。到后期由于开发进度不是很好,MIT和Bell实验室相继离开这个项目的开发,最终导致项目搁浅。

    -1970年(Unix元年,时间戳) Unix诞生

    -当时在开发Multics项目的时候,实验室中有一个开发成员开发了一款游戏(travel space:遨游太空),因为两个实验室相继离开项目开发,导致这名开发人员没法玩游戏,后来他提议组织人员重新在Multics项目之上重新的开发,也就出现了1970年的Unix。当时Unix操作系统是使用的汇编语言(机器语言)开发的。

    -1973年 用C语言重写Unix

    -因为汇编语言有一个最大的局限性:对于计算机硬件过于依赖。导致移植性不好,所以后期在1973年使用了C语言对其进行重新开发。

    -1975年 Bell实验室允许大学使用Unix。

    -1975年,bell实验室允许大学使用Unix操作系统用于教学作用,而不允许用于商业用途。

# 在1984年,微软发布DOS的同时,理查德·马修·斯托曼(Richard Matthew Stallman, RMS)创立了GUN项目 

     -GNU项目 (牛羚),GNU is not Unix的缩写,目的是创建一个类Unix的操作系统,因为unix不是免费的,商业收费,刚开始学校教学免费使用,后来不免费了,价格比较贵(MacOS是类Unix操作系统)

   -理查德·马修·斯托曼:1953年出生,自由软件运动的精神领袖、GNU计划以及自由软件基金会(Free Software Foundation)的创立者、著名黑客,代表作:Emacs编辑器,GCC编译器,GDB调试器


 # 自由的和免费的

        -自由的意味着源代码必须公开(windows和macos是私有的),

      -自由软件大部分是免费的,但是可以复制,修改,出售


# 1991年 Linux的开发作者,Linux之父,李纳斯·托瓦兹。Linux诞生时是荷兰在校大学生。

    -1991年 0.0.1版本

    -李纳斯当时学校使用的就是Unix操作系统,然后其对系统的底层代码进行了修改,放到了学校为学生开放的网站上,原先他把文件命名写成了Linus’s Unix,后期网络管理发现之后觉得这个名字不好,自己手动的将名字改成Linux。随后其他同学下载之后发现这个版本还是挺好用的,随后都把自己代码贡献给李纳斯。

    -1992年 0.0.2版本

    -1994年 1.0版本

    -2003年 2.6版本

# Linux吉祥物企鹅

    -李纳斯以前在澳大利亚被一只企鹅咬过


```

# 五 Linux和GNU的联系

```python

# 这两个项目是互补的,Linus其实就写了一个类Unix内核

# 1991年GNU项目已经创建了不少操作系统外网软件,比如cp命令,rm命令,GCC,GDB等--》好比Linux就是人的骨骼,GUN就是血肉

# 后来完善Linux的工作就由Linus和广大开源社区的黑客们

# GNU项目+Linux内核=完整的操作系统,我们现在叫的Linux一般都是指GUN项目+Linux内核

```

![img](https://tva1.sinaimg.cn/large/008i3skNgy1gw3bww0842j30460460sm.jpg)

# 六 Linux内核

```python

上述所提及的版本号并不是分支版本,而是指Linux的内核版本。

Linux内核网站(现在最新5.x版本,3.x多一些,原来2.x多,现在docker要跑在3上)

https://www.kernel.org/

```

# 七 各个操作系统的关系

```python

# MacOS和Linux是基于Unix的意思是复刻了Unix的运行模式,源代码是不通的

# 目前Windows的版本是基于革命性的Windows NT内核

```

# 八 Linux发行版和区别

```python

# 因为Linux是开源自由软件,所以基于开源的代码可以定制属于自己的Linux系统,所以Linux的版本特别多

# Linux不同发行版的区别

    -安装方式不一样,有的简单,有的复杂

  -安装应用程序的方式也不一样 

  -预装的应用程序不一样


# 不同发行版使用的Linux内核一样

    -我们现在说的Linux其实都是指的是发行版(Distribution version),就是使用Linux内核加上各种GNU的库文件、应用程序,构造而成的操作系统

    -可以想象成同一个人(Linux内核),穿不通的衣服裙子羽绒服(软件)


# 不同发行版有的免费,有的收费

# 不同发行版

    -Red Hat:性能稳定,老牌的Linux发行版,RHEL收费,是red hat的企业版,源代码是开放的,收费是因为长期升级更新服务

  -现在Red Hat分两个系列:一个是red hat公司提供收费技术支持的RHEL,另一个是社区开放的免费版Fedora,每半年发行一次,由于发行频繁导致性能不太稳定,企业一般不选用Fedora

  -Centos:算是RHEL的克隆版,社区企业级操作系统, 改与Redhat, 完全开源,兼具社区和企业特性,融合了Fedora和redhat优点,长期支持,大规模使用稳定,企业普遍使用,特别适合做服务器

  -Deepin:深度,中国发行

  -Debian:迄今为止,最遵循GUN规范的Linux系统

  -Ubuntu :Debian一个后继或分支,社区维护, 现在主要做手机系统和电脑桌面系统。

```

```mermaid

graph TD;

    Linux--> Debian

    Linux--> RedHat

    Linux--> Deepin深度

    RedHat--> RHEL

    RedHat--> CentOS

    RedHat--> Fedora

```


评论