操作系统第一部分概述

一、概述

1.1 OS概念、特征

计算机系统的层次结构:
在这里插入图片描述

操作系统:控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机地工作和资源分配;提供给用户和其他软件方便的接口和环境;是计算机系统中最基本的系统软件。
OS既是用户和计算机的接口,也是计算机硬件和其他软件的接口。(对上服务,对下管理)
===> 1、OS是系统资源的管理者;
2、向上层提供方便易用的服务

  • 直接给用户使用的:GUI、命令接口(联机、脱机)
  • 给程序员使用的:程序接口
    3、是最接近硬件的一层软件

两个视角来看:
①用户视角—OS 设计目的是为了用户使用方便,性能是相对次要的
②系统视角—OS 是资源分配器;OS 是控制程序
在这里插入图片描述
命令接口 & 程序接口 ==>用户接口

1.2 OS特征

一、并发
并发是指多个事件在同一时间间隔内发生、宏观上是同时发生的,但微观上是交替发生的。
与并行区别:多个事件同一时刻同时发生。

OS的并发性指计算机系统中同时运行着多个程序,,宏观上是同时运行的,微观上是交替进行的。

单核CPU同一时刻只能执行一个程序,各个程序只能并发地执行。
多核CPU同一时刻可以执行多个程序,多个程序能够并行地执行。

二、共享
共享指资源共享,系统中的资源可供内存中多个并发执行的进程共同使用。

两种资源共享方式:

  1. 互斥共享
    某些资源一个时间段内只允许一个进程访问,比如摄像头
  2. 同时共享
    某些资源允许一个时间段内多个进程“同时”对它们进行访问

并发与共享互为存在条件,是OS最基本的特征

三、虚拟
虚拟是指把一个物理上的实体变为若干个逻辑上的对应物。

虚拟技术:

  1. 空分复用技术(如虚拟存储器技术)
  2. 时分复用技术(如虚拟存储器)

四、异步
异步是指,在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进。

在这里插入图片描述

1.3 OS的发展和分类

一、手工操作阶段
纸带机,速度慢;计算机,速度快
在这里插入图片描述

缺点:用户独占全机、人机速度矛盾导致资源利用率极低

二、批处理阶段

批处理系统:用户将作业交给系统操作员,系统操作员将许多用户的作业组成一批作业(jobs)之后输入到计算机中,在系统中形成一个自动转接的连续的作业流,系统自动、依次执行每个作业。最后由操作员将作业结果交给用户。
优点:作业流程自动化;效率高;吞吐量高
缺点:无交互手段;调试程序困难

单道批处理系统:
引入脱机输入/输出技术(利用外围机+磁带完成),并由监督程序负责控制作业的输入、输出
在这里插入图片描述在这里插入图片描述
监督程序–>OS雏形

主要优点:缓解了一定程度的人机速度矛盾,资源利用率有所提升
主要缺点:内存中仅能有一道程序运行,只有该程序运行结束后才能调入下一道程序。CPU有大量的事件是在空闲等待I/O完成,资源利用率依然很低。

多道批处理系统:
OS正式诞生!支持多道程序并发运行!
在这里插入图片描述
优点:多道程序并发执行,共享资源,资源利用率大幅提升,CPU和其他资源更能保持忙碌状态,系统吞吐量增大
缺点:用户响应时间长,没有人机交互功能

三、分时操作系统
计算机以时间片为单位轮流为各个用户/作业服务,各个用户可通过终端(如键盘、鼠标等)与计算机进行交互。

优点:用户请求可被即时响应,解决了人机交互问题。允许多个用户同时使用一台计算机,并且用户对计算机的操作独立。
缺点:不能优先处理一些紧急任务。OS对每个作业都是公平的,循环的为每个作业服务一个时间片,不区分任务的紧急性

四、实时操作系统
优点:能够优先响应一些紧急任务,某些紧急任务不需时间片排队。

在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,并且要在严格的时限内处理完事件。

  • 硬实时OS——必须在绝对严格的规定时间内完成处理
  • 软实时OS——接受偶尔违反时间规定

在这里插入图片描述

1.4 OS运行机制

内核
内核程序组成了OS内核kernel
内核是OS最重要最核心的部分,也是最接近硬件的部分

两种指令

  • 特权指令
    如内存清零指令,这些指令影响重大,只允许管理者使用——内核
  • 非特权指令
    如加减运算等

