01.进程控制块PCB作用
作为独立运行基本单位的标志。
能实现间断性运行方式,
提供进程调度所需要的信息。
实现与其它进程的同步与通信。
由此可知:系统根据PCB感知进程的存在,PCB是进程存在的唯一标志 。
02.进程的创建、撤销、阻塞、唤醒的事件和过程
1.创建
进程创建的事件
用户登录
作业调度
提供服务
应用请求
创建过程(创建原语)
申请一个空白PCB
为新进程分配其运行所需的资源
初始化进程控制块PCB
如果进程队列能够接纳新进程,便将新进程插入就绪队列
2.终止
引起进程终止的事件
正常结束
异常结束
越界错
保护错
非法指令
特权指令错
运行超时
算术运算错
I/O故障
外界干预
终止的过程
从PCB集合中找到终止进程的PCB
若进程正在运行,立即剥夺CPU,将CPU分配给其他进程
终止其所有子进程
将该进程拥有的所有资源归还给父进程或操作系统
删除PCB
3.进程的阻塞与唤醒
1.引起进程阻塞和唤醒的事件
(1)向系统请求共享资源失败。 (阻塞)
(2)等待某种操作的完成。( I/0请求)
(3)新数据尚未到达。( 合作进程)
(4)等待新任务的到达。(特定的网络服务)
进程与被唤醒进程是合作的并发进程。
2.进程阻塞
阻塞原语:Block 是一种主动行为
a、立即停止执行,把进程控制块中的现行状态由“执行”改为“阻塞”,并将PCB插入阻塞队列。
b、如果系统中设置了因不同事件而阻塞的多个阻塞队列,则应将本进程插入到具有相同事件的阻塞(等待)队列。
c、转调度程序进行重新调度,将处理机分配给另一就绪进程,并进行切换,亦即,保留被阻塞进程的处理机状态(在PCB中),再按新进程的PCB中的处理机状态设置CPU的环境。
3.进程唤醒
唤醒原语:Wakeup 被动行为
a、把被阻塞的进程从等待该事件的阻塞队列中移出,将其PCB中的现行状态由“阻塞”改为“就绪”
b、将该PCB插入到就绪队列中。
03.信号量机制*
04.处理机调度的层次和含义
高级调度
高级调度又称长程调度或作业调度,它的调度对象是作业。
其主要功能是根据某种算法,决定将外存上处于后备队列中的哪几个作业调入内存,为它们创建进程、分配必要的资源,并将它们放入就绪队列。
高级调度主要用于多道批处理系统中,而在分时和实时系统中不设置高级调度
低级调度
低级调度又称为进程调度或短程调度,其所调度的对象是进程(或内核级线程)。
其主要功能是,根据某种算法,决定就绪队列中的哪个进程应获得处理机,并由分派程序将处理机分配给被选中的进程。
进程调度是最基本的一种调度,在多道批处理、分时和实时三种类型的OS中,都必须配置这级调度。
中级调度
中级调度又称为内存调度。引入中级调度的主要目的是,提高内存利用率和系统吞吐量
把那些暂时不能运行的进程,调至外存等待,此时进程的状态称为就绪驻外存状态(或挂起状态)。当它们已具备运行条件且内存又稍有空闲时,由中级调度来决定,把外存上的那些已具备运行条件的就绪进程再重新调入内存,并修改其状态为就绪状态,挂在就绪队列上等待。
中级调度实际上就是存储器管理中的对换功能
05.多级反馈调度算法*
06.连续分配存储管理方式*
分区分配
固定分区
动态分区
动态重定向分区
固定分区产生内碎片
动态分区分配,不预先划分内存,产生外碎片
动态可重定位:解决产生外碎片
相对地址转化为物理地址
紧凑
动态重定位,硬件地址变换机构:重定位寄存器
基于顺序搜索的动态分区分配算法
循环首次适应算法
最佳适应算法
最坏适应算法
07.为什么引入对换*
在多道程序环境下,一方面,在内存中的某些进程由于某事件尚未发生而被阻塞运行,但它却占用了大量的内存空间,甚至有时可能出现在内存中所有进程都被阻塞,而无可运行之进程,迫使CPU停止下来等待的情况;另一方面,却又有着许多作业,因内存空间不足,一直驻留在外存上,而不能进入内存运行。显然这对系统资源是一种严重的浪费,且使系统吞吐量下降。
08.为什么引入分段、分段地址结构含义*
09.分页和分段的区别
(1)页是信息的物理单位。段则是信息的逻辑单位,它含有一组其意义相对完整的信息。
(2)页的大小固定且由系统决定。段的长度却不固定,决定于用户所编写的程序,由编译程序在对源程序进行编译时,根据信息的性质来划分。
(3)分页的用户程序地址空间是一维的。分段的作业地址空间则是二维的,程序员在标识一个地址时,既需给出段名,又需给出段内地址。
10.局部性原理,虚拟存储器的定义
局部性原理
程序在执行时将呈现出局部性规律,即在一较短的时间内,程序的执行仅局限于某个部分,相应地,它所访问的存储空间也局限于某个区域。体现在两个方面:时间局部性和空间局部性
虚拟存储器
是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统
容量由内存和外存容量之和决定
11.页表、段表的项和含义
页表
页号 | 物理块 | 状态位P | 访问字段A | 修改位M | 外存地址
P:指示该页是否已调入内存,供程序访问时参考
A:记录该页在段时间内被访问的次数,或记录未被访问的时间,供换出页面时参考
M:指示该贝在调入内存时是否被修改,供置换页面时参考
外存地址:指示该页在外存的地址(物理块号),供调入该页时参考
段表
段名 | 段长 | 段基址 | 存取方式 | 访问字段A | 修改位M | 存在位P | 增补位 | 外存始址
12.什么是抖动,产生抖动的原因
在请求分页存储管理中,从主存中刚刚移走某一页面后,根据请求马上又调进该页,这种反复调进调出的现象叫做系统抖动
产生抖动的原因是由于CPU的利用率和多道程序度的对立统一矛盾关系引起的
13.I/O系统基本功能
1. 隐藏物理设备的细节
2. 与设备的无关性
3. 提高处理机和I/O设备的利用率
4. 对I/O设备进行控制
5. 确保对设备的正确共享
6. 错误处理
14.I/O系统层次结构图*
15.设备控制器的基本功能
(1) 接收和识别命令
(2) 数据交换
(3) 标识和报告设备的状态
(4) 地址识别
(5) 数据缓冲区
(6) 差错控制
16.什么是I/O通道,为什么引入I/O通道
I/0通道是一种特殊的处理机。
其主要目的是为了建立独立的I/O操作,不仅使数据的传送能独立于CPU,而且也希望有关对I/O操作的组织、管理及其结束处理尽量独立,以保证CPU有更多的时间去进行数据处理
17.中断处理的过程、步骤
1.检测是否有未响应的中断信号
2.保护被中断进程的CPU环境
3.转入相应的设备处理程序
4.中断处理
5.恢复CPU的现场并退出中断
18.设备驱动程序的功能
(1) 接收由与设备无关的软件发来的命令和参数,并将命令中的抽象要求转换为与设备相关的低层操作序列
(2) 检查用户I/O请求的合法性,了解I/O设备的工作状态,传递与I/O设备操作有关的参数,设置设备的工作方式
(3) 发出I/O命令,如果设备空闲,便立即启动I/O设备,完成指定的I/O操作;如果设备忙碌,则将请求者的请求块挂在设备队列上等待
(4) 及时响应由设备控制器发来的中断请求,并根据其中断类型,调用相应的中断处理程序进行处理
19.设备分配程序的步骤*
1根据进程请求的物理设备名查找SDT(注:物理设备名是进程请求分配设备时提供的参数)
2根据SDT找到DCT,若设备忙碌则将进程PCB挂到设备等待队列中,不忙碌则将设备分配给进程。
3根据DCT找到COCT,若控制器忙碌则将进程PCB挂到控制器等待队列中,不忙碌则将控制器分配给进程。
4根据COCT找到CHCT,若通道忙碌则将进程PCB挂到通道等待队列中,不忙碌则将通道分配给进程。
全分配了才认为是分配成功
20.文件的结构
文件结构
(1)文件的逻辑结构: 从用户观点出发所观察到的文件组织形式,即文件是由一系列的逻辑记录组成,是用户可以直接处理的数据及其结构,它独立于文件的物理结构。又称文件组织。文件的逻辑记录时能够被存取的基本单位。
(2)文件的物理结构,又称为文件的存储结构。指系统将文件存储在外存上所形成的一种存储组织形式,是用户看不到的。
1.按文件是否有结构分类
1)有结构文件
每个记录都用于描述实体集中的一个实体。
(1)定长记录。
所有记录的长度是相同的。文件的长度用记录数目表示。目前常用的记录格式,被应用于数据处理中。
(2)变长记录。
无结构文件
流式文件,基本单位为字符
2.按文件的组织方式分类
(1)顺序文件。
系列记录按某种顺序排列所形成的文件。其中的记录通常是定长记录。
(2)索引文件。
当记录为可变长度时,通常为之建立一张索引表,并为每个记录设置一个表项。
(3)索引顺序文件。
上述两种文件构成方式的结合。它为文件建立一张索引表,为每一组记录中的第一个记录设置一个表项。
21.文件目录
(1)实现“按名存取
(2)提高对目录的检索速度。
(3)文件共享。
(4)允许文件重名。
文件目录也是一种数据结构,用于标识系统中的文件及其物理地址,供检索时使用。
22.文件控制块和索引结点
1.文件控制块FCB(File Control BIock)
目录文件中的一条记录为了能对一个文件进行正确存取,必须为文件设置用于描述和控制文件的数据结构,称之为“文件控制块”。
在文件控制块中,通常应含有三类信息,即基本信息、存取控制信息及使用信息。
23.常见的文件目录结构,是否能实现随机访问
单级文件目录:只能实现按名存取
两级文件目录:主文件目录,用户文件目录
树型目录结构:绝对路径,相对路径的概念
24.访问矩阵
做什么的:
访问矩阵中的行代表域,列代表对象,矩阵中的每一项是由一组访问权组成的。
实现:
访问控制表
是指对访问矩阵按列划分,为每列建立一张访问控制表ACL,由有序对(域,权集)组成,用来保证系统安全性的一种手段。
访问权限表
访问权限表是指对访问矩阵按行划分,由每行构成一张访问权限表。
25.磁盘存储器管理的主要任务和要求
1、有效利用存储空间。采用合理的文件分配方式,为文件分配必要的存储空间。
2、提高磁盘的I/O速度。采用磁盘告诉缓存等措施。
3、提高磁盘系统的可靠性。采用必要的冗余措施和后备系统。
26.外存的组织方式
空闲表法
空闲链表法
空闲盘块链
空闲盘区链
位示图
位示图是利用二进制的一位来表示磁盘中一个盘块的使用情况。
盘块的分配
根据位示图进行盘块分配时,可分三步进行:
(1)顺序扫描位示图,从中找出一个或一-组其值为“0”的二进制位(“0”表示空闲时)。
(2)将所找到的一个或- -组二进制位转换成与之相应的盘块号。假定找到的其值为“0"的二进制位位于位示图的第i行、第j列,则其相应的盘块号应按下式计算:b=n(i- 1)+j式中,n代表每行的位数。
(3)修改位示图,令map[i,j]= 1。
盘块的回收
盘块的回收分两步:
(1)将回收盘块的盘块号转换成位示图中的行号和列号。转换公式为:.
i=(b- l)DIV n+ 1
j=(b- 1)MOD n+ 1
(2)修改位示图。令map[i,j]=0。
成组链接法:UNIX系统 原理 P262