概述
操作系统的概念、分类及特点
- 操作系统是控制应用程序的程序,是应用程序和计算机硬件间的接口。
- 操作系统是计算机系统中的一个系统软件,它管理和控制计算机系统中的资源。
- 操作系统设计的三个目标是:便利性:操作系统使计算机更易于使用;有效性:操作系统允许以更有效的方式使用计算机系统资源;扩展的能力:在构造操作系统时,应该允许在不妨碍服务的前提下有效地开发、试和引进新的系统功能。
- MS-DOS是典型的采用简单结构的操作系统。
- 操作系统的用户界面(或称接口)
是操作系统提供给用户与计算机打交道的外部机制。用户能够借助这种机制和系统提供的手段来控制用所在的系统。
进程
进程定义、组成、特性。
- 五状态进程模型中的每种状态:
- 运行态:该进程正在执行。
- 就绪态:进程做好了准备,只要有机会就开始执行。
- 阻塞态:进程在某些事件发生前不能执行,如I/O操作完成。
- 新建态:刚刚创建的进程,操作系统还没有把它加入到可执行进程组中。
- 退出态:操作系统从可执行进程组中释放出的进程,或者是因为它自身停止了,或者是因为某种原因被取消。
- 进程是动态的概念,由处理机执行,有生存周期,但不是指令的集合。
- 进程主要由程序、数据和进程控制块PCB三部分内容组成。
- 每一个进程都有唯一的一个进程控制块PCB,它是进程存在的唯一标志。
- 在分时系统或支持多任务并发执行个人计算机操作系统中,系统将用户提交的任务处理为进程,一个进程又可以创建多个子进程,形成可以并发执行的多进程。
- 不管系统中是否有线程,进程都是拥有资源的独立单位。
- 进程和程序的本质区别是前者动态在运行,后者静态不变。
- 内存中进程的数量不是衡量系统并发度和效率的指标。
进程的状态转换
- 进程的三个基本状态是运行、等待和就绪。
- 当获得了所等待的资源时,一个进程将退出等待队列进入就绪队列。
- 进程的运行态是指进程已分配到CPU,正在处理机上执行的状态,进程已分配到CPU,正在处理机上执行的状态。
- 当处理器空闲时,调度程序从就绪进程队列中选择一个进程给其分配CPU。
- 当一个进程从等待态变为就绪态,此时,不一定有一个进程从就绪态变成运行态。
中断概念
- 当处理机执行到访管指令时发生中断,该中断称为访管中断,它表示正在运行的程序对操作系统的某种需求。
PV操作定义理解、生消读写问题。
- 两个并发进程之间可能存在同步或互斥关系,操作系统中利用信号量和P、V操作实现进程的互斥和同步。
- 对于两个并发进程,设互斥信号量为mutex,若mutex=1,则表示没有进程进入临界区。设互斥信号量为mutex,若mutex=-1,则表示有一个进程进入临界区,另一个进程等待进入。
- 如P和V操作的信号量S初值为4,
当S=-1时,表示有1个进程在等待该信号量。
- P操作使信号量s减1。若s≥0,则该进程(继续);若s<0,则该进程等待。
- V操作使信号量加1。若s≤0,则该进程从等待队列中唤醒一个进程;若s>0,则该进程继续。
处理机调度算法
三级调度分类概念
- 优先级是进行进程调度的重要依据,系统可根据进程状态调整优先级。
- 多级反馈调度算法将就绪队列按优先级分成若干个队列,如若一个进程在高优先级的队列一次运行没有结束,就到次一级优先级的队列排队,以此类推,这样做的目的是惩罚长进程。
- 先来先服务调度算法不利于短进程的处理。
- 最高响应比优先算法是一种既有利于短作业又兼顾到长时间等待的作业的调度算法。
- 进程优先数调度算法的优先数分为静态和动态两类。
- 作业调度称为宏观调度,进程调度又称为微观调度。
FIFO、SBF调度算法的周转时间
短作业优先调度算法,短作业优先调度算法的周转时间与带权周转时间(归一化周转时间)
| 1 |
8.00 |
2.00 |
8.00 |
10.00 |
2.00 |
1 |
| 2 |
8.50 |
0.50 |
10.30 |
10.80 |
2.30 |
4.6 |
| 3 |
9.00 |
0.10 |
10.00 |
10.10 |
1.10 |
11 |
| 4 |
9.50 |
0.20 |
10.10 |
10.30 |
0.80 |
4 |
内存管理
内存管理方式分类
- 通常所说的“存储保护”的基本含义是防止程序间相互越界访问。
内外碎片的概念
- 内部碎片:由于装入的数据块少于分区大小,因而导致分区内部存在空间浪费。
- 外部碎片:随着时间的推移,在所有分区外的存储空间变成了越来越多的碎片,内存的利用率随之下降。分页技术会产生内部碎片。分段技术会产生外部碎片。
- 解决碎片问题的常用的技术有拼接技术。
分页、分段地址映射方式思想
- 把逻辑地址转变为内存的物理地址的过程称为地址映射。
- 页式虚拟存储系统中,页面长度固定,与程序长度无关。
- 程序的地址空间被等分成大小相等的片,称为页面,又称为虚页。主存被等分成大小相等的片,称为主存块,又称为实页。
- 为了实现从地址空间到物理主存的映象,系统建立的记录页与内存块之间对应关系的地址变换的机构称为页面映像表,简称页表。
- 简单分页技术:内存被划分许多大小相等的页框,每个进程被划分许多大小与页框相等的页,要装入一个进程,需要把进程包含的所有页都装入内存内不一定连续的某些页框中。
- 优点:没有外部碎片。缺点:有少量的内部碎片。
- 与虚拟分页的区别:虚拟分页不需要装入一个进程的所有页,仅在需要时才读入页。
缺页中断概念
- 请求分页式存储管理允许作业在执行过程种,如果所要访问的页面不在主存种,则产生的中断称“缺页中断”。
快表(cache)概念作用
- Cache 是介于 CPU 和主存储器间的高速小容量存储器,由静态存储芯片 SRAM
组成,容量较小但比主存 DRAM 技术更加昂贵而快速,接近于 CPU 的速度
- CPU 往往需要重复读取同样的数据块, Cache
的引入与缓存容量的增大,可以大幅提升 CPU
内部读取数据的命中率,从而提高系统性能
虚拟存储技术概念
- 虚拟存储器给用户提供了更大的地址空间,实际上它扩大了逻辑内存容量。
- 操作系统的所有程序不必常驻内存,进程在运行前不必全部装入内存,并且在运行期间也不必一直驻留在内存。
- 把逻辑地址转变为内存的物理地址的过程称为地址映射。
请求分页存储管理FIFO、LRU页面淘汰算法
哈工大前19分半
北方交大
西安交大前9分半
I/O设备
设备分类、设备分配技术分类
- 常用的设备分配技术有独占分配、共享分配和虚拟分配3种。
控制方式分类
- 设备独立性是指设备驱动程序独立于具体的物理设备的特性。
缓冲技术分类:单双多缓冲
- 缓冲是两种不同速度的设备之间传输信息时平滑传输过程的常用手段。常用的缓冲技术有双缓冲、环形缓冲和缓冲池。例如:CPU输出数据的速度远远高于打印机的打印速度,缓冲技术的引入可解决这一矛盾。
- 引入缓冲技术的主要目的是提高CPU与设备之间的并行速度。
(以上三条为填空)
Spooling技术思想
- SPOOLING系统利用通道和中断技术,在主机控制之下,由通道完成输入输出工作。系统提供一个软件系统(包括预输入程序、缓输出程序、井管理程序、预输入表、缓输出表)。它提供输入收存和输出发送的功能,使外部设备可以并行操作。
文件
组织和存取方法
- 文件是在逻辑上具有完整意义的信息集合,构成文件的基本单位是:信息项或记录,按文件的性质和用途可分为:系统文件、程序库文件、用户文件。
- UNIX/Linux下的链接文件有两种,硬连接(Hard Link)
和软连接,软连接又称符号链接(Symbolic link)。
- 串联文件结构是按顺序由串联的块组成的,即文件的信息存于若干块物理块中,每个物理块的最末一个字作为链接字,它指出后继块的物理地址。文件的最后一块的链接字为结束标记“∧”,它表示文件至本块结束。
存储空间的管理
- 系统为每个文件建立逻辑块号与物理块号的对照表。这张表称为该文件的索引表。文件由数据文件和索引表构成。这种文件称为索引文件。
- 文件目录是记录文件的名字、存放地址及其他有关文件的说明信息和控制信息的数据结构。所谓“链接”,就是在相应目录表目之间进行链接,即单个目录中的表目直接指向另一个目录表目所在的物理位置。这种链接不是直接指向文件,而是指向相应的目录表目。这种办法也称为连访,被共享的文件称为连访。
(以上两条为填空)
死锁
概念、产生条件。死锁预防、避免(银行家算法思想)
- 当多个进程由于竞争互斥使用的资源又互不相让时系统将进入死锁状态。
- 死锁产生的原因有系统资源不足和进程推进的顺序不当。
- 采用按序分配资源的策略可避免循环等待资源状况的发生,进而避免了死锁的发生。
- 对资源编号,要求进程按照序号顺序申请资源,是破坏了产生死锁必要条件中的“循环等待资源”的条件。
- 银行家算法在解决死锁问题中引入避免死锁的机制。
(以上为填空)