中南大学-操作系统课件_第1页
中南大学-操作系统课件_第2页
中南大学-操作系统课件_第3页
中南大学-操作系统课件_第4页
中南大学-操作系统课件_第5页
已阅读5页,还剩121页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

操作系统原理

PrinciplesofOperatingSystemCentralSouthUniversityCollegeofInformationScienceandEngineering2023/8/30计算机操作系统目录REFERANCE第1部分绪论第2部分进程管理第3部分存储管理第4部分

I/O设备管理第5部分文件管理第6部分

OS平安与保护30八月2023计算机操作系统第4部分(第6章)I/O设备管理6.1I/O系统的组成6.2I/O掌握方式6.3

缓冲管理6.4

设备安排6.5

设备处理30八月2023计算机操作系统6.1I/O系统的组成6.1.1I/O系统的结构一、微型机I/O系统无通道的I/O系统,以CPU为中心(图例)。二、主机I/O系统有通道的I/O系统,以主存为中心,属四级结构(图例)OVER设备类型30八月2023计算机操作系统微型机I/O系统结构图例CPURAMI/O1I/On......30八月2023计算机操作系统主机I/O系统结构图例主机RAMCPU通道1掌握器1掌握器2设备1设备2设备3设备4通道2掌握器3掌握器4设备5设备6设备7设备8增加通路按任意键...30八月2023计算机操作系统6.1.2设备类型一、按传输速率分

1、低速设备:几百字节/秒,键盘、鼠标;2、中速设备:几千字节/秒,打印机;3、高速设备:数兆字节/秒,HDD、TYPE;二、按信息交换单位分

1、块设备:信息存取以块为单位(Block);2、字符设备:以字符为单位;三、按共享属性1、独占设备;2、共享设备;3、虚拟设备;设备掌握器30八月2023计算机操作系统四、设备掌握器DC(DeviceController)

DC是CPU与I/O设备间的接口,属于可编址设备,即:DC连接多个设备时,具有多个设备地址。分为:掌握字符设备/块设备的掌握器。一、功能

1、接收、识别CPU发来的I/O命令(Read,Write...);2、通过数据寄存器,完成数据的存储、转发;3、借助状态寄存器,记录所连接设备的状态;4、通过地址译码器,实现所连接设备的地址识别;二、组成:由3部分组成(图例)通道30八月2023计算机操作系统设备掌握器组成图例与CPU接口与设备接口数据寄存器掌握/状态寄存器I/O规律接口1接口n数据线地址线掌握线数据数据状态状态掌握掌握30八月2023计算机操作系统6.1.4I/O通道一、通道设备的引入

目的:提高CPU的利用率。与CPU的2个区分:1、仅能执行与I/O有关指令;2、无独立主存,与CPU共享;有通道系统I/O示例:进程需I/OCPU给通道发I/O指令(通道程序首址、设备)通道取通道程序执行I/O中断通知CPU通道的类型30八月2023计算机操作系统二、通道的3种类型1、字节多路通道(ByteMultiplexChannel)(图)实现:通道含有很多非安排型子通道,每个子通道连接一台I/O设备。各子通道按时间片轮转方式使用主通道,每次传输一个字节。(用于连接低中速设备)2、数组选择通道(BlockSelectorChannel)实现:一个通道可连接多台I/O设备,但某段时间只允许一台设备I/O,并独占通道直到传输完成。传输时,每次传输一批数据。(用于连接高速外设)3、数组多路(BlockMultiplexChannel)实现:结合选择通道的高速与字节多路通道分时并行的优点,传输按成组分时方式进行。瓶颈问题30八月2023计算机操作系统三、瓶颈问题为降低系统成本,并非每一个I/O设备都有自己独立的掌握器和通道,所以造成多台I/O设备争用掌握器、通道。使通道成为I/O的主要瓶颈,造成系统吞吐量下降。解决2方法:

1、增加通路,提高系统的灵敏性、牢靠性;(图例)2、设置缓冲区,增加I/O设备的独立性。30八月2023计算机操作系统字节多路通道示意图字节多路通道掌握器1掌握器2掌握器n...30八月2023计算机操作系统6.2I/O掌握方式I/O掌握方式进展宗旨:尽量削减CPU对I/O的干预,提高CPU的利用率。进展的四个阶段:

6.2.1

程序I/O方式;

6.2.2

中断驱动I/O掌握方式;

6.2.3DMA方式;

6.2.4

通道方式;30八月2023计算机操作系统6.2.1程序I/O方式(ProgrammedI/O)早期无中断系统工作特点:1、“忙测试”:

(1)CPU向I/O掌握器发一条I/O命令,启动I/O设备;(2)置设备状态寄存器中busy为1;(3)循环测试busy,直到busy=0;

2、每一次,I/O一个字(符)30八月2023计算机操作系统6.2.2中断驱动I/O掌握方式有中断的系统。工作过程:

1、进程I/O时,CPU发I/O命令给设备掌握器DC(DeviceController),并连续工作;2、DC接到命令,掌握设备I/O;3、I/O完成,DC向CPU发中断信号;4、CPU检查I/O中是否有错,有:处理;

