已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第八章 08软件工程一班裴晓禹虚拟内存:virtual memory1:硬件和控制结构:hardware and control structures1:一个进程可以被换入或换出主存,使得进程在执行过程中的不同时刻占据不同的区域。进程中所有的存储器访问都是逻辑地址,这些逻辑地址在运行时动态地被转换成物理地址。2:一个进程可以划分成许多块,在执行过程中,这些块不需要连续地位于主存中。3:在进程的执行过程中,该进程的所有页和所有段不需要都在主存中。2:程序的执行:execution of a program1:操作系统将一些程序的块带到主存。2:进程执行中的任何时候都在主存中的部分被定义成进程的常驻集。3:当处理器需要访问一个不在主存中的逻辑地址,则会产生一个中断,说明产生了内存访问故障。操作系统将被中断的进程置于阻塞状态,并取得控制。4:为了能继续执行这个进程,操作系统要把包含引发故障的逻辑地址和进程块取进主存1:操作系统产生一个磁盘IO读请求。2:产生IO请求后,在执行磁盘IO,期间操作系统可以分派另一个进程运行。3:一旦需要的块被取进主存,则产生一个IO中断,控制被交回操作系统,而 操作系统把由于缺少该块而被阻塞的进程置回到就绪态。3:分割进程的优点:advantages of breaking up a process1:在主存中保留多个进程:1:对任何特定的进程都仅仅装入它的某些块,所以有足够的空间放置更多的进程 2:在任何时刻这些进程中都能至少有个处于就绪态,于是处理器得到更有效的利用2:进程可以比主存的全部空间还大。4:进程的种类:types of memory 1:实存储器real memory:由于一个进程只能在一个主存中执行,因此这个存储器称作实存储器。2:虚拟内存virtual memory:程序员和用户通常感觉到一个更大的内存,通常它被分配到磁盘上,称作虚拟内存。 虚存允许更有效的多道程序设计,并解除了用户与主存之间没有必要地紧密约束。5:系统抖动(颠簸):thrashing1:当操作系统读取一块时,它必须把另一块扔出。2:处理器的大部分时间都用于交换块,而不是执行指令。6:局部性原理:principle of locality1:局部性原理描述了一个进程中程序和数据应用的集簇现象。2:很短的时间内仅需要访问进程的一部分块是合理的。3:可以对在不远的将来可能会访问的块进行猜测。4:虚拟内存比较实用而且有效。7:虚拟内存需要的支持:support needed for virtual memory1:必须有对采用的分页或分段方案的硬件支持。2:操作系统必须有管理页或段在主存和辅助存储器之间的移动的软件。8:分页:paging1:通常每个进程都有一个唯一的页表。2:每个页表项(PTE)包含有与主存中的页相对应的帧号。l 由于一个进程可能只有一部分在主存中,因而每个页表项需要一位(P)来表示它所对应的页当前是否在主存中。3:当考虑到基于分页的虚拟内存方案时也同样需要页表。PS:MMS将virtual address在硬件配合下转成physical address9:虚拟地址和页表项:virtual address and page table entry10:页表项:(PTE)11:页表中的修改位:modify bit in page table1:页表项中需要一个控制位:修改为。表示相应页的内容从上一次装入主存中到现在是否已经改变。2:如果没有改变,则需要把该页换出时,不需要用页框中的内容更新该页。12:地址的翻译(映射):address translation(mapping)13:地址翻译(联系):address translation (contact)14:页表:(page tables)1:页表项可能占据大量的主存。2:页表也保存在虚存中。3:当一个进程正在运行的过程中,它的页表至少有一部分在主存中。15:两级层次32位页表:two-level scheme for 32-bit address16:两级层次页表:two-level scheme1:2:17:逆向页表:inverted page table1:逆向页表的各种变体已用于PowerPC,UltraSPARC,和IA-64IA-64体系结构中。2:虚拟地址的页号部分使用一个简单的散列函数映射到哈希表中。3:哈希表包含一个反向表的指针,而反向表中包含页表项。4:不论有多少进程、支持多少虚拟页、页表都只需要实存中的一个固定的部分。18:逆向页表的内容:inverted page table1:页号:page number2:进程标识符:process identifier3:控制位:control bits4:链指针:chain pointer19:转移后备缓冲器:translation lookaside buffer(简称:TLB)1:给定一个虚拟地址,处理器首先检查TLB。2:如果需要的页表项在其中(命中“TLB”),则检索页框并形成实地址。3:如果没有找到需要的页表项(TLB未命中),则处理器用页号检索进程页表,并检查相应的页表项。4:如果”存在位”已置位,则该页在主存中,处理器从页表项中检索页框号以形成实地址.如果“存在位”没有置位,则表示需要的位不在主存中,这时将产生一次存储器的访问故障,页错误page fault5:处理器同时更新TLB,使其包含这个新的页表项。20:转移后备缓冲器的用法:use of a translation lookaside buffer 命中 装入页 页表 未命中 页框号页错误21:分页和转移后备缓冲器的操作:operation of paging and translation lookaside buffer 返回故障指令页错误处理例程 访问页表OS通知CPU通知从磁盘读取该页该页是否在主存中CPU激活该IO硬件 更新TLB该页从磁盘传送到主存中CPU产生物理地址执行页替换页表更新22:页表项的直接查找和关联查找:direct versus associative lookup for page table entries23:转移后备缓冲器和高速缓冲操作:translation lookaside buffer and cache operationTLB操作 虚拟地址 页号 偏移量 未命中 命中操作 实地址 命中 值标记 其余部分 未命中页表主存 值24:页尺寸:page size1:页越小,内部碎片的总量越少。2:页越小,每个进程需要的页的数目就越多。3:每个进程需要的页的数目就越多就意味着更大的页表。4:大的页表就意味着很大部分的页表在虚存中。5:二级内存用于大块数据的有效传递,所以大的页表较好。6:如果页尺寸非常小,那么每个进程在主存中有较多数目的页。7:一段时间后,内存中的页都包含有最近访问的部分,因此,页错误率比较低。8:当页尺寸增加时,每一个页包含的单元和任何一个最近访问过的单元越来越远。25:页型的分页行为:typical paging behavior of a program 页大小分配的页框数目P表示整个进程的大小,W表示工作集的大小,N表示进程中的总页数。26:页面大小的例子:example page sizes27:分段:segment1:段的大小可能是不相等的,并且是动态地。2:简化不断增长的数据结构的处理。3:允许进程独立的改变或重新编译,而不要求整个集合重新链接和重新加载。4:有助于进程间的共享。5:有助于保护。28:段表:segment tables1:每个进程都有自己的段表,当所有的段都载入到主存的时候,为该进程创建一个段表并载入主存2:每个段表项包含相应段在主存中的起始地址和段的长度。3:由于一个进程可能只有一部分段在主存,因而每个段表项中需要有一位表明相应的段是否在主存中4:段表项需要修改位用于表明相应的段从上一次被装入主存到目前为止其内容是否被改变。29:段表表项:Segment table entries30:分段系统中的地址转换:address translation in segmentation system31:分页和分段的结合:combined paging and segmentation1:分页对程序员是透明的。2:分段对程序员是可见的。3:每个段依次划分成许多固定大小的页。32:分段分页相结合的系统中的地址转换:address translation in a segmentationpaging system 段表指针33:段之间的保护关系:protection relationship between segmentsNot access allowed:不允许访问 branch instruction(not allowed): 跳转指令(不允许) reference to data(allowed):访问数据(允许)reference to data(not allowed):访问数据(不允许)34:读取策略:fetch policy1:读取策略确定一页何时取入主存。2:对于请求式分页,只有当访问到某页中的一个单元时才将该页取入主存。l 当一个进程第一次启动时,会出现一阵大量的页错误。3:预约式分页读取的页大多数都没有引用到,这个策略师低效的。l 预约式分页利用了大多数辅存设备(如磁盘)的特性,这些设备有寻道时间和合理时间的延迟。如果一个进程的页被连续存储在辅存中,则一次读取许多连续的页比隔一段时间读取一页要更有效。35:放置策略:placement policy1:防治策略决定一个进程驻留在实存中的什么地方。2:不会翻译3:36:替换策略:replacement policy1:应该换出哪一页?2:移出最近最不可能访问的页3:大多数策略都基于过去的行为来预测将来的行为。37:页框锁定:frame locking 1:如果一个页框被锁定时,之前保存的该页框中的页就不能被替换。2:大部分操作系统内核就保存在锁定的也框中。3:大部分重要的控制结构就保存在锁定的也框中。4:IO缓冲区就保存在锁定的也框中。5:锁定是通过给每个帧关联一个lock位实现的。38:替换页的基本算法:1:最佳:optimal policy(OPT)2:最近最少使用:lease recently used(LRU)3:先进先出:first-in,first-out(FIFO)4:时钟:clock 39:最佳:optimal policy1:选择替换下次访问距当前时间最长的那些页。2:但是由于它要求操作系统必须知道将来的事件,显然这是不可能实现的。40:最近最少使用:lease recently used(LRU)1:替换主存中上次使用距当前最远的页。2:根据局部性原理,这也是最近最不可能访问到的页。3:实现的方法是给每一页添加一个最后一次访问的时间标签,并且必须在每次访问存储器时,不论访问的是指令还是数据,都更新这个标签。41:先进先出:first-in,first-out(FIFO)1:把分配给进程的页框看作是一个循环缓冲区。2:按循环方式移动页。3:这是一种实现起来最简单的页替换策略。4:替换驻留在主存中时间最长的页。5:这些被替换的页可能很快被重新调用。42:时钟:clock1:最简单的时钟策略需要给每一个页框关联一个附加位,成为使用位。2:当某一页首次装入主存中时,该页框的使用位设置为1.3:当该页随后被访问到时,它的使用位也被置为1.4:当需要替换一页时,操作系统扫描缓冲区,以查找使用位位置为0的一页框。5:在查找替换的时候,扫描过的使用位是1的都被置为0.43:四种页替换算法:four page-replacement algorithms44:关于时钟策略的一个例子:example of clock policyFirst frame in circular buffer of Frames that are candidates for replacement用于替换的候选页框循环缓冲区中的第一页框State of buffer just prior to a page replacement 在替换一页前缓冲区的状态。State of buffer just after the next page replacement下一页被替换后缓冲区的状态45:固定分配、局部页替换算法的比较:comparison of placement algorithmsPage faults per 1000 references每1000次访问的页框Number of frames allocated:分配的页框的数目46:时钟页替换算法:the clock page-replacement algorithm47:页缓冲:page buffering为了提高性能,被替换出的页不是被丢弃,而是被分配到以下两个表之一:1:如果未被修改,则分配到空闲页表。2:如果修改了,则分配到修改页表。48:驻留集大小:resident set size1:固定分配策略(fixed-allocation)1:为一个进程在主存中分配固定数目的页框用于执行时使用。2:一旦在进程执行过程中发生页错误,该进程的一页就必须它他所需要的页替换。2:可变分配次略(variable-allocation)l 允许分配给一个进程的页框在该进程的生命周期中不断地发生变化。49:固定分配,局部范围:fixed allocationg,local scope1:对于固定分配策略,需要事先确定分配给该进程的总页框数。2:如果分配的过小,则会产生很高的页错误率,导致整个多道程序设计系统运行缓慢。3:如果分配的过大,则主存中只能有很少的几个程序,处理器会有很多空闲时间,并且把大量的时 间花费在交换上。50:可变分配,全局范围:variable allocation,global scope1:这种组织是最容易实现的。2:它被许多操作系统采用。3:在典型情况下,操作系统还维护着一个空闲页框列表。4:当发生一次页错误时,一个空闲页框被添加到进程的驻留集中,并且该页被读取。5:当没有空闲页框可用时,操作系统必须选择一个当前位于主存的页框进行替换。51:可变分配,局部范围:variable allocation,local scope1:当一个新进程被装入主存时,根据应用类型、程序要求或其它原则,给它分配一定数目的页框作 其驻留集,使用预约式分页或请求式分页填满这些页框。2:当发生一次页错误时,从产生页错误的进程的驻留集中选择一页用于替换。3:不时地重新评估进程的页框分配情况,增加或减少分配给它的页框,以提高整体的性能。52:清除策略:cleaning policy1:请求式清除:只有当一页被选择用于替换时才被写回辅存。2:预约式清除:将这些被修改的多个页在需要用到他们所占据的页框之前成批的写回辅存。3:一个比较好的方法是结合页缓冲技术:1:通过页缓冲,被替换页可以防止在两个表中:修改和未修改。2:修改表中的页可以周期性地成批写出,并移动到未修改表中。3:未修改表中的一页或者应为被访问到而被回收,或者当它的页框分配给另一页时被淘汰。53:加载控制:load control1:加载控制涉及到确定驻留在主存中的进程数目,这成为多道程序设计级。2:如果某一时刻驻留的进程太少,则所有进程同时处于被阻塞状态的概率可能比较大,因而有许多时间花费在交换上。3:如果驻留的进程太多,则平均每个进程的驻留集大小将会不够用,就会频繁的发生错误,导致抖动54:多道程序设计级:multiprogrammingProcessor utilization:处理器使用率Multiprogramming level:多道程序设计级and performance test copies of the record. If necessary, review should be carried out; 4) for spring hangers (included simple spring, hangers and constant support hangers) it should also be recognized as setting and locking of loads. 5) check the surface quality, folded layering and without cracks, rust and other defects. 5) after completion of the test and control drawing number one by one, by series baled. Color alloy steel parts, the parts marking installation location and rotation about the direction you want. 7.3.14. hangers installation 7.3.14.1 hanger layout a. a clear design of hanger should be installed strictly in accordance with the drawings and designs shall not be installed wrong, missing, etc. B. own arrangement of piping support and hanger set and selection should be based on comprehensive analysis of general layout of piping systems; cold installation of steam pipe with particular attention reserved for compensation of thermal expansion displacement and orientation. C. support systems should be rational to withstand pipe loads, static load and incidental load; reasonable piping
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年福州辅警协警招聘考试真题附答案详解
- 2025年白城辅警协警招聘考试备考题库及1套完整答案详解
- 2025年白山辅警招聘考试真题带答案详解
- 2025年白银辅警招聘考试真题附答案详解(满分必刷)
- 2025年渭南辅警协警招聘考试备考题库含答案详解(突破训练)
- 2025年莆田辅警招聘考试题库及完整答案详解一套
- 2025年黑河辅警招聘考试题库附答案详解(能力提升)
- 2025年湛江辅警协警招聘考试备考题库附答案详解(达标题)
- 2025年郴州辅警招聘考试真题及答案详解1套
- 2025年福建辅警协警招聘考试备考题库完整答案详解
- 美国总统选举流程
- 2025年国家开放大学(电大)《生命科学导论》期末考试复习试题及答案解析
- 婚姻家庭咨询师培训试题及答案
- 空气能中央热水施工方案
- 2025年初级会计实务(政府会计)真题及答案
- 安全生产台账的管理制度
- 2025年监理工程师继续教育机电安装考试试题及答案
- 医药代表新员工
- 医疗技术安全培训课件
- ICU获得性衰弱课件
- 消毒供应中心不良事件案例
评论
0/150
提交评论