python之Linux基础

操作系统(科普章节)
⽬标
了解操作系统及作⽤

  1. 操作系统(Operation System,OS)

python之Linux基础
python之Linux基础
1.1 操作系统的作⽤
是现代计算机系统中 最基本和最重要 的系统软件 是 配置在计算机硬件上的第⼀层软件,是对硬件系统的⾸次扩展 主要作⽤是管理好硬件设备,并为⽤户和应⽤程序提供⼀个简单的接⼝,以便于使⽤ ⽽其他的诸如编译程序、数据库管理系统,以及⼤量的应⽤软件,都直接依赖于操作 系统的⽀持
1.2 不同应⽤领域的主流操作系统
桌⾯操作系统 服务器操作系统 嵌⼊式操作系统 移动设备操作系统
python之Linux基础
桌⾯操作系统
Windows 系列 ⽤户群体⼤ macOS 适合于开发⼈员 Linux 应⽤软件少
2> 服务器操作系统
Linux 安全、稳定、免费 占有率⾼ Windows Server 付费 占有率低

嵌⼊式操作系统
Linux

移动设备操作系统
iOS Android(基于 Linux )
1.3 虚拟机
虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运⾏在⼀个完全 隔离环境中的完整计算机系统
虚拟系统通过⽣成现有操作系统的全新虚拟镜像,具有真实操作系统完全⼀样的功能 进⼊虚拟系统后,所有操作都是在这个全新的独⽴的虚拟系统⾥⾯进⾏,可以独⽴安 装运⾏软件,保存数据,拥有⾃⼰的独⽴桌⾯,不会对真正的系统产⽣任何影响 ⽽且能够在现有系统与虚拟镜像之间灵活切换的⼀类操作系统

操作系统的发展史(科普章节)
⽬标
了解操作系统的发展历史 知道 Linux 内核及发⾏版的区别 知道 Linux 的应⽤领域

  1. 操作系统的发展历史
    1.1 Unix
    1965 年之前的时候,电脑并不像现在⼀样普遍,它可不是⼀般⼈能碰的起的,除⾮是军 事或者学院的研究机构,⽽且当时⼤型主机⾄多能提供30台终端(30个键盘、显示器), 连接⼀台电脑
    python之Linux基础
    为了解决数量不够⽤的问题
    1965 年左后由⻉尔实验室加⼊了麻省理⼯学院以及通⽤电⽓合作的计划——该 计划要建⽴⼀套 多使⽤者(multi-user)、多任务(multi-processor)、多层次(multi -level) 的MULTICS操作系统,想让⼤型主机⽀持300台终端 
    1969 年前后这个项⽬进度缓慢,资⾦短缺,⻉尔实验室退出了研究
    1969年从这个项⽬中退出的Ken Thompson当时在实验室⽆聊时,为了让⼀台空 闲的电脑上能够运⾏"星际旅⾏(Space Travel)" 游⾏,在8⽉份左右趁着其妻⼦ 探亲的时间,⽤了1个⽉的时间,使⽤汇编写出了Unix操作系统的原型 
    1970年,美国⻉尔实验室的KenThompson,以 BCPL语⾔为基础,设计出很简 单且很接近硬件的B语⾔(取BCPL的⾸字⺟),并且他⽤B语⾔写了第⼀个UNIX 操作系统 
    1971 年,同样酷爱"星际旅⾏(Space Travel)" 的DennisM.Ritchie为了能早点 ⼉玩上游戏,加⼊了Thompson的开发项⽬,合作开发UNIX,他的主要⼯作是改 造B语⾔,因为B语⾔ 的跨平台性较差
    1972年,DennisM.Ritchie 在B语⾔的基础上最终设计出了⼀种新的语⾔,他取 了BCPL的第⼆个字⺟作为这种语⾔的名字,这就是C语⾔ 
    1973 年初,C语⾔的主体完成,Thompson和Ritchie迫不及待地开始⽤它完全重 写了现在⼤名鼎鼎的 Unix 操作系统
    Minix
    因为 AT&T(通⽤电⽓)的政策改变,在Version7 Unix 推出之后,发布新的使⽤ 条款,将UNIX源代码私有化,在⼤学中不能再使⽤UNIX源代码 AndrewS.Tanenbaum(塔能鲍姆)教授为了能在课堂上教授学⽣操作系统运作 的细节,决定在不使⽤任何AT&T的源代码前提下,⾃⾏开发与UNIX兼容的操作系

统,以避免版权上的争议 以 ⼩型 UNIX(mini-UNIX)之意,将它称为 MINIX
1.3 Linux
1991 年林纳斯(Linus)就读于赫尔⾟基⼤学期间,对Unix 产⽣浓厚兴趣,尝试 着在Minix 上做⼀些开发⼯作 因为Minix只是教学使⽤,因此功能并不强,林纳斯经常要⽤他的终端仿真器 (Terminal Emulator)去访问⼤学主机上的新闻组和邮件,为了⽅便读写和下载⽂ 件,他⾃⼰编写了磁盘驱动程序和⽂件系统,这些在后来成为了Linux第⼀个内核的 雏形,当时,他年仅21 岁! 林纳斯利⽤ GNU 的 bash 当做开发环境,gcc当做编译⼯具,编写了Linux内核, ⼀开始 Linux并不能兼容Unix 即Unix上跑的应⽤程序不能在Linux上跑,即应⽤程序与内核之间的接⼝不⼀ 致 ⼀开始Linux只适⽤于386,后来经过全世界的⽹友的帮助,最终能够兼容多种 硬件
C语⾔
在把 UNIX移植到其他类型的计算机上使⽤时,C 语⾔强⼤的移植性(Portability) 在此显现 机器语⾔和汇编语⾔都不具有移植性,为x86 开发的程序,不可能在Alpha, SPARC和ARM 等机器上运⾏ ⽽ C语⾔程序则可以使⽤在任意架构的处理器上,只要那种架构的处理器具有对应 的C语⾔编译器和库,然后将 C 源代码编译、连接成⽬标⼆进制⽂件之后即可运⾏
Unix 家谱

python之Linux基础

猜你喜欢

转载自blog.csdn.net/czbkzmj/article/details/84942436