无:连续;每次I/O一个字(符)30八月2023计算机操作系统6.2.3DMA(DirectMemoryAccess)方式特点:1、I/O基本单位是数据块(Block);2、I/O是直接从设备入内存,或相反;3、一块/多块完成后,CPU才能预;DMA组成

工作过程3步:1、进程I/O,CPU给掌握器发送:I/O命令、内存/外存起址、传输字节数;2、CPU启动掌握器进行数据I/O;3、I/O完成,DMA向CPU发送中断信号;30八月2023计算机操作系统DMA组成Count内存起址CPU数据寄存器DR内存地址MAR计数器DC命令寄存器DRI/O逻辑接口1接口n30八月2023计算机操作系统6.2.4通道方式工作过程:1、进程I/O,CPU向通道发送I/O命令,给出通道程序的起址、需访问的设备等;2、通道执行通道程序,完成I/O,并中断通知CPU。

I/O量:以一组数据块为单位。30八月2023计算机操作系统6.3缓冲管理一、缓冲引入缘由

1、缓和CPU与I/O设备间速度不匹配的冲突;2、削减CPU对I/O的干预;3、提高CPU和I/O设备之间的并行程度;二、缓冲的种类

1、单缓冲2、双缓冲3、循环缓冲(多缓冲,类似于生产者-消费者中的缓冲区)

4、缓冲池30八月2023计算机操作系统1、单缓冲(SingleBuffer)工作方式:进程发出I/O恳求时,操作系统在主存安排一个缓冲区,通过缓冲区完成I/O。例:从块设备输入处理(性能分析)1、将一块输入数据输入缓冲区,时间T;2、系统将缓冲区数据复制到用户区,时间M;3、CPU对输入的数据处理,时间C;用户进程操作系统BUF数据区CPU处理C复制M设备输入T30八月2023计算机操作系统单缓冲性能分析无缓冲区时,每一块数据的处理时间为:

T+C单缓冲区时,每一块数据的处理时间为:

MAX(C,T)+M由于M<<T或C,所以上式近似为:MAX(T,C)30八月2023计算机操作系统3、缓冲池(BufferPool)单、双、循环缓冲都属专用缓冲。为提高缓冲区的利用率,目前广泛采纳共用缓冲池,即缓冲池中的缓冲区可供多个进程共享。(1)缓冲池的组成缓冲池中的缓冲区既可用作输入缓冲,也可用作输出缓冲,所以缓冲池中的缓冲区应有三个队列:空缓冲队列emq;队首F(emq),队尾L(emq)输入队列inq;队首F(inq),队尾L(inq)输出队列outq;队首F(outq),队尾L(outq)四种工作缓冲区30八月2023计算机操作系统(2)四种工作缓冲区为标志缓冲池中各缓冲区的动态过程,系统设置了四个工作缓冲区。用于收容输入数据的工作缓冲区hin用于收容输出数据的工作缓冲区hout用于提取输入数据的工作缓冲区sin用于提取输出数据的工作缓冲区sout相应缓冲区可工作在收容输入、收容输出、提取输入、提取输出四种工作方式下。图例Getbuf和Putbuf过程30八月2023计算机操作系统缓冲区工作方式图例缓冲池hinsinsouthout用户进程收容输入收容输出提取输入提取输出30八月2023计算机操作系统(3)Getbuf和Putbuf过程Getbuf(type):

用于从type指定的队列中得到一个缓冲区;Putbuf(type,number)

用于将参数number所指示的缓冲区,挂在type所指队列的队尾;由于缓冲池中的缓冲区被多个进程共享,所以出、入队的操作应该互斥。系统对每个队列type设置2个信号量:资源信号量RS(type);互斥信号量MS(type);

Getbuf和Putbuf过程描述工作方式30八月2023计算机操作系统Getbuf和Putbuf过程描述Getbuf(type){wait(RS(type));wait(MS(type));B(number):=Takebuf(type);signal(MS(type));}Putbuf(type,number){wait(MS(type));Addbuf(type,number);signal(MS(type));signal(RS(type));}30八月2023计算机操作系统(4)工作方式收容输入工作方式(从I/O设备输入到缓冲)进程需输入数据时,调用Getbuf(emq),得到一个空缓冲作为收容输入的工作缓冲区hin;图例将数据输入到hin中;调用Putbuf(inq,hin),将hin入inq的队尾;提取输入工作方式(从inq提取所需的数据使用)计算进程需输入数据时,调用Getbuf(inq),取得一个缓冲区作为提取输入工作缓冲区sin;计算进程使用完成后,调用Putbue(emq,sin),将缓冲区挂到emq队尾;其余方式自学30八月2023计算机操作系统收容输入工作方式图例emq...inq...输入进程Getbuf(emq)hin从设备输入数据Putbuf(inq,hin)F(inq)L(inq)30八月2023计算机操作系统6.4设备安排功能:进程发出I/O恳求时,依据肯定的策略将I/O所需设备安排给进程。(有通道结构)6.4.1设备安排中的4个数据结构一、设备掌握表DCT(DeviceControlTable)

