计算机操作系统
操作系统的基本特性
- 并发:指多个活动在同一时间间隔中进行
- 共享:值计算机系统中的资源被多个进程所共用
- 异步:进程以不可预知的速度向前推进
- 虚拟:把一个物理上的实体变为若干个逻辑上的对应物
操作系统的主要功能
- 处理机管理功能:主要功能包括进程控制,进程同步,进程通信,死锁处理,处理机调度
- 存储器管理功能:主要包括内存分配,地址映射,内存保护与共享和内存扩充
- 设备管理功能:主要包括缓冲管理,设备分配,设备处理和虚拟设备等功能
- 文件管理功能:包括文件存储空间的管理,目录管理及文件读写管理和保护等
- 接口管理功能:用户接口和程序接口
进程的描述
进程的定义:
由程序段,相关的数据段和PCB组成了进程实体
- 进程是程序的一次执行
- 进程是一个程序及其数据在处理机上顺序执行时所发生的活动
- 进程是具有独立功能的程序在一个数据集上执行的过程,他是系统进行资源分配和调度的一个单位
进程的特征:
- 动态性
- 并发性
- 独立性
- 异步性
进程的基本状态与转换:
- 就绪状态:进程已经处于准备运行状态,即获得了处理处理机外所需所有资源
- 执行状态:得到处理机开始运行,占用cpu
- 阻塞状态:
flowchart LR
创建--许可-->就绪
阻塞--IO完成-->就绪
就绪--进程调度-->执行--释放-->终止
执行--时间片完-->就绪
执行--IO请求-->阻塞
进程的两个基本属性:
- 进程是一个可拥有资源的的独立单位
- 进程同时又是一个可独立的调度和分派的基本单位
PCB
pcb是保存进程运行期间相关的数据,是进程存在的唯一标志
PCB的作用
- 作为独立运行基本单位的标志
- 实现间断性运行方式
- 提供进程管理所需要的信息
- 提供进程管理所需要的信息
- 实现与其他进程的同步与通信
PCB的信息
- 进程标识符
- 处理机状态
- 进程调度信息
- 进程控制信息
引入线程的目的
为了更好的使用多道程序并发执行,提高资源利用率和系统吞吐量
是程序执行的最小单位,基本不拥有任何系统资源(调度的基本单位)
处理机算法的目标
处理机调度算法的共同目标
- 资源利用率
- 公平性
- 平衡性
- 策略强制执行
批处理系统中处理机调度算法的目标
- 平均周转时间短
- 系统吞吐量高
- 处理机利用率高
分时系统中处理机调度算法的目标
- 保证响应时间快
- 保证均衡性
实时系统中处理机调度算法的目标
- 保证满足截止时间的要求
- 保证可预测性
调度算法
- 先来先服务(FCFS)
- 短作业优先(SJF)
- 优先级优先
- 轮转调度(RR)
- 多级队列
- 多级反馈队列
- 基于公平原则
进程同步
原因:协调进程之间的相互制约的关系
制约关系:
- 同步:直接制约关系,是指为完成某种任务而建立的两个或多个进程,这些进程因为需要在某些位置上协调他猛地工作次序而等待,传递信息所产生的制约关系
- 互斥:简介制约关系,当一个进程进入临界区使用临界资源时,另一个进程必须等待,当占用临界资源的进程退出临界区后,另进程才允许去访问此资源
临界资源:
一次仅允许一个进程使用的资源(打印机,共享缓冲区,共享变量,共用队列)
临界区:
在每个进程中访问临界资源的那段程序
临界区互斥:
原则:空闲让进:一次仅允许一个进程进入
忙则等待:其他必须等待
有限等待:进入有限区的进程必须要在有限时间内推出
让权等待:如果进程不能进入自己的临界区,则应当让出cpu
- 基本方法:
信号量:
死锁
产生的原因:非剥夺资源的竞争和进程的不恰当顺序
定义:多个进程因竞争资源而造成的一种僵局,如果没有外力,这些进程将无法推进
解决办法:
预防死锁
- 破坏互斥体条件
- 破坏不剥夺条件
- 破坏请求和保持条件
- 破坏循环等待条件
- 避免死锁
- 检测死锁:利用死锁定理
解除死锁
- 资源剥夺法
- 撤销进程法
- 进程回退法
评论0
暂时没有评论