操作系统Chapter06-2(New)
操作系统慕课版第六章
操作系统慕课版第六章首先,第六章介绍了进程的概念和特征。
进程是程序在执行过程中的实体,它包括了程序的代码、数据和执行状态等信息。
进程具有独立性、动态性和并发性等特征。
独立性指的是每个进程都拥有独立的地址空间,不会相互干扰;动态性指的是进程的创建、执行和终止都是动态的过程;并发性指的是多个进程可以同时执行,通过时间片轮转等调度算法进行切换。
其次,第六章介绍了进程的状态和状态转换。
进程可以处于就绪、执行和阻塞三种状态之一。
就绪状态表示进程已经具备执行的条件,等待系统调度执行;执行状态表示进程正在执行指令;阻塞状态表示进程由于等待某些事件而暂时无法执行。
进程在不同状态之间的转换是由操作系统进行调度和管理的。
第三,第六章介绍了进程的创建和终止。
进程的创建是通过fork()系统调用来实现的,它会创建一个与父进程相同的子进程,但是子进程有自己独立的地址空间。
进程的终止可以通过exit()系统调用来实现,它会释放进程所占用的资源,并通知父进程。
此外,第六章还介绍了进程的执行顺序和进程控制块等相关内容。
第四,第六章介绍了进程调度的算法和策略。
进程调度是操作系统中非常重要的一项功能,它决定了进程的执行顺序和分配时间片的方式。
常见的进程调度算法有先来先服务(FCFS)、短作业优先(SJF)、最高优先级调度(HPF)、时间片轮转调度(RR)等。
不同的调度算法有不同的优缺点,可以根据实际情况选择合适的调度策略。
第五,第六章还介绍了进程同步和互斥的概念。
在多进程环境中,进程之间可能会共享资源,为了避免竞争条件和死锁等问题,需要进行进程同步和互斥的操作。
常见的同步和互斥机制有信号量、互斥锁、条件变量等。
这些机制可以保证进程之间的有序执行和资源的合理分配。
总结起来,第六章主要介绍了进程管理的相关内容,包括进程的概念和特征、进程的状态和状态转换、进程的创建和终止、进程调度的算法和策略,以及进程同步和互斥的概念。
通过学习这些内容,我们可以更好地理解和掌握操作系统中的进程管理机制,提高系统的性能和资源利用率。
操作系统课件2
操作系统课件2一、引言操作系统是计算机系统中最核心的软件之一,它负责管理和协调计算机硬件与软件资源,为用户提供高效、稳定、安全的运行环境。
本课件将重点介绍操作系统的基本概念、功能、类型以及进程管理等内容。
二、操作系统的基本概念1.操作系统的定义操作系统(OperatingSystem,简称OS)是一种系统软件,它负责管理和协调计算机硬件与软件资源,为用户提供便捷、高效、稳定的运行环境。
2.操作系统的功能操作系统的功能主要包括资源管理、进程管理、内存管理、文件管理、设备管理和用户接口等。
3.操作系统的类型根据操作系统的特点和应用场景,可以分为批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统等。
三、进程管理1.进程的概念进程是操作系统中执行程序的基本单位,它包括程序代码、数据和进程控制块(PCB)。
2.进程的状态进程的状态分为运行、就绪、阻塞和结束等四种。
3.进程控制进程控制主要包括进程的创建、终止、阻塞、唤醒、切换等操作。
4.进程同步与互斥进程同步是指多个进程之间按照一定的顺序执行,以保证数据的一致性和正确性。
进程互斥是指多个进程在同一时刻只能有一个进程访问共享资源。
5.进程通信进程通信是指多个进程之间交换数据和消息。
进程通信的方式有共享内存、消息传递和管道等。
四、内存管理1.内存分配内存分配是指操作系统为进程分配内存空间的过程。
内存分配的方式有固定分区、可变分区和页式管理等。
2.内存回收内存回收是指操作系统将已分配给进程的内存空间回收的过程。
内存回收的方式有立即回收和延迟回收等。
3.内存扩充内存扩充是指通过虚拟内存技术,将磁盘空间作为内存使用,以扩大内存容量。
4.内存保护内存保护是指操作系统对内存空间进行权限管理,防止进程非法访问其他进程的内存空间。
五、文件管理1.文件的概念文件是存储在辅助存储设备上的数据集合,它具有名称、类型、属性和内容等。
2.文件系统文件系统是指操作系统对文件进行组织、存储、检索和管理的软件模块。
操作系统ppt课件完整版
分时操作系统
分时操作系统采用时间片轮转的方式处理 多个用户的请求,保证了每个用户都能得 到及时的响应。
网络操作系统
网络操作系统具有强大的网络管理功能, 支持多种网络协议和网络服务,使得计算 机网络更加高效、可靠、安全。
实时操作系统
实时操作系统能够在规定的时间内对外部 输入的信息做出处理,并控制所有实时设 备和实时任务协调一致地工作。
动态分区
根据作业的大小动态地建 立分区,使分区大小正好 适应作业的需要。
分区的分配与回收
采用一定的算法将空闲分 区分配给请求者,当作业 完成后将作业占用的分区 回收。
页式存储管理
01 02
基本思想
将程序的逻辑地址空间划分为固定大小的页,而物理内存划分为同样大 小的页框。程序加载时,可将任意一页放入内存中任意一个页框,实现 离散分配。
中断处理的概念
中断处理是指当设备发出中断请求时,CPU暂 停当前任务并转去处理中断请求的过程。
ABCD
设备驱动程序的功能
包括设备的初始化、设备的打开和关闭、设备的 读写以及设备的状态查询等。
中断处理的流程
包括中断请求的响应、中断服务程序的执行以及 中断返回等步骤。
06
操作系统安全与保护
操作系统安全概述
THANKS
感谢观看
访问控制与安全策略
访问控制机制
操作系统通过用户认证、文件权限、访问控制列表(ACL)等机制 实现访问控制,防止未经授权的访问。
安全策略实施
操作系统应实施强制访问控制(MAC)、自主访问控制(DAC) 等安全策略,确保只有经过授权的用户才能访问敏感资源。
审计与监控
操作系统应具备审计和监控功能,记录用户的操作行为,以便事后分 析和追责。
操作系统原理第六章课件
设备驱动程序概念
设备驱动程序是操作系统中与硬件设备直接交互的软件,负责与硬件设备进行通信和控制 。
设备驱动程序功能
设备驱动程序的主要功能包括初始化设备、配置设备、控制设备的操作和响应设备的请求 等。
设备驱动程序与操作系统的关系
设备驱动程序是操作系统的一部分,通常由操作系统提供,用于支持各种硬件设备的操作 和管理。
进程阻塞与唤醒
进程因等待某个条件成立而阻 塞,等待条件成立后被唤醒。
进程切换
当一个进程的时间片用完时, 系统保存该进程的状态,恢复 下一个就绪态的进程的状态并
执行。
进程同步与互斥
临界区
同一时间只允许一个进程访问的资源或代码 段。
同步
协调多个进程的执行顺序,使得它们能按一 定的规则和条件执行。
互斥
两个或多个进程不能同时进入临界区。
通道控制方式下,硬件设备和通道之间建 立数据传输的通道,通道负责数据的传输 和管理。
设备分配与回收
01
设备分配策略
设备分配策略是指根据一定的规则和优先级,将设备分配 给请求设备的进程的过程。常见的设备分配策略包括先来 先服务、最短作业优先、优先级调度等。
02 03
死锁与活锁
在设备分配过程中,可能会出现死锁和活锁的情况。死锁 是指多个进程互相等待对方释放资源,导致所有进程都无 法继续执行。活锁是指进程在不断切换占用和释放资源的 过程中,始终无法满足自己的需求,导致进程无法继续执 行。
内存管理的主要目标是提高内存利用率,并确保 所有程序都能得到足够的内存空间。
内存管理需要处理内存的分配、回收、共享、保 护和扩充等问题。
内存分区管理
内存分区管理是一种将内存划分为若干个固定大小的分区,每个分区只能被一个进程使用的内存管理 方式。
操作系统-第6章(2)(修)
号已经装满一个索引块时,OS便为该文件分配另一
个索引块„„。再通过链指针将各索引块链接起来,
此时效率较低,可采用多级索引。
多级索引:将一个大文件的所有索引块(二级索引)
的地址放在另一个索引块(一级索引)中。
二级索引表的地址
2.多级索引分配
第二级索引 360 105 106 254 磁盘空间 0 1 2
回收栈中尚有空闲盘号数系统将回收盘块的盘块号放入空闲盘块号栈的顶部并执行空闲当栈中空闲盘块号数目已达100时表示栈已满将现有栈中的100个盘块号记入新回收的盘块中再将其某个系统采用成组链接法来管理磁盘的空闲空间目前磁盘的状态如下图所示
6.4 文件的物理结构
物理结构指一个文件在外存上的存储组织形式, 是从系统的角度来看文件。文件的外存分配是 以盘块为单位进行的。 采用不同的外存分配方式时,将形成不同的文 件物理结构。例如,在采用连续分配方式时的 文件物理结构,将是顺序式的文件结构;链接 分配方式将形成链接式文件结构;而索引分配 方式则将形成索引式文件结构。
序号
文件目录
图示
文件分配表(FAT)
缺点: 1 、 FAT 也要占用一定的存储空间,若盘的容量 较大(盘块很多),也可能占用较多的存储空间。 2、在进行文件访问时,可能在内存中装不下整 个 FAT ,这样就会造成若要读某块文件信息时,还 要读盘块映射表的操作,影响使用效率。
6.4.3 索引结构
缺点:
举例说明
假设一个文件需要9个盘块,一个盘块最多能放3个盘块号,试分析效率。
两种组织方案: (1)顺序连接各索引块
1#盘块
文件名 地址
0、 3、 4
0 4
1 5 9
2 6 10
操作系统第六章答案
操作系统第六章答案第六章⽂件管理1、何谓数据项、记录和⽂件P203 P204答:数据项:数据项是最低级的数据组织形式,是数据组中可以命名的最⼩逻辑数据单位,若⼲个基本数据项组成的。
记录:记录是⼀组相关数据项的集合,⽤于描述⼀个对象在某⽅⾯的属性。
⽂件:⽂件是指由创建者所定义的、具有⽂件名的⼀组相关元素的集合,可分为有结构⽂件和⽆结构⽂件两种。
在有结构的⽂件中,⽂件由若⼲个相关记录组成;⽽⽆结构⽂件则被看成是⼀个字符流。
⽂件在⽂件系统中是⼀个最⼤的数据单位,它描述了⼀个对象集。
2、⽂件系统的模型可分为三层,试说明其每⼀层所包含的基本内容。
P206图答:1、对象及其属性:⽂件、⽬录、硬盘(磁带)存储空间;2、对对象操纵和管理的软件集合:⽂件管理系统的核⼼部分;3、⽂件系统的接⼝:命令接⼝、程序接⼝;3、试说明⽤户可以对⽂件施加的主要操作有哪些。
P207答:1、最基本的⽂件操作:创建⽂件、删除⽂件、读⽂件、写⽂件、截断⽂件、设置⽂件的读/写位置;2、⽂件的“打开”和“关闭”操作;3、其它⽂件操作;4、何谓逻辑⽂件何谓物理⽂件P208答:逻辑⽂件:这是从⽤户观点出发所观察到的⽂件组织形式,是⽤户可以直接处理的数据及其结构,它独⽴于⽂件的物理特性,⼜称为⽂件组织。
物理结构:⼜称为⽂件的存储结构,是指⽂件在外存上的存储组织形式。
这不仅与存储介质的存储性能有关,⽽且与所采⽤的外存分配⽅式有关。
5、如何提⾼对变长记录顺序⽂件的检索速度P210答:对于变长记录的顺序⽂件,在顺序读或写时的情况相似,但应分别为它们设置读或写指针,在每次读或写完⼀个记录后,须将读或写指针加上Li。
Li 是刚读或刚写完的记录的长度。
6、试说明对索引⽂件和索引顺序⽂件的检索⽅法。
P211 P212答:在对索引⽂件进⾏检索时,⾸先是根据⽤户(程序)提供的关键字,并利⽤折半查找法去检索索引表,从中找到相应的事项;再利⽤该表项中给出的指向记录的指针值,去访问所需的记录。
《操作系统chapter》PPT课件_OK
32
9.2.4 网络加密技术
• 1.链路加密(Link Encryption) • 链路加密,是对在网络相邻结点之间通信线路上传输的数据进行加密。
结点1 P
E
Ke1
EKe1(P)
结点2
D
E
EKe2(P)
4
对各类资源的威胁
•
1. 对硬件的威胁
•
电源掉电 ;设备故障和丢失
•
2. 对软件的威胁
•
删除软件;拷贝软件;恶意修改
•
3. 对数据的威胁
•
窃取机密信息 ;破坏数据的可用性 ;破坏数据的完整性
•
4. 对远程通信的威胁
•
被动攻击方式;主动攻击方式
5
9.1.3 信息技术安全评价公共准则
• 1.CC的由来
21
Li = Ri - 1 Ri = f(Ri-1,Ki)Li-1
• 第三阶段:把经过16次迭代处理的结果(64位)的左32位与右32位互易位 置。
• 第四阶段:进行初始易位的逆变换。
22
2.非对称加密算法
非对称密码算法在对数据进行加密和解密 时,使用不同的密钥。每个用户都保存 着一对密钥,每个人的公开密钥都对外 公开。
• (4) 为了能对所收到的数字证明书进行解密,用户B须向CA机构申请 获得CA的公开密钥B。CA收到用户B的申请后,可决定将公开密钥B 发送给用户B。
31
• (5) 用户B利用CA的公开密钥B对数字证明书加以解密,以确认该数字 证明书确系原件,并从数字证明书中获得公开密钥A,并且也确认该 公开密钥A确系用户A
操作系统课件6_2
35
进程页表行数=程序空间页 数:4GB/8KB=512K页(行)
物理页号4B
进程页表大小=行数*物理页号字节数 =512K*4B=2MB,进程页表页数=2MB/8KB=256页
每个页表页(或页目录)行数:8KB/4B=2K行
6.3.2.2 多级页表
36
进程页表大但空,对进程页表采取动态分 配、动态伸缩的策略
7
程序大空间小时:相对于覆盖技术
不需要用户操心,而是自动透明实现 增加多道数 减少交换所需I/O量:以页为单位
程序多空间小时:相对于交换技术
即使不存在上述两种空间不够的情况(内存空间足 够大),虚存技术也可以减少装入I/O量
6.3.2.1 基本原理
8
缺点:
地址映射更复杂:缺页中断处理和页淘汰 减慢了程序运行的速度
内存空间
所需表目
15
需要两个表目
页表:用于记录进程逻辑页面与内存物理页 面之间的对应关系,每个进程一个。 总页表: 记录物理页面的使用情况。
逻辑页号: 0 1 2 3
物理页号 15 22 16 32
由于逻辑页号连续, 可将其 省略对一个给定的逻辑页 号,将其与页表的起始地址 相加便可得到对应的物理 页号在页表中的入口地址
由于逻辑页号在快表中不再连续, 因而不能省略
系统一组:
逻辑页号 ...
页架号 ...
p ...
f ...
地址映射
20
需将逻辑地址变换成物理地址, 完成如下映射关系: (p,d)→(f, d),p为逻辑页号,d为页内地址, f为页架号
地址映射(使用快表)
操作系统:第6章
GET和COPY如何才能协调一致地工作呢,图6-4 描述了它们之间应该具有的安排。在GET读了一个记 录到输入缓冲区R后,就给COPY发送一个消息,告诉 它R中已经有记录可以拷贝了,然后自己暂停下来, 等待COPY发来“拷贝结束”的消息。只有接到这个 消息,GET才能去做下一步的工作。对COPY而言, 一直处于等待。只有在接收到GET发送来的“可以拷 贝”的消息后,才能工作,将R中的记录拷贝到输出 缓冲区T中。然后就向GET发送“拷贝结束”的消息, 随之又等待GET发来消息。
进程之间存在着哪些制约关系,它们是如何产生 的,怎样处理这些关系,才能确保进程执行的正确性, 这些是本章要解决的主要问题。
本章将引入操作系统中的重要概念:信号量以及 在信号量上的P、V操作。利用信号量以及在信号量上 的P、V操作,可以很好地解决进程间的互斥与同步关 系,保证进程程序的正确执行。
本章着重讲述四个方面的内容。 (1)进程间的两种制约关系——互斥与同步。 (2)正确处理互斥与同步的方法——信号量以及 在信号量上的P、V操作。 (3)死锁以及解决死锁的途径。 ,凡是牵扯到数据、队列、缓冲区、 表格和变量等任何形式的共享资源时,都很容易出现 类似的这种“与时间有关的错误”。为了避免错误的 发生,关键是要找到一种途径,来阻止多于一个进程 同时使用它们。也就是说,要有一种办法,保证对它 们的使用是互斥进行的。
为了下面讨论方便,在此把那些可以共享的资源 (文件、队列、缓冲区、表格、变量等)统称为临界 资源或共享变量。于是,与一个共享变量(或临界资 源)交往的多个进程,为了保证它们各自运行结果的 正确性,当其中的一个进程正在对该变量(或临界资 源)进行操作时,就不允许其他进程同时对它进行操 作。进程间的这种制约关系被称为“互斥”。
操作系统第6章
第六章 文 件 管 理
从逻辑结构上讲,文件可以是记录式文件或流式文件。 一个记录式文件由若干逻辑记录所组成。记录是顺序排
列且相关的一组最小信息项(字或字节),它是文件存取的 基本单位。记录可由记录键标识或按顺序编号,记录键可以 是单个字符或字符串。 流式文件即无记录文件,它直接由字符序列组成。从另 一角度讲,流式文件也可看作是记录式文件的一个特例,即 只含一个无标识记录的文件。
第六章 文 件 管 理
(2)为了避免保存过长的共享用户名单,通常采用 对用户类规定存取权限的方法。实际中常把用户自然分 成三类: ·文件主 ·文件主的同组(合作)用户 ·其他用户
第六章 文 件 管 理
图6-11 存取控制表
第六章 文 件 管 理
4.2 口令
另一种比较简单的方法是为文件设置访问口令。口令 由文件主在创建文件时规定并存于FCB中,以后任何人 都凭口令访问该文件。若文件主允许某用户共享他的文 件,可告诉他口令。这样实际上把用户分成两类:口令持 有者与非口令持有者。只允许口令持有者共享文件,而存 取权限不再分类,即凡口令持有者都具有相同的权限。同 样,只有文件主有权改变口令。
第六章 文 件 管 理
1.3 文件系统的功能及用户接口
文件系统通常包含下述功能: (1)实施文件存贮空间的分配与回收。 (2)实现文件名到文件空间的映射。 (3)提供文件共享能力以及保护与保密措施。 (4)实现用户要求的各种文件操作,如建立、打开、读、 写等。
第六章 文 件 管 理
下面列出一些常用的文件操作命令: ·建立文件:按名创建一个新文件 ·撤销文件:删除指定文件,释放所占用的存贮空间 ·打开文件:请求访问指定文件 ·关闭文件:结束访问指定文件 ·读文件:将一文件的全部或局部读入内存 ·写文件:将内存区中的信息送入文件 ·删除记录:删除记录式文件的某个记录
《操作系统》第6章 文件系统2
6.读文件 6.读文件 读文件就是把文件中的某些数据读入内存的工作区.通 过读指针,将位于外部存储介质上的数据读人到内存缓 冲区. 在UNIX中读文件的系统调用格式如下: UNIX中读文件的系统调用格式如下: nr=read(fd,buf, nr=read(fd,buf,count); fd是文件描述符,打开文件时系统返给用户的句柄; fd是文件描述符,打开文件时系统返给用户的句柄; buf是用户缓冲区首地址;nr是实际读入的字节数, buf是用户缓冲区首地址;nr是实际读入的字节数, count本次要求传送的字节数. count本次要求传送的字节数. 7.写文件 7.写文件 当用户添加和修改文件信息时,通过写指针,用此命令 将信息写入文件. 在UNIX中写文件的系统调用格式如下: UNIX中写文件的系统调用格式如下: nw=write(fd,buf, nw=write(fd,buf,count); fd是文件描述符,打开文件时系统返给用户的句柄; fd是文件描述符,打开文件时系统返给用户的句柄; buf是用户缓冲区首地址;nw是实际写入的字节数, buf是用户缓冲区首地址;nw是实际写入的字节数, count本次要求传送的字节数. count本次要求传送的字节数. 9
操作系统原理
Principles of Operating System
6.3.5 目录操作
⑴创建目录 目录是多个文件目录项的集合,通常以目录文件形式存储在外部 存储介质中.创建目录也就是在外部存储介质中创建一个目录文 件以备存取文件目录项信息. ⑵删除目录 删除目录也就是从在外部存储介质中删除一个目录文件.请读者 注意删除一个非空的目录会删除其中的所有子目录与文件.所以 有些操作系统不允许删除非空的目录,只有当目录为空时,才能 删除. ⑶文件检索 要实现用户对文件的按名存取,这就涉及到文件目录的检索.. ⑷打开目录 如果要用的目录不在内存中,应从外存读入相应的目录文件. ⑸关闭目录 当所用目录使用结束后,应关闭目录以释放内存空间.
Chp-6 操作系统层 -2 操作系统
21
分区选择算法
Requests come in for blocks of the following sizes: 1000, 25, 780, 1600, and 325
A: 1000 B: 700
C: 750
D: 1500
E: 300 F: 350
对于一个新程序,应该分配给 它哪个分区呢? 最先匹配? 最佳匹配? 最差匹配?
31
进程管理
只有一个CPU,所以只有一套CPU寄存器,这些寄存器存放当 前执行的进程的值 每一个进程进入运行状态:
当一个进程进入运行状态
当前正在运行的进程的寄存器值将被存入它的 PCB
新运行的进程的寄存器值将被载入CPU 这个信息交换被称为一个上下文切换
32
CPU 调度
CPU 调度 确定哪一个处于准备状态的进程移入运行状态的行 为
12
内存管理
操作系统必须采用以下技术: 跟踪一个程序驻留在内存的什么位置以及是如何驻留的 把逻辑程序地址转换成实际的内存地址
逻辑地址 对一个存储值的引用,是相对于引用它的程序的 物理地址 主存储设备中的真实地址
13
内存管理
Program 1: sum is assigned memory location 23, a location relative to Program 1
如果 Prog. 1 在运算并且需要 逻辑地址2566,那么实际地 址怎么计算?
图 10.7 页式内存管理法
24
页式内存管理
逻辑地址通常被表示为<页编号, 偏移量> 页编号 页面大小除逻辑地址得到的商 (比如1024) 偏移量
页面大小除逻辑地址得到的余数
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6.5.1.2 内存页面分配策略(静态策略)
1. 平均分配
如内存128页,进程25个,每个进程5个页面 2. 按进程长度比例分配 pi共si个页面;S=si;内存共m个页面 ai=(si/S)m
3. 按进程优先级比例分配
4. 按进程长度和优先级别比例分配 静态策略存在问题: (1)没有反映程序结构; (2)没有反映程序在不同时刻的行为特性。
实现:Timing, stack ( remark: unusual stack)
Whenever a page is referenced, it is removed from the stack and put on the top,
Bottom is LRU page.
例子:reference string: 4, 7, 0, 7, 1, 0, 1, 2, 1, 2, 7, 1, 2 Stack before a
9. 改进时钟淘汰算法
算法: 在时钟算法基础上,每个页面增设置一个修改 位 , 在内存用链接指针链成一个循环队列. 当页面被访问,访问位置 1;被修改页面,修改位置1; 1. 寻找r=0 and m=0. 2. 寻找r=0 and m=1; 扫过修改成r=0; 3. 再次执行(1); Page 9 r=0 4. 再次执行(2)
虚拟存储器系统(Virtual Memory System)实 现的理论基础。
i.e. 许多作业在每次运行时,并非用到其全 部程序,那么可以仅把作业的一部分装入内存 就能运行.
局限性表现
时间局限性:如果程序中的某条指令一旦执行, 则不久的将来该指令可能再次被执行;如果某 个存储单元被访问,则不久以后该存储单元可 能再次被访问。产生时间局限性的典型原因是 在程序中存在着大量的循环操作。
× × × × × × × × × × × × × × × 缺页故障 15次。 Belady异常: 3个页框页故障率=9/12,4个页框:页故障率=10/12. Belady异常—分得的页面数大、缺页故障反而增加。
Belady异常:
如果访问的页面序列:1,2,3,4,1,2,5,1,2,3,4,5 进程分配3个页架:
b:
l
b
逻辑页号
页架 号
...
外存 内外 块号 标识
...
Physical address
cp
+
p
f
b‟
...
i
页架号 页内地址
...
... b
f
d
l
... PCB 逻辑地址
p
f
逻辑页 号
...
页架号 访问权 限
...
修改标 识
p ... p d
f
a ...
m
虚拟页式存储系统要解决的问题
每个进程分配多少内存页架? 外存块如何分配? 在外存的页面何时调入内存? 如果内存不够,如何淘汰内存中的页面? 其他问题,如颠簸问题等?
淘汰最近一段时间未用到的。 实现:每页增加一个访问标志(引用位,修改位); 对页面写操作修改位置1, 读操作引用位置1; 定时对引用位清0; 淘汰时选择顺序: (0,0), (0,1), (1,0), (1,1)。 LRU算法的近似: Reference string: 2, 3, 5, 6, 4, 2, 5, 6, 7, 5, 6, 8,
实现:
记数器,调入清0,访问增1,淘汰选取最小者。
6. 最频繁使用的先淘汰(MFU)
淘汰使用次数最多的。 依据: 使用多的可能已经用完了。 Suffer: 程序有些成分是在整个程序运行中 都使用的。
7.二次机会淘汰算法
思想:淘汰装入最久且最近未被访问的页面。 实现:链表数据结构。当前被引用的页面访问位设置为 1,且移动链表的最后面。 例如:需要引用页面2,但该页面不在内存中,因此需 要淘汰一个页面。假设该进程分配8个页架。
集美大学精品课程建设
计算机操作系统
第六章 存储管理(2)
lxhong@
6.4 外存资源管理
Swap 空间 File 空间 输入井
输出井
外存空间划分
静态等长,2i, 称为一块(block),块是外存分配的 基本单位,也是I/O传输的基本单位。 空闲块链(慢) 空闲块表(UNIX) 字位映像图
• 效率最高,not feasible。
6 0 1 6 6 6 0 0 1
2 2 0 1
0 2 0 1
3 2 0 3
×
0 2 0 3
4 2 4 3
×
2 2 4 3
3 2 4 3
0 2 0 3
×
2 2 0 3
1 2 0 1
×
2 2 0 1
0 2 0 1
1 2 0 1
6 6 0 1
×
0 6 0 1
1 6 0 1
× × × ×
缺页故障9次。
2. 先进先出(FIFO)
淘汰最先调入的。 实现:队列
依据: 先进入的可能已经使用完毕。但: 有些代码 和数据可能整个程序运行中用到。
6 0 1 2 0 3 0 4 2 3 0 2 1 2 0 1 6 0 1
6 6 6 2 2 2 2 4 4 4 0 0 0 0 0 0 6 6 6 0 0 0 0 3 3 3 2 2 2 2 1 1 1 1 1 0 0 1 1 1 1 0 0 0 3 3 3 3 2 2 2 2 2 1
p‟ ...
…
(0,1) …
...
...
{r,w,e} ... ... (0,1)
对快表的改进: 逻辑页号 页架号
... ..Leabharlann …访问权限 修改标志...
p ...
f
... …
{r,w,e}
...
(0,1)
地址映射过程见p199
地址映射过程
①
②
地址映射过程
① ②
虚拟页式存储管理的地址映射过程
6/1 3/1 4/0 8/0 5/1 9/0 0/0 1/1
3/1
4/0
8/0
5/1
9/0
0/0
1/1
6/0
4/0
8/0
5/1
9/0
0/0
1/1
6/0
3/0
页面4最久未被访问,淘汰,用页面2替代,设访问位为1
8/0
5/1
9/0
0/0
1/1
6/0
3/0
2/1
8. 时钟淘汰算法
LRU是一种较好的淘汰算法, 但需要较多的硬件 支持,实现困难. 算法: 每个页面设置一个访问位 , 在内存用链接 指针链成一个循环队列.
before page fault, 将要访问时调入(根据 程序顺序行为, 不一定准)
预调必须辅以请调。
6.5.1.5 淘汰算法(replacement algorithm)
用于:页淘汰、段淘汰、快表淘汰。 Objective: lowest page-fault rate. example: 3 page frames, access series
2
0
3
2
4 0
3
0 2
1
0 6
1 1 1 1 1 1 1 1 1 3 3 3 3 3 3 3 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
6 6 6 2 2 2 2 2 2 4 4 4 4 2 2 2 6
× × × 缺页故障9次。 × × × × × ×
4. 最近不用的先淘汰(not used recently-NUR)
2 1 0 7 4
Stack before b
7 2 1 0 4
a
b
最近最少使用淘汰算法(LRU)
6 0 1 2 0 3 0 4 2 3 0 2 1 2 0 1 6 0 1 6 6 6 2 2 2 2 4 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 3 1 1 1 1 1 1 1 1 1 1 3 3 3 2 2 2 2 2 2 2 2 6 6 6 × × × × × × × × × × ×
m=0 Page8 r=1,m=1 Page10 r=1,m=1 Page6 r=0 m=1 Page21 r=1 m=1 Page 16 r=1,m=0
6, 0, 1, 2, 0, 3, 0, 4, 2, 3, 0, 2, 1, 2, 0, 1, 6, 0, 1
1. 最佳淘汰算法(OPT--optimal) 淘汰将来最长时间以后才用到的。 效率最高, not feasible。
1. 最佳淘汰算法(OPT--optimal)
• 淘汰将来最长时间以后才用到的。
缺页故障 11次。 OPT9次; FIFO15次;
比较OPT和LRU算法
OPT算法 6 0 1 2 0 3 0 4 2 3 0 2 1 2 0 1 6 0 1 6 6 6 2 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 0 0 0 0 0 0 4 4 4 0 0 0 0 0 0 0 0 0 1 1 1 3 3 3 3 3 3 3 1 1 1 1 1 1 1 × × × × × × 缺页故障9次。 LRU算法 1 0 6 1 0 2 1 × × × ×
6.5.1.3 外存块的分配策略
1. 静态分配
外存保持进程的全部页面:
优点:速度快--淘汰时不必写回(未修改情况)
缺点:外存浪费
2. 动态分配
外存仅保持进程不在内存的页面: 优点:节省外存 缺点:速度慢--淘汰时必须写回
6.5.1.4 页面调入时机
1. 请调(demand paging) upon page fault, 发生缺页中断时调入。 影响进程推进速度。 2. 预调(prepaging)