系统为每个设备配置一张DCT,用于记录该设备的相关参数。二、掌握器掌握表COCT(ControllerControlTable)三、通道掌握表CHCT(ChannelControlTable)四、系统设备表SDT(SystemDeviceTable)设备安排应考虑的因素30八月2023计算机操作系统设备安排中的4个数据结构设备类型type设备标识符:deviceid设备状态:等待/不等待忙/闲指向掌握器表的指针重复执行次数/时间设备队列的队首指针掌握器标识符掌握器状态:忙/闲与掌握器相连的通道指针掌握器队列的队首指针掌握器队列的队尾指针通道标识符通道状态:忙/闲与通道相连的掌握器指针通道队列的队首指针通道队列的队尾指针DCTCOCTCHCT设备类型设备标识符DCT驱动程序入口表目1表目iSDT30八月2023计算机操作系统6.4.2设备安排应考虑的因素一、设备的固有属性:独占、共享、虚拟;二、设备安排算法:1、FCFS;2、优先级高者优先;三、设备安排的平安性1、平安安排方式:进程发出I/O恳求后,立即堵塞,直到I/O完成;2、不平安安排方式:只有申请的设备无法满意要求时,进程才堵塞。为保证平安性,需在安排时作平安性检查。设备的独立性30八月2023计算机操作系统6.4.3设备的独立性(DeviceIndependence)

也称设备无关性:应用程序独立于简略使用的物理设备。一、2个相关概念1、规律设备:

用户程序中使用某类设备名称(PRN)来使用该类设备;2、物理设备:

系统I/O进程实际执行I/O操作时,使用的设备名称(整数编码),物理设备直接指向某台简略设备。实现设备独立性的好处30八月2023计算机操作系统二、实现设备独立性的好处1、增加设备安排时的灵敏性(1)某设备被占用,可安排其它同类空闲设备;(2)系统增加同类外设时,无需修改源程序即可使用;(3)进程使用设备故障时,系统可安排其它同类设备给进程;2、易于实现I/O重定向重定向(redirection):I/O进程,不转变应用程序即可转变设备完成数据的I/O。例:dir>prn规律设备到物理设备的映射30八月2023计算机操作系统三、规律设备到物理设备的映射1、规律设备表LUT(LogicalUnitTable)

规律设备名物理设备号驱动程序入口地址/dev/tty31024/dev/print52046......2、LUT的2种设置方式(1)整个系统设置一张缺点:不同用户的规律设备名不允许相同。(2)每个用户进程设置一张,置于进程PCB中。SPOOLing技术30八月2023计算机操作系统6.4.5SPOOLing技术思想:通过在高速外存设置I/O缓冲,将独占型设备改造成为可共享的虚设备。SPOOLing----在线同时外围操作(SimultaneousPeripheralOperationOn-Line)一、SPOOLing系统的组成(3部分)

1、输入井和输出井在磁盘开辟存储空间,收容输入、输出数据。2、输入缓冲和输出缓冲在内存设置缓冲,暂存从设备输入或从输入井输入的数据。3、输入进程SPi和输出进程SPo

工作过程30八月2023计算机操作系统SPOOLing系统组成示意图SpiSpo输入缓冲区InBuff输出缓冲区OutBuff输入设备输出设备磁盘输入井输出井30八月2023计算机操作系统二、SPOOLing系统的工作过程输入过程:

SPOOLing输入程序Spi主要工作是负责将输入设备上的作业以作业为单位通过内存缓冲区传输至输入井,并建立JCB,同时维持后备队列。

Spi是系统中一个独立的进程,无任务时,处于等待状态(睡眠状态)。Spi被唤醒的时机有3个,Spi被唤醒后,依据收到的信号作相应的工作:1、当输入设备上有作业输入恳求时;2、当输入设备工作结束时;3、向磁盘输入井传输一道作业结束时;SPOOLing的特点30八月2023计算机操作系统依据唤醒时机不同,Spi的工作(1)设备有输入恳求;

Spi启动相应通道,将作业输入到内存输入缓冲区,自身进入等待;(2)输入设备消灭“结束中断”;

Spi依据输入缓冲区中的内容,建立JCB,并在输入井中为作业安排空间,启动磁盘通道将输入缓冲区中作业输到输入井,自身进入等待。(3)向输入井传输作业结束,消灭“磁盘结束”中断;

