《计算机操作系统第八章课件剖析讲解学习.ppt》由会员分享,可在线阅读,更多相关《计算机操作系统第八章课件剖析讲解学习.ppt(37页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、计算机操作系统第八章课件剖析连续分配的主要优缺点连续分配的主要优缺点连续分配的主要优点如下:(1)顺序访问容易。(2)顺序访问速度快。连续分配的主要缺点如下:(1)要求有连续的存储空间。(2)必须事先知道文件的长度。(3)插入删除不便(4)动态增长困难8.1.2 链接组织方式链接组织方式1.隐式链接隐式链接2.显式链接显式链接8.1.3 FAT技术8.1.4 NTFS的文件组织方式8.1.5 索引组织方式索引组织方式1.单级索引组织方式单级索引组织方式 链接分配方式虽然解决了连续分配方式所存在的问题,但又出现了另外两个问题,即:(1)不能支持高效的直接存取。要对一个较大的文件进行直接存取,须首
2、先在FAT中顺序地查找许多盘块号。(2)FAT需占用较大的内存空间。索引块:分配给文件的所有盘块号都记录在索引块中 支持直接访问,不产生外部碎片2.多级索引组织方式多级索引组织方式大文件可采用多级索引分配方式两级索引分配盘块1KB,盘块号4字节,一索引块存放256盘块,二级索引包含的盘块总数是256*256=64K个,文件容量=64k*1k=64M3.增量式索引组织方式UNIX System V索引结点,共iaddr(0)-iaddr(12)13个地址项。假如每个盘块的大小为 4 KB,盘块号占4字节。(1)直接地址。为了提高对文件的检索速度,在索引结点中可设置10个直接地址项,即用iaddr
3、(0)iaddr(9)来存放直接地址。换言之,在这里的每项中所存放的是该文件数据的盘块的盘块号。假如每个盘块的大小为 4 KB,当文件不大于40 KB时,便可直接从索引结点中读出该文件的全部盘块号。(2)一次间接地址。对于大、中型文件,只采用直接地址是不现实的。为此,可再利用索引结点中的地址项iaddr(10)来提供一次间接地址。这种方式的实质就是一级索引分配方式。图中的一次间址块也就是索引块,系统将分配给文件的多个盘块号记入其中。在一次间址块中可存放1K个盘块号,因而允许文件长达4 MB。(3)多次间接地址。当文件长度大于4 MB+40 KB时(一次间址与10个直接地址项),系统还须采用二次
4、间址分配方式。这时,用地址项iaddr(11)提供二次间接地址。该方式的实质是两级索引分配方式。系统此时是在二次间址块中记入所有一次间址块的盘号。在采用二次间址方式时,文件最大长度可达4 GB。同理,地址项iaddr(12)作为三次间接地址,其所允许的文件最大长度可达4TB。8.2 文件存储空间的管理文件存储空间的管理以盘块为单位为新文件分配存储空间以盘块为单位为新文件分配存储空间8.2.1 空闲表法和空闲链表法空闲表法和空闲链表法1.空闲表法空闲表法连续分配连续分配1)空闲表)空闲表序号第一空闲盘块号空闲盘块数124293315542)存储空间的分配与回收 空闲盘区的分配与内存的动态分配类似
5、,同样是采用首次适应算法、循环首次适应算法等。例如,在系统为某新创建的文件分配空闲盘块时,先顺序地检索空闲表的各表项,直至找到第一个其大小能满足要求的空闲区,再将该盘区分配给用户(进程),同时修改空闲表。系统在对用户所释放的存储空间进行回收时,也采取类似于内存回收的方法,即要考虑回收区是否与空闲表中插入点的前区和后区相邻接,对相邻接者应予以合并。2.空闲链表法空闲链表法(1)空闲盘块链。(2)空闲盘区链。8.2.2 位示图法位示图法1.位示图位示图利用二进制的一位表示磁盘盘块使用情况。利用二进制的一位表示磁盘盘块使用情况。0闲闲1分分2.盘块的分配盘块的分配(1)顺序扫描位示图,从中找出一个或
6、一组其值为“0”的二进制位(“0”表示空闲时)。(2)将所找到的一个或一组二进制位,转换成与之相应的盘块号。假定找到的其值为“0”的二进制位,位于位示图的第i行、第j列,则其相应的盘块号应按下式计算:b=n(i-1)+j 式中,n代表每行的位数。(3)修改位示图,令mapi,j=1。3.盘块的回收盘块的回收(1)将回收盘块的盘块号转换成位示图中的行号和列号。转换公式为:i=(b-1)DIV n+1 j=(b-1)MOD n+1(2)修改位示图。令map i,j=0。优点:很容易找到一个或一组相邻接的空闲盘块。可放在内存中。8.2.3 成组链接法成组链接法1.空闲盘块的组织空闲盘块的组织2.空闲
7、盘块的分配与回收空闲盘块的分配与回收 当系统要为用户分配文件所需的盘块时,须调用盘块分配过程来完成。该过程首先检查空闲盘块号栈是否上锁,如未上锁,便从栈顶取出一空闲盘块号,将与之对应的盘块分配给用户,然后将栈顶指针下移一格。若该盘块号已是栈底,即S.free(0),这是当前栈中最后一个可分配的盘块号。由于在该盘块号所对应的盘块中记有下一组可用的盘块号,因此,须调用磁盘读过程,将栈底盘块号所对应盘块的内容读入栈中,作为新的盘块号栈的内容,并把原栈底对应的盘块分配出去(其中的有用数据已读入栈中)。然后,再分配一相应的缓冲区(作为该盘块的缓冲区)。最后,把栈中的空闲盘块数减1并返回。在系统回收空闲盘
8、块时,须调用盘块回收过程进行回收。它是将回收盘块的盘块号记入空闲盘块号栈的顶部,并执行空闲盘块数加1操作。当栈中空闲盘块号数目已达100时,表示栈已满,便将现有栈中的100个盘块号,记入新回收的盘块中,再将其盘块号作为新栈底。8.3 提高磁盘提高磁盘I/O速度的途径速度的途径8.3.1 磁盘高速缓存1.数据交付方式(数据交付 指针交付)2.置换算法(LRU、NRU、LFU)3.周期性地写回磁盘(UNIX系统的update程序调用SYNC)8.3.2提高磁盘I/O速度的其它方法1.提前读2.延迟写3.优化物理块的分布4.虚拟盘8.3.3 廉价磁盘冗余队列Redundant Array of In
9、expensive Disk,RAID1.并行交叉存取2.RAID的分级3.RAID的优点8.4 提高磁盘可靠性的技术容错技术磁盘容错技术系统容错技术级别第一级 低级磁盘容错技术第二级 中级磁盘容错技术第三级 系统容错技术8.4.1 第一级容错技术第一级容错技术SFT-防止磁盘表面缺陷造成数据丢失1.双份目录和双份文件分配表 在磁盘上存放的文件目录和文件分配表FAT,是文件管理所用的重要数据结构。如果这些表格被破坏,将导致磁盘上的部分或全部文件成为不可访问的,因而也就等效于文件的丢失。为了防止这类情况发生,可在不同的磁盘上或在磁盘的不同区域中,分别建立(双份)目录表和FAT。其中,一份被称为主
10、目录及主FAT;把另一份称为备份目录及备份FAT。2.热修复重定向和写后读校验(1)热修复重定向(Hot-Redirection)。(2)写后读校验(Read after write Verification)方式。8.4.2 第二级容错技术第二级容错技术SFT-防止磁盘驱动器和控制器故障导致系统不能正常工作防止磁盘驱动器和控制器故障导致系统不能正常工作1.磁盘镜像(Disk Mirroring)。2.磁盘双工磁盘双工(Disk Duplexing)。8.4.3 基于集群技术的容错功能1.双机热备份模式2.双机互为备份模式3.公用磁盘模式8.4.4 后备系统1.磁带机2.硬盘3.光盘驱动器8.5 数据一致性控制数据一致性控制8.5.1 事务8.5.2 检查点8.5.3 并发控制8.5.4 重复数据一致性问题8.5 数据一致性控制本章小结此课件下载可自行编辑修改,仅供参考!此课件下载可自行编辑修改,仅供参考!感谢您的支持,我们努力做得更好!谢谢感谢您的支持,我们努力做得更好!谢谢