文章目录
1、操作系统概念
1:操作系统的概念
1.1操作系统的概念
概念:由于在计算机系统中,操作系统位于裸机(计算机硬件)和应用软件之间的层次,所以1.负责管理协调硬件,软件等计算机资源的工作 2.为上层用户和应用程序提供简单易用的服务 3.是一种系统软件
1.2操作系统的功能和目标
1.资源的管理者
目标:安全,高效
提供的功能:
1)文件管理:逐层打开文件夹,找到qq.exe这个程序
2)存储器管理:程序相关的数据放入内存
3)处理机管理:对应的进程由处理机(CPU)处理
4)设备管理:将摄像头设备分配给进程
2.为用户提供服务
目标:方便用户使用
提供的功能:
1)命令接口:允许用户直接使用,包括联机命令接口和脱机命令接口
联机命令接口(交互式命令接口):用户说一句,系统做一句,比如cmd
脱机命令接口(批处理命令接口):用户说一堆,系统做一堆,比如.bat批处理
2)程序接口:允许用户间接使用
程序接口=系统调用,只能通过用户间接调用
3)GUI图形界面
3.对硬件进行扩展
没有任何软件支持的机器叫做裸机,而有软件支持的机器称之为拓展机器
2、操作系统的特征
并发:
指的是两个或多个事件同时发生,这些事件在宏观上是同时发生的,但在微观上是交替发生的。
共享:
互斥共享方式:系统中的某些资源,虽然可以提供给多个进程使用,但同一时刻只允许一个进程访问该资源
同时共享方式:允许一个时间段内多个进程“同时”访问(这个同时是宏观上的)
虚拟:
是指把一个物理实体变成若干个逻辑对应物,前者是实际存在的,后者是用户感受到的。
异步:
指的是在多道程序并发执行的状态下,由于资源有限,进程的执行并不是一气呵成的,而是走走停停,以不可预知的速度向前推进。
3、操作系统的发展和分类
手工操作阶段
主要缺点:用户独占全机,人机速度矛盾导致资源利用率底。
批处理阶段
单道批处理系统:引入脱机技术/输出技术(用磁道完成),并且监督程序负责控制作业的输入,输出。缺点:内存仅有一条程序运行,资源利用率依然低
多道批处理系统:多道程序并发执行
分时操作系统
实时操作系统
网络操作系统
分布式操作系统
个人计算机操作系统
4.操作系统的运行机制和体系结构
4.1运行机制
两种指令:
特权指令--比如内存清零指令
非特权指令--普通的运算指令
两种处理机状态:
核心态(管态)特权指令和非特权指令都可以执行
用户态(目态)只能执行非特权指令
两种程序:
内核程序:运行在核心态
应用程序:运行在用户态
4.2操作系统内核
内核定义:是操作系统最基本,最核心的功能
时钟管理:实现计时功能
中断管理
原语:是一种特殊的程序;处于操作系统最底层是最接近硬件的部分;程序的运行具有原子性,及运行只能一次合成,不能打断
**对系统资源进行管理的功能:**进程管理;存储器管理;设备管理
4.3操作系统体系结构
大内核:
将操作系统主要功能模块都作为系统内核,运行在核心态
优点:高性能
缺点:内核代码庞大,结构混乱,不便于维护
微内核:
只把最基本的功能保留在内核
优点:内核功能少,便于维护
缺点:性能底
5.中断和异常
本质
发生中断就意味着需要操作系统进行管理
中断机制的诞生
为了实现多道程序并发执行而引用的一种技术
中断的概念和作用
“中断”是CPU从用户态到核心态的唯一途径
中断的分类
内中断:
自愿中断(指令中断)
强迫中断:硬件中断--打印机缺页
软件中断--整数除0
外中断:外设请求--i/o请求
人工干预--人为强行中断
6系统调用
概念和作用
操作系统给应用程序使用的接口,可以理解为可供应用程序调用的特殊函数
应用程序可以发出系统调用请求来获得操作系统的服务
作用:系统中的共享资源又操作系统统一管理,可以保证系统的稳定性和安全性,防止用户进行非法操作
系统调用分类
设备管理;文件管理;进程控制;进程通信;内存管理
系统调用和库函数的区别
系统调用是操作系统向上层提供的接口,库函数是对系统调用进一步的封装
系统调用背后的过程
7.进程的定义,组成,组织方式,特征
定义–进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单元
组成
程序段--存放要执行的代码
数据段--存放运行过程中的数据
PCB--是进程存在的唯一标志;
组织方式 链接方式;索引方式
特征–动态性;并发性;独立性;异步性;结构性
8.进程的状态和转换
状态
1.运行状态-占有CPU,并在CPU上运行
2.就绪状态-已经具备运行条件,没有空闲的CPU,而暂时不能运行
3.阻塞状态-等待某一事件暂时不能运行
4.创建状态-进程正在被创建,操作系统为其分配资源,初始化PCB
5.终止状态-进程正在从系统中撤销,操作系统会回收进程拥有的资源
状态间的转换
就绪态–运行态
运行态–就绪态
运行态–阻塞态(主动过程)
阻塞态–就绪态
9、进程控制
定义:进程控制就是实现进程间的转换;进程控制用原语实现
进程的创建
进程的终止
进程的阻塞
进程的唤醒
进程的切换
10.进程通信
定义:进程间的信息交换,进程是分配系统资源的单元,在内存地址空间相互独立,一个进程不能直接访问另一个进程的地址空间,这也是为安全性考虑
分类:共享存储;管道通信;消息传递
11.线程,多线程模型
线程定义:可增加并发度,减少并发带来的开销
带来的变化:
资源分配:
进程是资源分配的基本单位,线程是调度的基本单位
并发性:原来只能进程间并发,现在各个线程也能并发,提高了并发度
系统开销:线程间并发,不用切换环境,开销少
线程的实现方式:用户级线程;内核级线程;组合方式
多线程模型:一对一模型;一对多模型;多对多模型
12,处理机调度,处理机调度的时机与方式
定义–按照某种算法选择一个进程将处理机分配给它
层次
高级调度(作业调度):创建态到就绪态
中级调度(内存调度):挂起态到阻塞态
低级调度(进程调度):就绪态到运行态
时机
当前运行的进程主动放弃处理机
当前运行的进程被动放弃处理机
方式
非剥夺调度方式(非抢占式)
剥夺调度方式(抢占式)
13.调度算法的评价指标
CPU利用率--cpu运行时间占总时间的比例
系统吞吐量--单位时间完成作业的数量
周转时间--作业被提交,到作业完成为止这段时间间隔
等待时间--进程处于处理机状态时间之和
响应时间--用户提交请求到首次产生所用时间
14,调度算法
先来先服务
短作业优先
高相应比优先
时间片轮换调度算法
优先级调度算法
多级反馈队列调度算法
15.进程的同步和互斥
进程同步:
并发性带来了异步性,有时需要进程同步解决这种异步问题,有的进程需要相互配合,各个进程需要遵循先后次序
进程互斥
定义:对临界资源的访问,需要互斥的访问,即一段时间只能允许一个进程访问该资源
四个部分
进入区--检查是否可进入临界区,若可进入,则需上锁
临界区--访问邻接资源那段代码
退出区--负责解锁
剩余区--其余代码部分
遵循的原则:空闲让进;忙则等待;有限等待;让全等待
16.信号量机制
定义;为了解决进程互斥问题
17.管程
定义:解决信号量编制麻烦,易出错的问题
特征:各个进程必须互斥的访问管程的特性是由内部编译器实现的
18.死锁
定义:各个进程互相等待对方手里的资源,导致个进程都阻塞,无法向前推进
区别
死锁:至少是两个进程一起死锁,死锁进程处于阻塞态
饥饿:可以只有一个进程饥饿,是由于进程等待资源导致饥饿
死循环:应用程序要处理的问题
必要条件
互斥条件
不剥夺条件
请求和保持条件
循环等待条件
死锁的处理策略
预防死锁
避免死锁
死锁的检测和解除
19,内存
进程运行的基本原理
1.写程序到程序运行
编译—链接(形成逻辑地址)—装入(形成物理地址)
2 三种链接方式
静态链接
装入时动态链接
运行时动态链接
3 三种装入方式
绝对装入
可重定位装入
动态运行时装入
4.内存空间的分配和回收
连续分配管理方式
单一连续分配
固定分区分配
动态分区分配
非连续分配管理方式
基本分页存储管理
基本分段存储管理
段页式存储管理
内存空间的扩充:覆盖技术;交换技术;虚拟存储技术
存储保护
地址转换:逻辑地址到物理地址
20,页面分配策略
21,文件管理
文件的逻辑结构:
无结构文件-由二进制或字符流组成,没有明显的逻辑结构
有结构文件-顺序文件;索引文件;索引顺序文件
文件目录:单极目录结构;两级目录结构;多级目录结构;无环图目录结构
文件共享:硬链接;软连接
文件保护:口令保护;加密保护;访问控制
22.I/O设备
定义:外部设备
控制方式:
程序直接控制方式
中断驱动方式
DMA方式
通道控制方式
缓冲区:提高CPU和i/o速度不匹配问题
脱机技术:磁带,缓解设备和CPU之间速度矛盾
假脱机技术:用软件模拟脱机技术
输入井和输出井:模拟脱机技术的磁带
输入进程和输出进程:模拟脱机技术的外围控制机
输入缓冲区和输出缓冲区:内存中的缓冲区,输入输出的“中转站”