Spi将作业JCB加入后备队列,并向作业调度程序发信号,引起作业调度,自身进入等待。30八月2023计算机操作系统三、SPOOLing的3特点1、提高了I/O速度;由对低速设备的I/O改为对输入/输出井的存取,缓和了CPU与低速设备的冲突;2、将独占型设备改造为共享设备;3、实现了虚拟设备功能;多个进程同时(并发)地从输入/输出井存取数据,感觉是独占I/O设备。30八月2023计算机操作系统6.5设备处理设备处理程序/设备驱动程序功能:接收上层软件的I/O命令,转化为简略的I/O要求,掌握设备完成I/O操作。处理6过程:1、将抽象要求转换为简略要求;即将I/O命令转换为掌握器可接受的命令格式;例:磁盘块号转换为盘面、道号、扇区;2、检查I/O恳求的合法性;3、读出和检查设备状态;4、传送必要的参数;如传输字节数、内存地址;5、设置工作方式;异步/同步通信;6、启动I/O设备;完成I/O。30八月2023计算机操作系统第4部分文件系统7.1

文件和文件系统7.2

文件结构7.3

名目管理7.4

文件共享7.5

文件保护30八月2023计算机操作系统7.1文件和文件系统7.1.1文件、记录和数据项(数据元素/字段/域)

记录:一组相关数据项的集合;文件:具有文件名的一组相关信息的集合;7.1.2文件类型(5)

1、按用途分:系统、用户、库文件;2、按存取掌握属性:只读、读写、只执行文件;3、按文件规律结构:有结构、无结构文件;4、按文件物理结构:挨次、链接、索引文件;5、按文件中数据形式:源、目标、可执行文件;文件系统模型30八月2023计算机操作系统7.1.3文件系统模型文件系统:用于操纵和管理各种文件,便利用户使用文件的软件集合。

文件系统模型层次结构一、管理对象文件、名目、外存空间二、操纵和掌握内容1、文件存储空间管理;2、名目管理;3、地址映射;4、R/W管理;5、共享和保护;三、文件系统接口1、命令接口;2、程序接口;文件操作30八月2023计算机操作系统7.1.4文件操作文件操作分2大类:一、对记录操作记录增、删、改;记录的查询;二、对文件的操作创建文件;删除文件;读写文件;设置读写位置;30八月2023计算机操作系统文件系统模型层次结构文件系统接口规律文件系统基本I/O管理程序基本文件系统(物理I/O层)

I/O掌握层(设备驱动程序)对象及其属性说明对对象操纵和管理的软件集合启动I/O操作、接收中断处理内、外存数据交换设备选择、地址映射、空闲块管理、缓冲设置名目管理、存取掌握验证命令、程序接口文件、名目、外存30八月2023计算机操作系统7.2文件结构文件结构分2类:7.2.1

规律结构/文件组织

从用户观点动身,所观察到的文件组织形式。是用户可以直接处理的数据和结构,独立于物理特性。规律结构可分为:

(1)有结构(记录)文件:定长/变长记录(2)无结构(流式)文件7.2.2

物理结构/存储结构

文件在外存上的存储组织形式,与存储介质的存储性能有关。30八月2023计算机操作系统7.2.1文件的3种规律结构一、挨次文件文件记录的排列、存取按挨次进行。适用场合:对记录批量存取;挨次介质;二、索引文件为变长记录文件建立一张索引表(或多级索引),用户通过关键字访问记录。适用场合:对信息处理准时性要求高的场合。三、索引挨次文件挨次文件记录分组,并建立索引表,索引表项为各组的第一记录指针。30八月2023计算机操作系统挨次文件示意图R0R1R2......Ri......定长记录文件Rprt=Ptr+i*l

lPtr=0L0R0L1R1......LiRi...Ptr=0Rprt

L0变长记录文件30八月2023计算机操作系统索引文件的组织索引号长度m指针Ptr0M01M1......IMi...

R0R1......Ri......索引表规律文件变长记录30八月2023计算机操作系统索引挨次文件的组织键值规律地址

AnQiBaoRongChenLin姓名其它属性AnQiAnKang...BaoRong...ChenLin...索引表规律文件30八月2023计算机操作系统7.2.2文件的物理结构对磁盘、磁带、磁鼓等辅存介质的安排、回收是以块(Block)为单位。通常,对于记录型文件存储时,可能情况为:1、一个物理块可以存放若干规律记录;2、一个规律记录需要占用多个物理块;为简洁起见,设一个规律记录占用一个物理块。则文件的规律结构分为以下3类:一、挨次结构/挨次文件二、链接结构/串联文件三、索引结构/索引文件30八月2023计算机操作系统挨次结构/挨次文件组织:一个规律文件的记录,依此存储在辅存连续的物理块中。优缺点:例如:文件A有三个记录,存储在6,7,8三个物理块中。...文件名第一物理块号文件长度...文件说明R0R1R2文件A30八月2023计算机操作系统链接结构/串联文件组织:每个块设一个指针,指向该文件下一记录所在物理块号。(图例)优点:记录数可任意增减。缺点:无法直接存取,且为单向查找。实现双向查找的2种方法:1、采纳双向链表;2、某一物理块链表指针值设置为:其前、后两个物理块号的“异或”值(按位加);若该物理块为文件的首、尾记录,其前、后物理块块号设为0。(例如)30八月2023计算机操作系统链接结构示意图例如:文件A有三个记录,存储在4,12,8三个物理块中。...文件名起始物理块号......R0/412R1/128R2/8NIL按任意键为异或双向链表查找过程:

