操作系统
第一章
操作系统引论
-
什么是操作系统
操作系统是一组能有效地组织和管理计算机硬件和软件资源 (CPU,I/O设备,内存)(文件) (软硬件之间的接口),合理地对各类作业进行调度, 以及方便用户使用的程序的集合。
-
操作系统五大功能
处理机管理功能 存储器管理功能 设备管理功能 文件管理功能 操作系统与用户之间的接口
-
操作系统四大特性*
并发性 共享性 虚拟性 异步性 是多用户(多任务)OS的两个最基本的特征
第二章
进程的描述与控制
-
什么是进程
程序关于某个数据集合的一次动态执行过程 (是系统进行资源分配和分配的一个独立单位, 可拥有独立资源,可独立调度和分配的基本单位)
-
为什么引入进程
为了使程序在多道程序环境下能并发执行,并对并发执行的程序加以控制和描述
-
什么是线程
轻量进程,程序执行流的最小单元 (在引入线程的OS中,调度和分配的基本单位,能独立运行的基本单位)
-
为什么引入线程
为了减少程序在并发执行时所付出的时空开销,使OS具有更好的并发性,提高CPU的利用率。 进程是分配资源的基本单位,而线程则是系统调度的基本单位。
-
进程图
就绪 执行 阻塞 进程在三个基本状态之间转换的典型原因: 就绪状态→执行状态:进程分配到CPU资源 执行状态→就绪状态:时间片用完 执行状态→阻塞状态:I/O请求 阻塞状态→就绪状态:I/O完成
-
进程同步机制的准则
空闲让进 忙则等待 有限等待 让权等待
第三章
处理机的调度与死锁
-
什么是死锁
如果一个进程中的每一个进程都在等待仅由该进程中的其他进程 才能引发的事件,那么该组进程是死锁的
-
产生死锁的原因
竞争资源和进程间推进顺序非法
-
死锁的四个必要条件
互斥条件 请求和保持条件 不可抢占条件 循环等待条件
-
避免死锁的四个策略
预防死锁 破坏“请求和保持”条件---静态资源分配法 破坏“循环等待”条件---有序资源分配法 不可抢占破坏实现较为复杂 互斥是非共享设备所必须,不可改变 避免死锁 检测死锁 解除死锁 成对出现
第四章
存储器管理
-
什么是虚存储器
定义 具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统 虚拟存储器的容量 虚拟存储器的容量由内存容量和外存容量之和决定
-
为什么引入虚拟存储器
实现内存扩充的功能
-
什么是局部性原理
在较短时间内,程序的执行仅局限于某个部分,相应地,它访问的存储空间也局限于某个区域 (表现:时间局限性;空间局限性)
-
存储器管理实现的功能
内存分配 内存保护 地址映射 内存扩充
第五章
设备管理
-
对I/O设备的控制方式及特点
轮询的可编程I/O方式(程序I/O方式) CPU对I/O设备直接进行控制,采取忙等待方式 中断的可编程I/O方式(中断驱动I/O方式) CPU与I/O设备处于并行工作状态,只是当传输结束时,才由控制器向CPU发送中断信号 直接存储器访问方式(DMA) 数据传输的基本单位是数据块 仅在传送一个或多个数据块的开始和结束时,才需CPU干预 I/O通道控制方式 CPU委托专用的I/O处理机来实现I/O设备与内存之间的信息交换
-
什么是通道?
通道、CPU、内存和外设之间的工作关系 I/O通道是一种特殊的处理器,专门负责输入,输出。通道虽然提供了CPU,通道,和I/O设备间并行的可能性,但是往往由于通道数量不足而使并行程度受到限制,缓冲的引入可减少占用通道的时间,从而显著提高CPU,通道,I/O设备间的并行操作程度。 通道是一种专用处理机,目的是使一些原来由CPU处理的I/O任务转由通道来实现
-
什么是缓冲?为什么要引入缓冲?
原因 为了缓和高速CPU和低速I/O设备之间的矛盾,提高CPU的利用率 减少对CPU的中断频率,放宽对CPU中断响应时间的限制 解决数据粒度不匹配的矛盾 提高CPU 与I/O设备之间的并行性 为了协调吞吐速度相差很大的设备之间速度不匹配的矛盾 定义 缓冲区是一个存储区域,它可以由专门的硬件寄存器组成,一般情况下更多是利用内存作为缓冲区
-
为什么要引入SPOOLing系统?简述SPOOLing系统的组成及工作原理。
原因 为了缓和高速CPU和低速I/O设备之间的矛盾 通过假脱机技术,将一台物理I/O设备虚拟为多台逻辑I/O设备,允许多个用户共享一台物理I/O设备
-
什么是中断?什么是中断处理?什么是中断响应?
定义 中断是指CPU对I/O设备发来的中断信号的一种响应 中断处理 是指一旦CPU发出请求,转入中断处理程序,系统就开始进行中断处理 中断响应 中断源向CPU发出请求终端的处理信号称为中断请求,而CPU收到中断请求后转到相应的事件处理程序称为中断响应
-
什么叫“设备独立性”?如何实现“设备独立性”?
基本含义 应用程序独立于具体使用的物理设备,应用程序以逻辑设备名请求使用某类设备。 实现 为了实现设备的独立性,应引入逻辑设备和物理设备概念。在应用程序中,使用逻辑设备名请求使用某类设备;系统执行时是使用物理设备名。鉴于驱动程序是与硬件或设备紧密相关的软件,必须在驱动程序之上设置一层设备独立性软件,执行所有设备的公有操作、完成逻辑设备名到物理设备名的转换(为此应设置一张逻辑设备表)并向用户层(或文件层)软件提供统一接口,从而实现设备的独立性。
-
磁盘访问时间有哪几部分组成?每部分时间应如何估算?其中哪一个时间是磁盘调度的主要目标
对磁盘的访问时间及估算 寻道时间 T=m*n+s(移动n条磁道 启动磁臂时间) 通过软件即调度算法可改进 旋转延迟时间 指定扇区移动到磁头下面经历的时间 传输时间 数据从磁盘读出或向磁盘写入数据经历的时间
第六章
文件管理
-
物理结构(与外存分配有关)
连续分配 链接分配 索引分配 Fat技术 (MS-DOS) Unix操作系统 计算 直接寻址 间接寻址 索引
-
逻辑结构/组织方式
顺序 索引 索引顺序 Hash文件
参考书籍:计算机操作系统(第四版) 西安电子科技大学出版社