操作系统的定义
-
操作系统(operating system,OS)是配置在计算机硬件上的第一层软件,是对硬
件系统的首次扩充,其主要作用是管理硬件设备,提高它们的利用率和系统吞吐量,并为
用户和应用程序提供一个简单的接口,以便于用户和应用程序使用硬件设备。
基本特性
- 共享、并发、异步、虚拟
操作系统的基本类型及特征
- 批处理系统
- 分时系统
- 分布式系统
- 嵌入式系统
操作系统的功能及特征
- 处理机管理
- 存储器管理
- 设备管理
- 文件管理
- 接口管理
操作系统结构
- 简单结构
- 模块化结构
- 分层式结构
- 微内核结构
- 外核结构
进程
进程的定义、特征
- 进程是程序的执行过程,是系统进行资源分配和调度的一个独立单位
- 特征
- 动态性
- 异步性
- 并发性
- 独立性
进程基本状态及其转换原因
进程互斥、同步(三个同步问题)
生产者-消费者问题
读者-写者问题
哲学家问题
何谓死锁?产生死锁的原因和必要条件是什么?
- 死锁:各进程互相等待对方手里的资源,导致各进程都阻塞,无法向前推进
产生死锁的必要条件
- 互斥条件:必须互斥使用的资源的争抢
- 不剥夺条件:进程保持的资源只能主动释放,不可强行剥夺
- 请求和保持条件:保持某些资源不放,同时请求其他资源
- 循环等待条件:存在一种进程资源的循环等待链
预防死锁方法、避免死锁
进程控制块的内容、作用
-
作用
-
作为独立运行基本单位的标志
-
实现间断性运行方式
-
提供进程管理所需要的信息
-
提供进程调度所需要的信息
-
实现与其他进程的同步与通信
-
8. 用信号量和PV操作机制实现进程的同步和互斥(119)
引入线程的目的
- 是使多个程序能并发执行,以提高资源利用率和系统吞吐量,那么,在OS中再引入线程,则是为了减少程序在并发执行时所付出的时空(时间和空间)开销,以使OS具有更好的并发性
调度
-
作业:一个具体任务
-
高级调度(作业调度)
-
中级调度(内存调度,置换)
-
低级调度(进程调度/处理机调度)
调度算法评判指标
- CPU利用率【忙碌时间 / 总时间】
- 系统吞吐量【完成作业量 / 花费时间】
- 周转时间【作业完成时间 - 作业提交时间】
- 平均周转时间【周转时间和 / 作业数】
- 带权周转时间【作业周转时间 / 作业实际运行时间】
- 平均带权周转时间【带权周转时间之和 / 作业数】
- 等待时间
- 响应时间【用户提交请求到首次产生响应所用时间】
调度算法
-
先来先服务【FCFS】
-
短作业优先【SJF】
-
高响应优先【HRRN】
-
时间片轮转【RR】
-
优先级调度算法
-
多级反馈队列调度算法
连续分配原理和特点
-
内存空间是连续的:在连续分配中,操作系统将可用的内存空间划分为若干块,每个块都是连续的一段内存空间。这种连续性可以方便程序的访问和管理。
-
分配效率高:由于内存空间是连续的,因此在分配内存时,只需要记录空闲块的起始地址和长度即可,分配效率比较高。
-
碎片化严重:连续分配容易出现碎片化问题,即已分配的内存块和未分配的内存块之间形成许多零散的空间,这些空间无法被利用。碎片化会降低内存利用率,使得系统无法分配足够的内存给新的进程,因此需要采取一些措施来减少碎片化问题。
连续分配算法
- 首次适应算法
- 最佳适应算法(容量递增排序,优先选取差值最小分区)(产生很多碎片)
- 最坏适应算法(容量递减排序,优先选取最大分区)
- 邻近适应算法(从上次首次适应算法结束位置开始检索,减少查找开销)(容易无大)
虚拟存储器概念、理论基础
- 特征:多次性
页面置换算法
-
缺页率 = 缺页中断次数 / 访问页面次数
-
最佳置换算法(淘汰之后长时间不使用的页面)
-
先进先出置换算法【FIFO】(淘汰最早进入内存页面)(Belady异常:进程分配的物理块数增大时,缺页次数不减反增)
-
最近最久未使用置换算法【LRU】
-
时钟置换算法【CLOCK】【NRU】
- 改进:优先淘汰未修改页面(访问位 & 修改位同0)
设备
设备分配时应考虑的因素
- 固有属性:独占设备、共享设备、虚拟设备(SPOOLing技术)
- 分配算法
- 安全性
磁盘读写操作所需时间
磁盘的调度算法
- 先来先服务【FCFS】
- 最短寻找时间优先【SSTF】
- 缺点:可能产生饥饿
- 扫描算法【SCAN】
- 电梯算法
- 只有磁头移动到最外侧磁道的时候才能向内移动,移动到最内侧磁道的时候才能向外移动
- 缺点:对于各磁道的响应频率不平均
- 循环扫描算法【C-SCAN】
- 优点:各磁道的响应频率平均
- 缺点:平均寻找时间大
- 【LOOK】算法
- 磁头方向无请求则转向
- 【C-LOOK】算法
- 磁头移动方向无请求则返回
22. 打开文件、关闭文件的操作
23. 文件的物理结构(顺序结构、链接结构(隐式、显式)、索引结构(单级、多级、增量式))
24. UNIX系统多级混合(增量式)索引结构
25. 文件存储空间的管理方法-空闲表法、位示图、空闲块链法
26. 系统调用的过程
27. 系统调用与一般过程调用的区别
《操作系统R》试卷题型
一、选择题(每题2分,共40分)
二、判断题(每题1分,共10分)
三、简答题(每题5分,共20分)
四、应用题(每题10分,共30分)
可采用哪几种方式将程序装入,它们分别适用于何种场合?
- 绝对装入
- 计算机系统很小,且仅能运行单道程序(驻留在内存中的位置确定)
- 可重定位装入
- 多道程序环境(根据内存的具体情况,将装入模块装入内存的适当位置)
- 动态运行时装入
- 在运行过程中程序在内存中的位置可能经常要改变
有哪几种I/O控制方式
引入缓冲的主要原因
- 为了解决不同设备之间的速度不匹配和处理器与I/O设备之间的速度不匹配问题