向下查找:本记录链表指针值与上记录块号“异或”向上查找:本记录链表指针值与下记录块号“异或”0异或12124异或81212异或0124异或8010010001100=1230八月2023计算机操作系统索引结构/索引文件组织:为每一个文件建立一张索引表,每一个表目指向记录所在的物理块号。30八月2023计算机操作系统7.3名目管理借助于文件名目,可将每个文件的符号名与其所在存储空间地址联系起来。对文件名目管理的要求:

1、实现“按名存取”;2、有较高的名目检索速度:合理组织文件名目;3、允许文件重名;4、供应文件共享功能;7.3.1文件掌握块和索引结点

一、文件掌握块(FCB-FileControlBlock)

二、索引结点常见名目结构30八月2023计算机操作系统一、文件掌握块(FCB-FileControlBlock)

FCB是一个文件名目项。通常,一个文件名目也被看做是一个文件----名目文件。FCB包含的信息有3类:1、基本信息:文件名、外存物理位置、规律结构(定长/变长)、物理结构;2、存取掌握信息:文件主/核准用户/一般用户的存取权限;3、管理信息:创建的日期/时间、上次修改的日期/时间、要求保留的时间。30八月2023计算机操作系统二、索引结点1、引入缘由削减磁盘I/O,提高名目查找速度。例2、磁盘索引结点指存放在磁盘上的索引结点,系统中每个文件都有唯一的磁盘索引结点及编号(外存inode区的挨次号)。主要内容3、内存索引结点存放在内存的索引结点。当文件被打开时,将磁盘索引结点复制到内存索引结点中。内存索引结点包括内容30八月2023计算机操作系统示例

设一个FCB为64B,Block=1KB,则每个磁盘块可存放16个名目项。若共有3200个FCB,则需200个Block,查找一个文件平均启动磁盘100次。改进方法:由于文件查找时,首先依据文件名查找,找到匹配的文件名后,再读取文件的描述信息。为此,可将FCB分成2部分:文件名和文件描述。实现:用一个数据结构(称为索引结点/inode)记录文件的描述信息,每个文件有唯一的inode号。例:Unix文件名目结构30八月2023计算机操作系统Unix文件名目结构示例

Unix中,一个文件名目项共16B。其中14B保存文件名,2B存放i结点指针。则:1Block可存放64个名目项;查找一个文件平均启动磁盘的次数削减到1/4。文件名外存inode号文件名1文件名2......30八月2023计算机操作系统磁盘索引结点inode主要包括7部分信息1、文件主标识/组标识;2、文件类型:一般文件/名目文件/块设备文件/字符设备文件;3、文件存取权限;4、文件物理地址:数据文件的盘块号;5、文件长度;6、文件连接计数:文件在名目中具有的路径名数;图例7、文件存取时间:文件最近被存取、修改时间,索引结点修改时间。30八月2023计算机操作系统文件连接图例...Name1inode:n...名目/a/b...Name2inode:n...名目/c/d...连接计数:2物理地址...外存inode:n文件存储块Unix采纳索引结构30八月2023计算机操作系统内存索引结点/活动索引结点表每个文件在外存都有一个inode。当需要查询、修改外存inode中信息时,一般是将其临时调入内存,处理完毕后再回写到外存。由于系统对inode的访问频繁,按该方式进行很不经济。为此,可在内存设置索引结点,其内容较外存inode略有增减,增加部分主要有5部分:1、外存索引结点编号;2、状态:指示i结点是否被修改、上锁;3、访问计数:共享该i结点的进程数;4、文件所在设备的规律设备号;5、链接指针:空闲/散列队列指针30八月2023计算机操作系统7.4常见名目结构及查询技术7.4.1

单级名目结构(SingleLevelDirectory)7.4.2

两级名目结构(TwoLevelDirectory)7.4.3

树型名目结构/多级名目(Tree-structuredDirectory)7.4.4

名目查询技术30八月2023计算机操作系统7.4.1单级名目结构图例1、查找速度慢:N个名目,平均查找N/2个名目项;2、不允许重名;文件名状态位物理地址...AlphaReportText......2个缺点:实现:整个系统只建立一张名目表,为每个文件安排一个名目项。30八月2023计算机操作系统7.4.2两级名目结构实现:名目分2种类型:1、主文件名目MFD(MasterFileDirectory)2、用户文件名目UFD(UserFileDirectory)

