os
1.os是直接控制和管理计算机硬件,软件资源,合理的对各类作业进行调度,以方便用户使用的程序集合
2.os在计算机中的地位,裸机-操作系统-应用软件
3.os的目标
一,有效性,提高系统资源的利用率 ,提高系统的吞吐量。
二,方便性,使用系统的方便性。
三,可扩充性 。
四,开放性,兼容性
4.os的作用
一/作为用户和计算机间的借口 。 调用方式:系统调用/命令/图标窗口
二/作为计算机系统资源的管理者 。 处理器/存储器/设备/文件
三/实现了对计算机的抽象
5.os发展的主要动力
一/不断提高计算机资源的利用率
二/方便用户的使用
三/元器件的不断更新换代
四/计算机体系结构的不断发展
5.单道批处理/多道批处理 (资源利用率高,系统吞吐量大,周转时间长,无交互能力)
分时系统,分时轮流为各终端用户服务 。 多路性/独立性/及时性/交互性
实时系统,对随即发生的外部事件作出及时响应并在规定时间内对其进行处理。硬实时系统/软实时系统
快速响应时间/有限交互能力/高可靠性
6.并发(并发/并行区分)并发,同一时间间隔内发生,并行,同一时刻发生
共享,系统中资源供内存中的多道程序共同使用
互斥共享(打印机)/同时访问(磁盘)
虚拟技术,
异步性
7.程序顺序执行的特征 一顺序性,二封闭性,三可再现性
8.前趋图 p1尖头p2,p1是p2的直接前趋,p2是p1的直接后继 。 (p1,p2)
初始结点,终止结点,重量(程序段程序执行的时间,时间长重量大)
9.程序并发执行时的特征
一/间断性 。 程序之间资源共享,形成相互制约。
二/失去封闭性。程序的运行结果受其他程序影响。
三/不可再现性。程序并发执行时,多次执行初始条件相同的同一程序得出不同的结果。
10.进程 /程序关于某个数据集合一次执行过程
(1)结构特征(进程控制块(PCB)/程序/数据 = 进程实体)
(2)动态性 。 (进程/程序)
(3)并发性
(4)独立性 独立运行/独立分配资源/独立接收调度
(5)异步性 。
11进程的三个基本状态
(1)就绪状态/进程已获取除cpu之外的所必需的资源
(2)运行状态/获取cpu
(3)阻塞状态/进程由于发生某事件而暂时无法执行,放弃cpu
12.挂起状态 。 释放内存资源,内存移到外存
(1)终端用户请求
(2)父进程请求
(3)负荷调节的需要
(4)操作系统的需要
13.进程控制块(PCB)/ 存放进程管理和控制信息的数据结构 。 PCB是进程的唯一标志
(1)进程标识符 。 (内标识符/外标识符)
(2)CPU状态 。 保存中间结果/中间位置
(3)进程调度信息 。
(4)进程控制信息
14.进程控制块的组织方式
(1)链接方式
(2)索引方式
15.进程的创建 / 一用户登录,分时系统,二作业调度,三 提供服务
过程:申请空白PCB,为新进程分配资源,初始化PCB(填写PCB数据结构),将新进程插入到就绪队列
16.进程的终止 /一正常结束,二异常结束,三外界干预(用户操作干预,父进程请求,父进程终止)
过程: 找出被终止的PCB,如果为运行态,置CPU调度为真,若有子孙进程,终止其子孙进程并回收其资源,回收终止进程资源,回收终止进程PCB
17.进程的阻塞与唤醒 /一请求系统服务,二启动某种操作,三新数据尚未到达,四无新工作可做
阻塞过程:调用阻塞原语阻塞自己,将PCB状态改为阻塞,进入 到阻塞队列,转进程调度
唤醒过程:把阻塞的进程从阻塞队列中移除,置为就绪状态,将PCB插入到就绪队列中
18.进程的挂起与激活
挂起过程:检查被挂起进程状态,若为活动就绪,则改为静止就绪,若为活动阻塞,则改为静止阻塞
激活过程:先将进程外存调往内存,检查内存状态,若为静止就绪,则改为活动就绪,若为静止阻塞,则改为活动阻塞
19.进程同步 多个进程在执行次序上进行协调,使并发执行的进程有效的共享资源和相互合作,从而使程序执行具有可再现性
进程间的两种制约关系:(1)间接制约 资源共享。 (2)直接制约关系 。 合作
20.临界资源:把一段时间内只允许一个进程访问的资源称为临界资源
进入区,临界区,退出区,剩余区
21.同步机制遵循规则:(1)空闲让进 (2)忙则等待 。 (3)有限等待 。 (4)让权等待
22.信号量机制:整型信号量 /记录性信号量/信号量集
整型信号量:把整型信号量定义为一个用于表示资源数目的整型量S,除初始化外,仅能通过wait(S)和signal(S)操作(原子操作)
记录性信号量:
And型信号量: Swait(S1,S2,……Sn)申请n个资源,每次都判断每个资源
信号量集:
Swait(S,t,d)只有一个信号量s,允许每次申请d个资源,若现有资源小于t,则不予分配
Swait(S,1,1)第二个参数 下界,第三个参数需求量 。 当s>1时,为记录型信号量,当s=1时,为互斥信号量
Swait(S,1,0)当s>=1,允许多个进程进入特定区,当s=0时,阻止任何进程进入特定区,相当于可控开关
23.信号量的应用 互斥/前趋/同步
semaphore 临界资源个数 。 parbegin 和 parend 并发执行 。 repeat 和 until false 。 循环多次执行
wait和signal成对出现
24.进程间通信
消息传递 (1)陷入内核 (2)复制消息 (3)消息入队
共享内存
管道
套接字
远程过程调用
25.线程控制块 。 TCB
26.处理机调度
层次:高级调度(作业调度,长程调度)/低级调度(短程调度,进程调度)/中级调度(内存调度)
算法的目标:从系统角度
(1)资源利用率 = CPU有效工作时间/(CPU有效工作时间+CUP空闲时间)/吞吐量
(2)公平性
(3)平衡性
(4)策略强制执行
从个人角度
(1)周转时间 (2)响应时间(3)最后期限(4)可预测性
调度算法衡量指标:吞吐量/周转时间/响应时间/CUP利用率/等待时间
27.进程切换:(1)切换全局目录页以加载一个新的地址空间(2)切换内核栈和硬件上下文,其中硬件上下文包括内核执行新进程需要的全部信息
eg:
进程切换开销:直接开销,内存完成切换所需要的时间(保存和恢复寄存器/切换地址空间)
间接开销,高速缓存,缓存区缓存,TLB失效
28.进程调度算法:
29.死锁的条件 1.互斥 2.请求和保持 3.不可剥夺 4循环等待