在CPU设计和生存时就划分了特权指令和非特权指令,所以CPU执行指令前就能判断出其类型。

两种状态

  • 内核态/核心态/管态
    说明此时运行的是内核程序,此时可以执行特权指令
  • 用户态/目态
    说明此时运行的是应用程序,此时只能执行非特权指令

程序状态字寄存器(PSW),1表示内核态,0表示用户态

两种状态的切换

  • 内核态到用户态:执行一条特权指令——修改PSW的标志位为用户态,OS内核主动让出CPU使用权
  • 用户态到内核态:由中断引发,硬件自动完成状态转换,OS内核强行夺回CPU使用权

在这里插入图片描述

1.5 中断和异常

中断的作用
中断是让OS内核夺回CPU使用权的唯一途径,使CPU由用户态转变为内核态。
中断的类型

  • 内中断
    与当前执行的指令有关,中断信号来源于CPU内部
    陷入指令:应用程序想要请求OS内核服务,指令引发一个内部中断信号,将CPU控制权主动还给OS内核
  • 外中断
    与当前执行的指令无关,中断信号来源于CPU外部
    在这里插入图片描述
    在这里插入图片描述

中断机制的基本原理
不同的中断信号,需要用不同的中断处理程序来处理。
当CPU检测到中断信号后,会根据它的类型去查询“中断向量表”,找到相应的中断程序在内存中的存放位置。

显然,中断处理程序是内核程序,需要运行在内核态

CPU处理中断:

  1. 保护断点:即保存下一将要执行的指令的地址,就是把这个地址送入堆栈。
  2. 寻找中断入口:根据不同的中断源所产生的中断向量,查找不同的入口地址,入口地址处存放着中断处理程序。
  3. 执行中断处理程序。
  4. 中断返回:执行完中断指令后,就从中断处返回到主程序,继续执行。
    在这里插入图片描述
    陷阱trap:陷阱是一种软件产生的中断,源于程序出错(如除 0 或访问内存无效)或者源于用户程序的特别请求(系统调用 system call),完成中断处理后将 CPU 控制权再交给提出陷阱请求的程序。

中断(狭义上的外中断)与陷阱的区别:

  • 陷阱又被称作软中断,与(硬)中断相比,软中断是软件实现的中断,也就是程序运行时其它程序对它的中断;而硬中断是硬件实现的中断,是程序运行时设备对它的中断。
  • 硬中断是由外部事件引起的,因此具有随机性和突发性;而软中断的发生不是随机的,而是由程序安排好的

1.6 系统调用

系统调用是OS提供给应用程序使用的接口,可以理解为一种可供应用程序调用的特殊函数,应用程序可以通过系统调用来请求获得OS内核的服务
系统调用是内核的一部分。
在这里插入图片描述
凡是与共享资源有关的操作,都必须通过系统调用的方式向OS内核提出服务请求,由OS内核代为完成。保证系统的稳定性和安全性,防止用户非法操作
在这里插入图片描述
在这里插入图片描述

向OS传递参数的三种方法

  1. 通过寄存器来传递参数
  2. 将参数存在内存的块和表中,将块的地址通过寄存器来传递
  3. 参数通过程序压入堆栈,通过操作系统弹出

1.7 OS体系结构

对称多处理和非对称多处理:

  • 非对称多处理(AMP)处理器间是主从关系,一个主处理器控制系统并向其他从处理器分配任务,主处理器单独做 IO 任务
  • 对称多处理(SMP)处理器间是平等的关系,IO 可以被任一处理器处理

多处理器系统的优点:增加吞吐量、规模经济、增加可靠性

多道程序multiprogramming:
操作系统同时把多个任务保存在内存中,如果一个执行中的任务需要等待一个事件的完成则 CPU 切换到另一个任务并执行而不是空等待原任务完成。

大内核与微内核:
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
频繁切换CPU状态会降低性能。
在这里插入图片描述

在这里插入图片描述
许多OS采用混合结构。

1.8 OS引导

操作系统引导boot——开机的时候,如何让OS运行?
绝大多数计算机系统都有一小块代码,称为引导程序或引导装载程序,这段代码能定位操作系统内核,将它装入内存,开始执行。
在这里插入图片描述

1.9 虚拟机

虚拟机:使用虚拟化技术,把一台物理机器虚拟化为多台虚拟机,每个虚拟机器都可以独立运行一个OS
在这里插入图片描述
在这里插入图片描述

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

边懵懵'.ㅅ'

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值