系统设置一个名目MFD,为每个用户文件建立一个名目UFD,每个用户文件名目在MFD中有一个名目项。图例2个优点:1、提高了查找速度:设共n个用户,每个用户m个文件。则二级名目需查找(n+m)/2个名目项;若n=m,共n;一级名目需查找n*m/2个名目项;若n=m,共n2/2;2、不同用户文件可以重名30八月2023计算机操作系统两级名目结构图例User1User2User3...UsernAlphaProgram1AlphaTest......MFDUFD30八月2023计算机操作系统7.4.3树型名目结构/多级名目一、实现在两级名目中,允许用户创建自己的子名目并组织其文件,即可形成多级名目结构。图例二、路径名从根名目到文件之间的通路。三、当前名目相对路径名:从当前名目到文件之间的路径。肯定路径名:从根名目到文件之间的路径。四、名目的增加和删除增加:无重名。删除:不删除非空名目/可删除非空名目。30八月2023计算机操作系统树型名目结构图例ABCABDFEDGAACJNKJMKAHF当前名目30八月2023计算机操作系统7.4.4名目查询技术目前,采纳的名目查询技术有两种:线性检索法和Hash方法。一、线性检索法依据用户给定文件名,挨次查找文件名目表,得到文件名目项。见P243,F8-11图例。二、Hash方法略。30八月2023计算机操作系统7.5文件共享多个用户(进程)共享同一份文件,即系统中只保存共享文件的一个副本。7.5.1早期文件共享方法

一、绕弯路法

二、连访法

三、用基本文件名目实现共享7.5.2

基于索引结点的共享方式7.5.3

利用符号链实现文件共享30八月2023计算机操作系统一、绕弯路法实现:系统设置当前名目指针,用户可对当前名目下的文件直接访问。当需访问其它名目下的文件时,通过指定路径来完成。系统设定*表示当前名目的父名目。例如:*.E.J表示访问其父名目下E子名目中的J文件。图示实现:建立名目之间的链接,使一个名目中的名目项直接指向另一个名目中的名目项。同时在文件说明中增设“连访”属性标识物理地址是文件或名目项的指针;增设“用户计数”标识共享文件的用户数。例如:图示二、连访法30八月2023计算机操作系统用基本文件名目实现共享实现:系统将原文件名目分成两部分:

1、基本文件名目BFD(BaseFileDirectory)

每个文件/名目有一个名目项,包含:文件标识数,其它名目信息。2、符号文件名目SFD(SymbolFileDirectory)

每个用户有一个,其中名目项指示其文件的文件名和文件标识数。图示提高文件访问速度的方法:

系统在内存设置一张活动文件表AFT,为每个用户设置一张活动名字表ANT。执行OPEN操作时将SFD内容入ANT;BFD内容入AFT。30八月2023计算机操作系统用基本文件名目实现共享图示0123456789...BFD空闲文件名目Wang3Zhang4Sqrt5Beta6...Mist7Alpha6Report8Oaf9...MFDFFDWangSFDZhangSFD30八月2023计算机操作系统7.5.2基于索引结点的共享方式与设置BDF、SFD实现共享类似。实现:设置索引结点,存储文件的物理地址、链接计数(共享计数)及其它文件属性;文件名目只包括文件名和该文件对应索引结点的指针。优点:任何对索引结点内容的修改对其它共享用户都是透明的。30八月2023计算机操作系统7.5.3利用符号链实现文件共享

实现:设B为了共享C的文件F,在B中创建一个Link类型的新文件,新文件名目中只包含被链接文件F的路径名,称这种链接方法为符号链接(symbolicLinking)说明:只有文件主人的名目中有文件索引结点的指针,其它用户名目中只有路径名。

30八月2023计算机操作系统7.6文件保护7.6.1影响文件系统平安性的3个主要因素:

1、人为因素;2、系统因素:系统部分软件、介质故障;3、自然因素:存放在磁盘中的数据,随着时间的推移发生溢出或逐渐消灭;7.6.2文件系统保护机构应有的3个功能:

1、防止未核准用户存取文件;2、防止一个用户冒充另一个用户存取文件;3、防止核准用户误用文件;文件保护措施30八月2023计算机操作系统7.6.3文件保护措施

文件保护:防止合法用户由于误操作而破坏文件;文件保密:防止未核准用户使用文件;可采纳下列3种措施保证文件系统的平安:

1、通过存取掌握机制,防止人为因素造成的不平安性;2、通过容错技术,防止系统部分的故障造成的不平安性;3、通过“后备系统”,防止自然因素造成的不平安性;存取掌握机制30八月2023计算机操作系统7.6.4存取掌握机制实现文件存取掌握方法较多,且各有特点,主要介绍基本概念和常见存取掌握机制。一、保护域(ProtectionDomain)二、访问矩阵(AccessMatrix)三、访问矩阵的修改四、访问矩阵实现访问掌握表(AccessControlList)访问权限表(AccessCapabilitiesList)五、分级平安管理(自习)30八月2023计算机操作系统一、保护域(ProtectionDomain)进程可访问的对象称为保护域。对不同的对象,系统允许进程执行的操作不同。一个进程对某对象可执行操作的权限成为访问权。可用有序对(对象名,权集)表示,例如:(F1,{R|W})

表示进程对文件F1的操作权限为读、写。一组对象访问权的集合用域表示,可将每个用户或每个进程视为一个域。例F8-16进程与域的联系方式有2种:

