day02操作系统发展史
第一代计算机(1940~1955):真空管和穿孔卡片
前言:
操作系统最核心的概念就是进程
进程指的就是一个程序的运行过程,具体来说指的是操作系统控制硬件来运行程序的过程
特点:
没有操作系统的概念
所有的程序设计都是直接操控硬件
工作过程:
穿孔卡片,可以将程序写在卡片上,然后读入机
优点:
程序员在申请的时间段内独享整个资源,可以即时地调试自己的程序(有bug可以立刻处理)
缺点:
浪费计算机资源,一个时间段内只有一个人用。
注意:同一时刻只有一个程序在内存中,被cpu调用执行,比方说10个程序的执行,是串行的
第二代计算机
批处理系统
一次只把一个/道程序读入内存,运行完毕后,再执行下一个程序,没有并发,称之为串行
优点:
1、充分利用了计算机资源
缺点:
1、整个过程是需要人参与的
2、让程序员明显地感觉到等待
3、程序的运行是串行
第三代计算机:(******)
串行:多个任务是一个运行完毕再运行下一个
并发:多个任务看起来是同时运行的
多道技术=》并发
1、空间上的复用:多道程序在运行前先必须加载到内存中
2、时间上的复用:多个任务复用cpu的时间片,通俗地讲就是cpu在多个程序之间来回切换
什么时候切换呢?
I:当一个任务遇到IO,肯定要切换-》提升效率
II:一个任务没有遇到IO但是占用CPU时间过长,也要切换=》降低效率
ps:多个进程的内存空间是互相隔离的,而且是物理隔离
分时操作系统CTTS:多用户多任务(多人通过连接设备连接到主机)
应用多道技术来实现多个任务的并发的运行
MULTICS:
MIT,贝尔实验室和通用电气
Ken Thompson
上节课复习:
1、硬盘类型与接口类型
ssd+SAS-----》土豪
ssd+SATA----》对速度要求高,常规做法
机械磁盘+SAS->对速度没有特殊要求,常规
机械磁盘+SATA--》个人PC,公司内部使用的业务
2、磁盘阵列,raid=》对硬盘做集群
ps:集群的好处
1、防止单点故障
2、提升性能
raid0
raid1-》系统盘
raid5-》常规
raid10-》要求速度,也要求安全性,比如数据库服务器
硬raid-》raid卡
软raid-》通过软件制作的raid
3、操作系统
应用程序
操作系统
计算机硬件
批处理操作系统 单用户单任务
分时操作系统:多用户多任务
windows:单用户多任务(同时)
linux:多用户多任务
并发:多个任务看起来是同时运行的
并行:真正意义上的同时运行,只有多个cpu才能实现并行
6个核只能并行6个任务,但是可以并发n个任务
多道技术=》操作系统
1、空间上的复用
2、时间上的复用
multics
1970=》unix元年
github
4、进程与线程
进程-》资源单位
线程->执行单位
5、一个任务运行的三种状态
非阻塞态(就绪态、运行态)
阻塞态
操作系统的分类
个人电脑:
台式机:windows
mac: macos
服务器:
linux(网络服务器)
tcpip协议是基于unix之上开发出来的
发行版(redat系列、debian系列)
redat系列
Fedora----------->RHEL------------>centos
debian系列:ubuntu系列
1、补充知识:什么是驱动程序
驱动程序:是硬件厂商专门为自己的某款硬件设备开发的,用于驱动该硬件运行的专项程序(必须遵循操作系统的标准)
2、操作系统的安装原理介绍(*****)
BIOS: Basic Input Output system
CMOS存储器
安装的操作的核心原理简介:
操作系统本质就是一种程序。从大的层面看安装程序的本质就是把这个程序的文件存入硬盘
操作的iso包(又称之为操作系统镜像):iso的本质就是一个压缩包,里面放着一堆操作的代码文件
详解:
1、用另外一台机器从网上下载一个iso镜像包,将该iso包存入移动硬盘、光盘、U盘中--》得到一个启动盘
2、把启动盘插入你的计算机中(接下来要做的事情,是把启动盘里的操作系统数据拷贝到你自己的电脑的硬盘里)
3、按下电源键,启动计算机,固定先启动bios程序(basic input output system)bios启动之后,会根据配置去某些地方加载真正的操作系统代码,bios的配置信息是存放于CMOS中的找到启动盘后bios会将启动盘里的操作系统读入内存,然后bios会控制cpu去内存中执行代码,然后真正的操作系統就运行起来接下来负责掌管硬件运行的就是真正的操作系统了,bios就可以退出舞台
4、把启动盘里的操作系统拷贝到本地硬盘
3、操作系统的启动流程(****)
1、按电源键,通电
2、先执行bios程序,由bios程序临时接管整个硬件的控制
3、bios会读取自己的配置项(CMOS),找到一个启动盘(存放有操作系统的硬盘、光盘、移动u盘)
4、找到启动盘之后,会先读取启动盘的第一个扇区的数据512Byte拉起bootloader程序(前446引导信息,64是分区信息,后2位是结束的标志位)446字节的引导程序又称之为bootloader(grub程序是我们常用的一种bootloader)
5、bootloader程序启动之后,负责把操作系统后续的代码都加载到内存中,然后运行起来
6、接下来就由真正的操作系统掌握整个计算机的运行,
7、bios操作会去检查各个驱动程序、硬件是否正常,反馈给真正的操作系统,然后就可以退出舞台
终端切换
centos与rocky linux和前面讲的分时操作系统的一个特点结合起来了,也就是所谓的终端个数
按ctrl+alt+f1~f5可以切换不同的终端