操作系统基本知识点Word文件下载.docx
《操作系统基本知识点Word文件下载.docx》由会员分享,可在线阅读,更多相关《操作系统基本知识点Word文件下载.docx(18页珍藏版)》请在冰豆网上搜索。
M.微内核OS结构
足够小的内核,基于C/S模式,应用“机制与策略相分离”原理,采用面向对象技术。
2.进程管理
2.1.进程与线程
1.
1.1.
2.1.1.进程概念
进程进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。
进程实体即是由程序段,相关的数据段和PCB三部分构成。
程序顺序执行拥有顺序性,封闭性,和可再现性三个特征。
2.1.2.进程的状态与转换
2.1.3.进程控制
操作系统是根据PCB来对并发执行的进程进行控制和管理的,所以说PCB是进程存在的唯一标识。
在进程控制块中主要包含一下四方面的内容:
A.进程标识符
包含内部标识符和外部标识符
B.处理机状态
通用寄存器,指令计数器,程序状态字PSW,和用户栈指针
C.进程调度信息
进程状态,进程优先级
D.进程控制信息
程序和数据地址,进程同步和通行机制,资源清单,链接指针
2.1.4.进程组织
目前常用的两种方式如下:
A.连接方式
把具有统一状态的PCB链接成一个队列。
B.索引方式
把具有统一状态的PCB组织为一张索引表。
2.1.5.进程通信(共享存储、消息传递、管道通信)
A.共享存储:
共享又可分为基于共享数据结构的通信方式和基于共享存储区的通信方式。
B.管道通信:
是指由于连接一个读进程和一个写进程以实现他们之间的通行。
C.消息传递系统:
直接消息传递方式:
Send(receiver,message);
Receive(sender,message);
间接消息传递:
Send(mailbox,message);
Receive(mailbox,message);
2.1.6.线程概念与多线程模型
线程是比进程更小的能独立运行的单位。
线程有以下三种实现方式:
A.内核支持线程
B.用户级线程
C.组合方式
2.2.处理机调度
1.2.
2.2.1.调度的基本概念
调度可分为一下三种
A.高级调度(作业调度)
主要功能是根据某种算法,把外存上处于后备队列中那些作业调入内存。
B.低级调度(进程调度)
用于决定就绪队列中的哪个进程应获得处理机。
C.中程调度
将那邪恶暂时不能运行的进程调到外存上等待,而不再浪费宝贵的内存资源。
2.
2.1.
2.2.
2.2.1.
2.2.1.1.调度的基本准则
调度有两个基本准则:
A.面向用户的准则
a)周转时间短
平均周转时间:
,平均带权周转时间
b)响应时间快
从键盘键入信息传送到处理器的时间,处理机处理的时间,返回到终端显示器的时间。
c)截至时间保证
这是评价实时系统性能的重要指标
d)优先权准则
保证紧急作业得到即时处理
B.面向系统的准则
a)系统吞吐量
b)处理机利用率
c)各类资源的平衡利用
2.2.1.2.调度方式与时机
进程的调度可以分为一下两种
A.非抢占式
在该模式下,可能引起进程调度的因素可以归为一下几类
a)正在执行的进程执行完毕,或是发生某些事件而不能继续执行。
b)执行中的进程提出I/O请求二暂停执行
c)执行了某种元语
B.抢占式
抢占式可以防止某一长进程长时间占用处理机,能为大多数的进程提供更公平的服务。
抢占的调度方式是基于一定原则的。
2.2.1.3.切换与过程
A.保存处理机的现场
B.按某种算法选取进程
C.把处理器分配给进程
2.2.2.典型调度算法
2.2.2.
A.先来先服务(FCFS)与短作业(短进程、短线程)(SJ(P)F)优先
SJ(P)F较FCFS能明显的提高平均周转时间和带权周转时间,但该算法对长作业不利,也未考虑作业的紧迫程度。
B.时间片轮转
时间片的取值略大于一次典型交互所需的时间。
C.优先级
优先级法可分为静态优先级和动态优先级。
D.最高响应比优先
。
E.多级反馈队列调度算法
2.3.进程同步与互斥
1.3.
2.3.1.进程同步的基本概念
A.两种制约关系
间接相互制约关系
直接相互制约关系
B.临界资源
诸进程应采用互斥的方式实现对这种资源的访问,如打印机等。
C.临界区
进程中访问临界资源的那段代码称为临界区
D.同步机制原则
a)空闲让进
b)忙则等待
c)有限等待
d)让权等待
2.3.2.实现临界区互斥的基本方法:
软件实现方法、硬件实现方法
A.软件实现方法:
a)单标志法:
/*P0进程*/
while(turn!
=0);
criticalsection;
turn=1;
remaindersection;
/*P1进程*/
=1);
turn=0;
两个进程必须交替访问临界区,违背空闲让进。
b)双标志先查法:
while(flag[j]);
flag[i]=ture;
flag[i]=FALSE;
while(flag[i]);
flag[j]=TURE;
flag[j]=FLASE;
检查对方和设置自己不是一次执行的,故可能会违背忙则等待原则。
c)双标志后查法:
违背空闲让进
d)Peterson`sAlgorithm
flag[i]=TURE;
turn=j;
while(flag[j]&
&
turn=j);
turn=I;
while(flag[i]&
flag[j]=FALSE;
利用flag解决互斥访问,利用turn解决“饥饿”现象。
B.硬件实现方法:
a)中断屏蔽法
b)硬指令法
i.TestAndSet指令:
whileTestAndSet(&
lock);
lock=false;
ii.Swap指令:
key=ture;
/*localvariable*/
while(key!
=FAlSE)
/*lockisasharevar*/
Swap(&
lock,&
key);
riticalsection;
lock=FALSE;
2.3.3.信号量、管程
A.整型信号量
违背让权等待原则。
B.记录型信号量
C.AND型信号量
D.信号量集
E.管程
一个管程定义了一个数据结构和能为并发进程所执行的在该数据结构上的一组操作,这组操作能同步进程和改变管程中的数据。
2.3.4.经典同步问题
A.生产者-消费者问题:
c)使用记录型信号量
d)使用and信号量解决
e)利用管程
B.哲学家进餐问题:
f)利用记录型型号量解决
g)利用AND信号量解决
C.读者-写者问题:
h)利用记录型信号量解决
i)利用信号量集机制解决
2.4.死锁
1.4.
死锁,是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,他们都将无法再向前推进。
2.4.1.产生死锁的原因
A.竞争资源
B.进程间推进顺序非法
2.4.2.产生死锁的必要条件
A.互斥条件
B.请求和保持条件
C.不剥夺条件
D.环路等待条件
2.4.3.处理死锁的方法
A.预防死锁
破坏死锁的四个必要条件中的一个或多个从而达到预防死锁的目的。
但由于所施加的条件太严格可能会导致系统资源利用率和系统吞吐量下降。
摒弃“请求和保持”条件
摒弃“不剥夺”条件
摒弃“环路等待”条件
B.避免死锁
在资源的动态分配过程中,用某种方法去防止系统进入不安全状态。
如银行家算法。
C.检测死锁&
解除死锁
资源分配图
死锁定理:
当且仅当该状态的资源分配图是不可完全化简的时,该状态即为死锁状态。
死锁解除:
剥夺资源和撤销进程。
3.内存管理
3.1.内存管理基础
3.1.1.内存管理概念
操作系统的存储管理,负责对可执行存储器的分配,回收以及提供在存储层次间数据移动的管理机制。
3.1.2.程序装入与链接、逻辑地址与物理地址空间、内存保护
A.装入:
a)绝对装入方式
b)可重定位装入方式
c)动态运行时装入方式
B.链接:
a)静态链接
b)装入时动态链接
c)运行时动态链接
3.1.3.交换与覆盖
对换可分为整体对换和部分对换。
为了实现进程的对换,系统必须实现三方面的功能:
对换空间的管理,进程的换入,进程的换出。
3.1.4.连续分配管理方式
A.单一连续分配方式
内存分为用户区和系统区两部分。
只适用于单用户单任务系统。
B.固定分区分配
划分分区的方法可以有分区大小相等和分区大小不等两种方式。
C.动态分区分配
a)数据结构:
i.空闲分区表
ii.空闲分区链
b)分区分配方法:
i.首次适应算法
ii.循环首次适应算法
iii.最佳适应算法
iv.最坏适应算法
v.快速适应算法
D.可重定位分区分配
利用动态运行时,地址的转换是在程序执行时完成。
故可以使用“紧凑”将多个分散的小分区拼接成一个大分区。
3.1.5.非连续分配管理方式
A.分页管理方式
B.分段管理方式
C.段页式管理方式
3.2.虚拟内存管理
3.2.1.虚拟内存基本概念
虚拟存储器是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储系统。
3.2.2.请求分页管理方式
A.硬件支持:
a)页表机制:
页号
物理块
状态位
访问字段
修改位
外存地址
b)缺页中断机构:
与一般中断相比,缺页中断发生在指令执行期间,且在一条指令可能产生多次中断。
c)地址变换机构:
加入虚拟存储管理后的地址变换流程。
B.内存分配策略和分配算法:
a)最小物理块数:
保证进程运行的最小物理块数量,与硬件平台有关。
b)物理块分配策略:
i.固定分配局部置换
ii.可变分配全局置换
iii.可变分配局部置换
c)物理块分配算法:
i.平均分配算法
ii.按比例分配算法
iii.考虑优先权的分配算法
C.调页策略:
a)时机:
iv.预调页策略
v.请求调页策略
b)何处:
vi.系统拥有足够的对换区
vii.系统缺少足够的对换区
D.UNIX方式
3.2.3.页面置换算法
A.最佳置换算法(OPT)
B.先进先出置换算法(FIFO)
C.最近最少使用置换算法(LRU)
D.时钟置换算法<
CLOCK>
3.2.4.工作集、抖动
抖动是指频繁的页面对换行为,最坏的情况是刚刚换出的页面马上又要换入,刚刚换入的页面马上又要换出。
工作集是指在某段时间内,进程要访问的页面的集合。
为了防止系统出现抖动现象,需要选择合适的工作集大小。
4.输入输出(I/O)管理
4.1.I/O管理概述
I/O设备可按如下分类。
按设备的使用特性可分为:
存储设备,输入/输出设备;
按传输速率可分为:
低速设备、中速设备、高速设备;
按信息交换的单位可分为:
块设备、字符设备;
按设备的共享属性可分为:
独占设备、共享设备、虚拟设备;
I/O设备与设备控制器间的接口有三种类型信号:
数字信号线、控制信号线、状态型号线。
I/O通道有三种通道类型:
字节多路通道、数组选择通道、数组多路通道
4.2.I/O控制方式
程序I/O方式
中断驱动I/O控制方式
直接存储访问(DMA)I/O控制方式
I/O通道控制方式
4.3.I/O软件层次结构
用户软件层:
实现与用户的交互。
设备独立性软件:
负责实现与设备驱动器的统一接口、设备命名、设备保护以及设备分配与释放
设备驱动软件:
与硬件直接相关
中断处理程序:
保存被终端进程的CPU环境,转入中断处理程序处理后再恢复
硬件:
执行I/O操作
4.4.I/O调度概念
磁盘的结构分为:
盘片、盘面、磁道、扇区。
磁盘的常见分类为:
硬盘和软盘、单片盘和多片盘、固定磁头和活动磁头等。
2.3.
2.4.
4.4.1.磁盘访问时间:
A.寻道时间Ts:
把磁臂移动到指定磁道上所经历的时间。
m是一个常数,对一般磁盘而言m=0.2,对于高速磁盘m<
0.1,s是磁臂启动时间约为2ms。
B.旋转延迟时间:
指定扇区移动到磁头下方所经历的时间:
对于15000r/min的硬盘,每转约4ms,则其平均延时时间Tr为2ms
C.传输时间:
把数据从磁盘读出或写入的时间Tt的大小与每次所读写的字节数b和旋转速度有关
其中,r为磁盘每秒钟的转数;
N为一条磁道上的字节数。
因此,访问时间Ta可表示为:
4.4.2.磁盘调度
先来先服务(FCFS,firstcomefirstserved)
最短寻道时间为优(SSTF,shotestseektimefirst)
扫描算法(SCAN)
循环扫描算法(CSCAN)
NStepSCAN和FSCAN调度算法
4.5.出错处理
一般而言错误多数是与设备紧密相关的,因此对错的处理应尽可能在接近硬件层面处理,在底层软件能够解决的错误就不让高层软件感知,只有底层软解决不了的错误才通知高层软件解决。
4.6.高速缓存与缓冲区
4.6.1.缓冲引入的原因:
缓和CPU与I/O设备间的速度不匹配矛盾
减少CPU的中断频率,放宽对CPU中断响应时间的限制
提高CPU和I/O设备之间的并行性
4.6.2.缓冲的种类:
单缓冲
双缓冲
循环缓冲
缓冲池
4.6.3.高速缓存:
磁盘高速缓存是指利用内存中的存储空间来暂存从磁盘读出的一系列盘块中的信息。
数据交付方式:
数据交付、指针交付。
置换算法:
LRU、NRU、LFU等。
周期性写回磁盘
4.7.假脱机技术(SPOOLing)
外围机操作与CPU对数据的处理同时进行,这种在联机情况下实现的同时外围操作称为SPOOLing或假脱机操作。
SPOOLing系统的组成:
A.输入井和输出井
模拟脱机输入输出时的磁盘设备
B.输入缓冲区和输出缓冲区
缓和CPU和磁盘的速度不匹配
C.输入进程SPi和输出进程SPo
模拟外围控制机
SPOOLing设备的特点:
A.提高了I/O速度
B.将独占设备改造为共享设备
C.实现了虚拟设备功能
4.8.设备分配与回收
系统设备表(SDT)→设备控制表(DCT)→控制器表(COCT)→通道表(CHCT)
5.文件管理
5.1.文件系统基础
5.1.1.文件概念与逻辑结构
由创建者所定义的、具有文件名的一组相关元素的集合,可分为有结构文件和无结构文件两种。
在有结构文件中,文件由若干个相关记录组成;
而无结构文件则被看成是一个字符流。
5.1.2.文件的结构
顺序文件
顺序文件的最佳应用场合是在对诸记录进行批量存取的时候。
而缺点是如果想增加或删除一个记录都比较困难。
为此可以为顺序文件配置一个事务文件
索引文件
索引文件用于记录可变长度文件,为该文件配置一个索引文件。
索引顺序文件
将顺序文件中的所有记录分为若干个组,为之建立一张索引文件(甚至可以建立多重索引文件)。
这样对于有N个记录的顺序文件其平均查找需N/2个记录。
而索引顺序文件则需要
个记录。
5.1.3.目录结构
文件控制块
一个文件控制块就是一个文件目录项
索引节点
将文件控制块中的文件名与文件描述信息分开,单独形成一个称为索引结点的数据结构,简称为i结点。
目录项仅由文件名和指向该文件的i结点的指针构成。
单级
优点:
简单且能实现目录管理的基本功能。
缺点:
查找速度慢
不允许重名
不便于文件共享
两级
克服了单极目录的缺点
提高了检索速度
在不同的用户目录中,可以使用相同的文件名
不同用户可以使用不同的文件名来访问系统中的同一个共享文件。
当多个用户之间要合作去完成一个大任务时,且一个用户去访问其他用户的文件时这种隔离便成为一种缺点。
树形目录结构
优点(较二级目录):
查询速度更快
层次结构更加清晰
能够更加有效的进行文件的管理和保护
查找一个文件时需要按路径名逐级访问中间节点,增加了磁盘的访问次数。
图形目录结构
树形目录结构便于实现文件的分类共享,但不便于实现文件的共享,为此在树形目录结构的基础上增加了一些指向同一节点的有向边,使整个成为一个有向无环图。
5.1.4.文件共享
5.1.5.文件保护:
访问类型、访问控制
5.2.文件系统实现
5.2.1.文件系统层次结构
5.2.2.目录实现
5.2.3.文件实现
5.3.磁盘组织与管理
5.3.1.磁盘的结构
5.3.2.磁盘调度算法:
先来先服务(FCFS)、最短寻道时间优先(SSTF)、电梯算法(SCAN)
5.3.3.磁盘的管理