1、静态联系:进程可用资源集是固定的。2、动态联系:进程可用资源集是变化的。30八月2023计算机操作系统例F9-16(F1,{R})(F2,{R|W})(F3,{R})(F4,{RWE})(F5,{RW})(F6,{RWE})(Printer1,{W})域1域2域330八月2023计算机操作系统7.6..2访问矩阵(AccessMatrix)描述域及所属对象的矩阵称为访问矩阵。访问矩阵中对象访问权由资源拥有者或管理者确定。通过设置域间切换开关实现进程与域的动态联系。

文件1文件2文件3文件4打印机1绘图仪D1D2D3D1RRWS

D2RRWEWSD3WW30八月2023计算机操作系统7.6.3访问矩阵的修改为满意系统动态变化的需要,访问矩阵中的权限应允许有限制地进行修改,为此,系统中增设拷贝权、全部权和掌握权。一、拷贝权(CopyRight)

若进程对域中某一对象访问权有拷贝权(*),则它可将对该对象的访问权拷贝到其它域中,使其它域中进程对同一对象也有相同的访问权。拷贝访问权的2种应用:1、转移拷贝权:拷贝后取消原域的权限;例2、限制拷贝:拷贝后的访问权无拷贝权;例30八月2023计算机操作系统拷贝权示例

文件1文件2文件3D1EW*D2ER*ED3E

文件1文件2文件3D1ED2ER*ED3EW*

文件1文件2文件3D1EW*D2ER*ED3E

W转换拷贝权限制拷贝任意键,限制拷贝...30八月2023计算机操作系统访问掌握表(AccessControlList)当系统中的域和对象数量较大时,访问矩阵对内存的要求会很高。一般地,由于并非每一个用户进程对系统中每一个对象都进行访问,所以访问掌握矩阵是稀疏矩阵,为此,将访问矩阵按列划分,每列建立一张访问掌握表ACL,删除其中空项。ACL由(域,权集)组成,如果其对象是文件,则可将对应的ACL存放在该文件的名目项中。用户/进程对文件进行访问时,系统先检查ACL,确定访问是否合法:是,执行访问操作;否,拒绝访问,提示相关信息。30八月2023计算机操作系统访问权限表(AccessCapabilitiesList)将访问矩阵按行(域)进行划分,每一行构成一张访问权限表。例如:D2域的访问权限表为:对象类型访问权限对象文件R指向文件3的指针文件RWE指向文件4的指针打印机1W指向打印机1的指针30八月2023计算机操作系统7.6.5分级平安管理30八月2023计算机操作系统8.1

磁盘I/O8.2

外存安排方法8.3

空闲存储器的管理8.4

磁盘容错技术8.5

文件系统性能的改善8.6

数据全都性掌握第8章磁盘存储管理30八月2023计算机操作系统8.1磁盘I/O一、磁盘的2种类型(图例)1、固定头磁盘2、移动头磁盘二、移动头磁盘访问时间的3个组成部分1、寻道时间Ts2、旋转延迟时间Tr3、数据传输时间Tt磁盘调度算法30八月2023计算机操作系统磁盘类型图例30八月2023计算机操作系统磁盘调度算法1、先来先服务FCFS(FirstComeFirstServed)2、最短寻道时间优先SSTF

(ShortestSeekTimeFirst)3、4种扫描算法*扫描算法SCAN(电梯调度法)*循环扫描CSCAN(CircularSCAN)*N步扫描(NStepSCAN)*FSCAN30八月2023计算机操作系统先来先服务FCFS思想:选择等待队列中最先到达的访问恳求,作为下一次的访问对象。例:P261,F9-2100磁道低磁道高磁道30八月2023计算机操作系统最短寻道时间优先SSTF思想:选择等待队列中离当前磁道最近的访问恳求,作为下一次的访问对象。例:P261,F9-3100磁道低磁道高磁道30八月2023计算机操作系统扫描算法SCAN(电梯调度法)思想:选择等待队列中离当前磁头移动方向最近的访问恳求,作为下一次的访问对象。例:P262,F9-3设,磁头向磁道增加方向移动100磁道低磁道高磁道30八月2023计算机操作系统循环扫描CSCAN思想:单向扫描,选择等待队列中离当前磁头移动方向最近的访问恳求,作为下一次的访问对象,直到该方向最后一个恳求,反向。例:P262,F9-4设,磁头向磁道增加方向移动100磁道低磁道高磁道30八月2023计算机操作系统N步扫描思想:将磁盘恳求队列分为若干长度为N的子队列,并按FCFS算法依次处理这些队列,在处理每一个队列时,采纳SCAN算法。(分析N=1和N为无穷情况)例:设N=3,到达次序:55,58,39,18,90,160,150,38,184100磁道低磁道高磁道30八月2023计算机操作系统FSCAN算法思想:将磁盘恳求队列分为2个子队列,其中一个为当前全部恳求构成的队列,另一个为扫描期间新到达的恳求构成的队列,并按N步扫描处理。30八月2023计算机操作系统10.2外存安排方法一般有3种:连续安排、链接安排和索引安排。一、连续安排思想:文件在外存安排连续的磁盘块。优点:1、支持挨次访问、直接访问;2、磁头定位时间短,挨次访问速度快。缺点:1、要求连续盘块,易产生碎片;2、需预知文件长度

OVER链接安排30八月2023计算机操作系统外存安排方法(续1)二、链接安排思想:通过磁盘块中的链接指针,将文件所属盘块链成链表,构成链接文件。分为2种:1、隐式链接(P265,F9-7)实现:文件名目中只给出文件第一、最后一个盘块的指针,其余由链接指针给出。2、显式链接(P266,F9-8)实现:系统设置一张链接表(FAT),存放每一个链接文件各物理块的指针。文件名目中保存第一块的盘块号。缺点:不支持直接访问,FAT需磁盘空间。索引安排30八月2023计算机操作系统外存安排方法(续2)三、索引安排(分3种)1、单级索引安排(P267,F9-10)建立一张索引表保存文件所安排的块号。2、多级索引安排(F9-11)思考题3、混合索引安排

结合直接地址和索引安排方式的安排方式。例:在UNIXS5系统中,有13个地址项,若每个盘块大小为4KB,一个盘块可存放1K个盘块号,则依据F9-12混合安排方式文件最大长度可达4TB。30八月2023计算机操作系统多级索引安排思考题某文件有1000个记录,文件采纳索引安排,设每一个盘块存放一个记录,每一盘块可以存放10个索引表目。问:1、保存该文件需要建立几级索引?2、共需要多少磁盘块?30八月2023计算机操作系统10.3空闲存储器的管理主要功能:1、设置相应数据结构,记录空闲存储空间的安排情况;2、实现存储空间的安排与回收。空闲存储器的4种管理方法:

1、空闲表法(空白文件名目)

2、空闲块链

3、位示图法

4、成组链接法30八月2023计算机操作系统1、空闲表法(空白文件名目)管理:系统为每一个空白文件(一个连续未安排的区域)建立一个名目,每个空闲区有一个表目。主要结构为:

第一个空白块地址空白块数安排:系统依次扫描空白文件名目,找到一个合适的空白文件安排。回收:动态修改空白文件表(合并)。2个特点:

1、适用于建立挨次文件;

2、当有大量小的空白文件时,效率降低。30八月2023计算机操作系统2、空闲块链管理:将全部空闲块链接在一起,组成队列。安排:从链首依次摘取1块或n块。回收:回收块入链尾。特点:操作简洁;当链较长时,效率较低。改进:

采纳空闲盘区链:将全部空闲盘区链接在一起,每个盘区可包含若干空闲盘块。

安排/回收:类似动态分区安排。OVER30八月2023计算机操作系统3、位示图法管理:系统专设几个字,每个字的每一位对应一个磁盘块。F9-14

位:为1表示该块已安排;为0表示该块未安排。

每位对应盘块号b=(i-1)*n+j

其中:i、j分别为行列值,n为每行位数2个特点:

1、由于辅存物理块数固定,位示图尺寸固定;

2、位示图较小,可常驻内存,安排/回收速度快。30八月2023计算机操作系统4、成组链接法(Unix采纳)管理:设置空闲盘块号栈,存放当前可用的一组空闲盘块的盘块号(最多存放100个号),以及堆栈中尚有的空闲块数。说明:

1、栈属于临界资源,应互斥使用;

2、S.free(0)是栈底,栈满时,栈顶为S.free(99)。例:设共有10000个盘块,第201-7999号盘块用于存放文件,则成组链接法结构见F9-15空闲盘块的安排与回收(P273)30八月2023计算机操作系统UNIX成组链接法图例空闲盘块号栈...100300299298...202201...100400399......301100500499......4019907999......79012993997899799920130178017901.....................3004007900S.free012989930八月2023计算机操作系统10.4磁盘容错技术通过增加冗余的磁盘驱动器、掌握器来提高磁盘系统的牢靠性。磁盘冗错技术/系统冗错技术SFT(SystemFaultTolerance)分3个级别:

SFT-I:低级,防止磁盘表面缺陷引起的数据丢失。

SFT-2:中级,防止驱动器、掌握器故障引起的不正常。

SFT-3:高级,利用冗余的存储信息作错误校正。30八月2023计算机操作系统10.4.1第一级冗错技术主要措施:双名目、双FAT、写后读校验。一、双名目和双FAT实现:在不同盘或同一盘的不同区域,建立2份名目和FAT。系统初启时验证全都性。二、热修复重定向和写后读校验防止将数据写入有缺陷的盘块中。1、热修复重定向:磁盘设置热修复重定向区,存放发现盘块有缺陷时的待写数据,并登记。2、写后读校验:将写入磁盘的数据立即读入内存另一缓冲区,并与原数据比较是否全都。30八月2023计算机操作系统10.4.2其次级冗错技术1、磁盘镜像(DiskMirroring)实现:用同一磁盘掌握器来掌握2个完全相同的驱动器,每次对主磁盘写入数据后,采纳写后读校验方式,写入备份盘。F9-16

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论