操作系统原理教程(第3版)第六章课件

PPT
  • 阅读 81 次
  • 下载 0 次
  • 页数 81 页
  • 大小 434.500 KB
  • 2022-11-13 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
操作系统原理教程(第3版)第六章课件
可在后台配置第一页与第二页中间广告代码
操作系统原理教程(第3版)第六章课件
可在后台配置第二页与第三页中间广告代码
操作系统原理教程(第3版)第六章课件
可在后台配置第三页与第四页中间广告代码
操作系统原理教程(第3版)第六章课件
操作系统原理教程(第3版)第六章课件
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 81
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
文本内容

【文档说明】操作系统原理教程(第3版)第六章课件.ppt,共(81)页,434.500 KB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-7244.html

以下为本文档部分文字说明:

第六章设备管理设备管理涉及计算机系统与外部世界进行数据交换的工作。这些工作的完成是通过各种I/O设备进行数据的采集、加工处理和输出等实现的。操作系统的设备管理的主要工作是:提供用户及系统其它部分使用设备的简单方便的接口。负责设备的分配和回收

向设备发送命令,启动设备传输;捕捉设备的中断,对设备进行中断处理。控制设备完成I/O任务。还包括:实现其它功能,包括利用缓冲技术,改善系统的性能等。6.1I/O硬件组成6.2I/O软件的组成6.3设备分配6.4磁盘管理6.1I/O硬件组成一、I

/O设备(I/ODevice)按信息交换的单位分类:–块设备(BlockDevice):外部存储器/辅助存储器,如磁盘、磁带、光盘等。处理信息的基本单位是定长数据块。块的大小为512B~4KB等。传输速率较高,几MB/秒;–字符设备(CharacterDevice):如输入型设备——键盘

、鼠标、图形扫描器等;输出型设备——显示器、打印机、绘图机。网络接口等。传输速率较低,不可寻址。--网络通讯设备网卡,调制解调器。。。不全:时钟。按设备共享属性分类:–独占设备:如打印机等。–共享设备:指在一段时间内允许多个进程交叉访问的设备

。如磁盘等。二、设备控制器(DeviceController)•I/O设备一般由机械和电子两部分组成。•电子部分叫做设备控制器或适配器(adapter)。在小型和微型机中,它常采用印刷电路卡插入计算机中。•机械部分是设备本身。•控制器卡上通常有一个插板,通过电缆与设备相连。通常一个控制器可以连

接两个、四个,甚至八个相同的设备。•常常把这两部分分开处理,以提供更加模块化、更加通用的系统设计。•控制器与设备之间的接口通常是一个低级接口,它直接控制设备的读写。•每个控制器有几个寄存器(如控制命令寄存器、状态寄存器和数据缓冲寄存器等)用来与CPU进行通讯。

•各类设备及控制器需要使用和占用系统的某些资源,如I/O端口(设备寄存器的地址)、存储器、中断请求号和DMA(直接存储器访问)通道等。•控制器主要两个作用:•1。负责解释从I/O接口接收到的高级命令,并向设备发送适当的信号序列强制设备执行特定的操作•2.负责转换和解释从设备接收到的电信号

,并修改状态寄存器,以反映设备的工作状态。数据寄存器控制/状态寄存器I/O逻辑控制器与设备接口1控制器与设备接口i数据线地址线控制线CPU与控制器接口控制器与设备接口状态控制数据数据状态控制……CPU设备控制器I/O设备设备控制器┇CPU存储

器磁盘控制器打印机控制器其他设备控制器控制器与设备接口磁盘驱动器打印机系统总线图6.1一个连接CPU、存储器、控制器和I/O设备的单总线模型•几乎所有的微型机和小型机都利用如图6.1所示的单总线模型,实现CPU与控制

器之间的通信。•中、大型机通常采用多总线和专用I/O计算机(又叫I/O通道),它承接主CPU的I/O负载。•CPU通过存储总线与内存连接,•内存与多种不同的通道连接。•每个通道又分别与另一类I/O总线相连•I/O总线与具体的设备控制器接口相连,控制设备的I/O操

作。模型如图6.2所示。读卡机磁盘控制器磁盘控制器磁盘控制器┉软盘控制器磁带控制器磁带控制器┉打印机终端┉控制器控制器控制器I/O通道主存储器CPU选择通道成组多路通道字节多路通道磁盘图6.2多总线多通道的系统组织•程序查询(prog

rammed)I/OCopy_from_user(buffer,p,count):For(i=0;i<count;i++){while(*printer_status_reg!=READY);*printer_data_reg=p[i];}return_to_user();C

PU与设备完全串行工作。CPU直接控制设备进行数据传输有两种方式:1.程序查询方式和2.程序中断方式。设备进行信息传输传输完成,置状态标志设备工作方式向I/O控制器发命令读设备控制器的状态从数据缓冲寄存器读字向存储器中写字N出错Y

传送完成设备就绪?YN程序查询的下的CPU工作方式执行下一条指令一旦启动设备成功,CPU转去执行另一个程序。当设备完成时,向CPU提出中断请求,CPU执行完当前一条指令,就响应中断,转去执行中断处理程序。CPU与设备能够并行操作。•程序

中断(Interrupt–Driven)I/OCPU向I/O控制器发读命令读I/O控制器的状态从I/O控制器中读数据向存储器中写数据出错N传送完成有错误?检查该设备是否还有要做的工作有中断处理设备传输数据,每送一个数据到数据缓冲寄存器,提出中断请求是CPU启动设备过程:Copy_from_use

r(buffer,p,count);Enable_interrupts();while(*printer_status_reg!=READY);*printer_data_reg=p[i];scheduler();//调度程序•程序中断(Interru

pt–Driven)I/O中断处理例程;if(count==0){unblock_user();}else{*printer_data_reg=p[i];count=count-1;i=i+1;}Acknowledge_interrupt();return_from_int

errupt();判有无中断发生三、直接存储器访问DMA(DirectMemoryAccess)扩充磁盘控制器的功能.数据缓冲寄存器DR内存地址寄存器MAR传输数据字节计数器DC命令/状态寄存器CRB

uffer控制系统总线(地址和数据总线)DMA控制器Memory主机—控制器接口CPU数据块缓冲区磁盘直接存储器访问DMA的特点:•数据传输基本单位是数据块•在DMA控制器的控制下,设备直接与内存交换数据•仅在开始和结束时才需CPU干预。DMA工作方式:•首先,将磁头

定位到磁盘的正确位置,磁盘控制器控制磁盘驱动器串行地一位一位地读数据到数据缓冲寄存器组装成字节,放入控制器的内部缓冲区中。•其次,它计算检查和,以核实没有读错误发生。•然后控制器从内部缓冲区中一次一个字节或一个字地读数据送主存储器中,

直到一块读完。•产生一个中断。等待CPU响应中断。DMA工作过程(读):磁盘一个数据字读入数据寄存器,DMA控制器取代CPU接管地址总线的控制权,与内存交换一个字节或字CPU访问总线的速度降低。CPU与设备并行操作程度较程序中断高。DMA控制磁盘驱动器进行读数据,并将读的位组成字节挪用C

PU工作周期传送数据字存储器地址MAR增1数据计数器DC减1DC=0?磁盘完成请求中断NYCPU向DMA控制器发启动读块命令(设置MAR数据源(磁盘地址)目标(主存缓冲区地址)和DC初值),启动成功后,CPU执行磁盘的中断处理程序:检查DMA控制器的状态,成功时唤醒等待进程

。恢复中断现场,继续执行下条指令CPU转去做其它事与DMA方式相比,通道所需的CPU干预更少,一个通道控制多个设备控制器,CPU、通道和I/O设备并行工作四、通道方式(Channel)主存I/O通道1I/O通道i控制器

控制器控制器控制器设备设备CPU::1.字节多路通道:一个通道可以同时控制多台设备并行传输,控制低速设备。2.选择通道:一个通道一次只能控制一台设备进行传输,控制高速设备。3.数组多路通道:利用上述两者的优点,控制中速设备。如磁盘设备:它可以先为一台设备执行一条通道指令,然后自动转接为另一台执行

一条通道指令。。。这样就可以启动多台磁盘机同时移动磁臂定位,然后按需交叉地传输数据。数组多路通道实际上是对程序采用多道程序设计的硬件实现。通道的组成:作为I/O处理机的通道,与CPU共享内存,其硬件至少包括•CAW(ChannelAddressWord):存放通道程序内存地址的通道地

址字寄存器;和•CCW(ChannelCommandWord):存放通道指令的通道命令字的命令寄存器.通道类型一种通道的指令格式如下字段:操作码、程序连接标志P(标识该指令执行后是否还有通道指令)、记录连接标志R(标识本条是独立记录,还是与下一条同属一条记录)、传送数据的主存地址和

传送的数据字节个数:通道类型操作码PR字节计数内存地址WRITEWRITEWRITEWRITEWRITEWRITE00000000111180140603002502508131034583020001850720这二块内容写成另一个记录最后一条通道指令[例]通道程序举例:操作码、程序

连接标志P、记录连接标志R和主存地址:这三块内容写成一个记录CPU至少有三条控制IO的指令:1)启动IO指令2)测试IO指令3)停止IO指令通道的工作过程:CPU向I/O通道发出一条I/O指令,给出所要执行的

通道程序的首地址和要访问的I/O设备。执行通道程序,控制指定设备完成CPU指定的I/O任务。完成传输后向CPU请求中断。CPU可与设备并行操作的程度最高。上述的四种设备控制方式,可总结出四种数据传输方式:•程序查询方式,•程序中断方式,•DMA方式

•通道方式。6.2I/O软件的组成基本思想:I/O软件按分层的思想构建,较低层的软件为较高层软件提供调用接口和服务,使较高层软件独立于硬件,为用户提供使用设备的统一接口。•Linux系统的:•ls命令•各种存储器,磁盘,软盘,U盘都能正确工作。1。向用户提供设备的独立性。不受设备类型和具体设备

型号以及台号的限制。如:SORT<input>output程序sort的数据不管来自硬盘,软盘,都可以正常工作。2。设备的统一命名。一个设备的名字是一个简单的字符串,如DOS的PRN,是一个逻辑设备。通常用户程序中不直接使用

物理设备名(或设备的物理地址),而使用逻辑设备名。逻辑设备是物理设备属性的抽象表示,对应一类设备如print是LK1600针式打印机还是喷墨打印机。。。。操作系统将逻辑设备映射为物理设备。这正是系

统提供设备独立性的一个具体体现。一、I/O软件的目标3.出错处理。数据传输中的错误应尽可能地在接近硬件层上处理,可重试多次。4.设备分配根据系统中设备各自的属性,制定分配策略。设备分配可以采用静态分配和动态

分配方式。静态分配简单,不会引起死锁,但设备利用率低。动态分配设备利用率高,但分配不当会引起死锁。5.提供设备的I/O缓冲。I/O软件按层次构成:用户层I/O接口,独立于设备的软件,设备驱动程序,中断处理程序,I/O硬

件。一、I/O软件的目标二、I/O软件的实现功能1.中断处理程序中断服务过程向用户透明(看不见)。•I/O操作完成后,产生一个中断。•CPU响应中断,保护被中断进程现场,分析中断原因,转去执行相应的中断处理程序。•中断处理这部分工作完全由操作系统完成,用户

进程根本不知道中断的产生和处理过程。2、设备驱动程序•是与设备密切相关的代码。每个设备驱动程序处理一种类型设备。•接收来自与设备无关的上层软件的抽象请求,并执行这个请求。•若驱动程序进程空闲,则立即执行该请求;若忙,则将其排到

等待处理的请求队列中。•将上层软件的抽象请求转换成向控制器发送的命令和设备的具体参数,由设备控制器控制设备完成操作。有通道时,它能根据I/O要求,自动构成通道程序。•一般情况下,驱动程序进程等待命令完成,阻塞自

己,直到中断处理时将其唤醒;有时驱动进程不必等待,如滚屏操作,把几个字节写到控制器中即可。3、设备独立的软件实现所有设备都共同需要的功能:•(1)向用户提供使用设备的统一接口。•(2)负责把设备的符号名映射到正确的设备驱动上。负

责设备命名。例如在Unix系统中,终端设备名/dev/tty01,唯一地说说明了一个特别文件的i节点,这个节点包含主设备号,和次设备号。主设备号用来分配正确的终端设备的驱动程序,次设备号作为读写那个设备的参数。•(3)负责设备

保护。如,UNIX的I/O设备作为特别文件用“rw”位进行保护。•(4)提供与设备无关的块尺寸。如磁盘:较高层的软件只与抽象磁盘打交道,独立于物理扇区的尺寸而使用等长的逻辑块。•(5)缓冲技术。缓和CPU与I/O设备间速度不匹配的矛盾,减少对CPU的中

断频率,提高CPU与I/O设备之间的并行性。缓冲区种类有:硬缓冲和软缓冲硬缓冲是在设备控制器中设置缓冲区,通常数量有限。软缓冲是在内存中开辟一部分空间,数量较大。通常使用由多个缓冲区组成的缓冲池,系统统一管理。单缓冲:在设备和CPU之间设置一个缓冲器。设备相处理机交换

数据时,先把被交换数据写入缓冲器,然后,需要数据的设备或处理机从缓冲器取定数据。由于缓冲器属于临界资源,即不允许多个进程同时对一个缓冲器操作,因此,尽管单缓冲能匹配设备相处理机的处理速度,但是,设备和设备之间不能通

过单缓冲达到并行操作。双缓冲:解决两台外设、打印帆和终端之间的并行操作问题的办法是设置双缓冲。有了两个缓冲器之后,CPU可把输出到打印机的数据放入其中一个缓冲器(区)、让打印机慢慢打印;然后,它又可以从另一个为终端设置的缓冲器(区)中读取所需要的输入

数据。•(6)负责设备分配。设备分配原则:–独占设备:只能以独占方式分配。利用率低。–共享设备:通常采用动态分配方式。即允许多个作业或进程同时(交叉)使用;–虚拟设备:提高独占设备共享使用的一种技术。是通过利用共享设备的一部分空间来模拟独占

设备来实现的。当有进程要输入输出时,由系统先为它分配一部分外存空间,将数据记到分配的外存空间,以便进程运行(或完成)时,去提取(或向设备输出)数据。这就是SPOOLING技术。•(7)报告错误信息。设备驱动程序处理不了的错误(重试几次操作后,

仍有错误)。4、用户空间的I/O软件•在用户程序通常由I/O库过程实现输入和输出。•库过程是I/O系统的组成部分。[例]用户c语言可以包括如下程序中的系统调用:count=read(fd,buffer,nbytes);把文件描述符fd的文件读入buffer,读入长度nbytes•Spoolin

g技术(SimultaneousPeripheralOperationsOn-line)系统是为了满足多进程对独占设备共享而引入的一种技术,是用户级I/O软件,但不是以库过程实现的。SPOOLING系统由三部分组成:预输入程序、井管理程序和缓输出程序。•井管理程序当作业

的进程执行过程中要求启动某台设备输入或输出时,操作系统截获该请求并调出井管理程序控制从相应的输入井读或向共享设备的输出井(缓冲区)写。而输入井和输出井上的信息是以文件的形式记录的。•预输入程序负责将输入设备上的信息预先输入到可共享设备的缓冲区(输入井),并将存放信息的位置记录下来。•缓输出程序当进

程计算完成或设备空闲时,系统负责调用缓输出程序从磁盘缓冲区(输出井)读信息向打印机或其它输出设备输出,有序完成每个用户的打印任务。5、I/O系统的分层:用户空间的I/O软件独立于设备的软件设备驱动程序中断处理程序硬件I/O请求

I/O完成后的回答6.3设备分配一、设备分配中的数据结构–逻辑设备表LUT–系统设备表SDT–设备表DT–控制器控制表COCT–通道控制表CHCTSDTDTCOCTCHCT1.逻辑设备表当进程用逻辑设备名来

请求分配I/O设备时,系统为它分配物理设备,并在该表中建立一个表项,填上信息。逻辑设备名物理设备名驱动程序入口地址/dev/print/dev/tty3510242046………2.系统设备表SDT是系统范围的数据结构,记录了系统中全部的设备情况。每个设备占一个表项。表项1表项i……设备类型设

备标识符设备队列的等待指针驱动程序入口3.设备表DT系统为每一个设备配置一张表,用于记录该设备的情况。DT1DTiDTn设备类型设备标识符设备状态:忙/闲重复执行次数或时间指向与之相连控制器控制表指针设备队列的队首指针请求本设备而未得到

满足的进程的PCB排成一个队列4.控制器控制表COCT系统为每一个控制器都设置了一张用于记录本控制器情况的控制器控制表。控制器标识符控制器状态:忙/闲指向与控制器连接的通道表指针控制器队列的队首指针控制器队列的队尾指针

5.通道控制表CHCT通道标识符通道状态:忙/闲与通道连接的控制器表首址通道队列的队首指针通道队列的队尾指针二、独占设备的分配程序1.进程使用逻辑设备名请求I/O设备。2.分配设备:据物理名查SDT,找出其DT,查设备

状态,若忙,则将该进程的PCB挂在设备队列上等待。3.分配控制器:设备分配给该进程后,再由DT找与其相连的COCT,查状态,若忙,则将该进程的PCB挂在控制器的等待队列上等待。4.分配通道:在该COCT中找到与其相连的CHCT,查状态字,若忙,则挂在该通道的等待队列上等待。否则,

分配成功。6.4磁盘管理1.提高磁盘I/O速度的主要途径:–选择性能好的磁盘。如IDE、SCSI–采用好的调度算法–设置磁盘高速缓冲区6.4磁盘管理2.磁盘上的信息是通过多重编址定位的,其定位信息包括驱动器号、柱面(磁道)号、磁头(

盘面)号及扇区号。3.服务一个磁盘请求的总时间由下面三者之和组成:寻道时间(seek)、旋转时间(Latency)、读写传输时间。4。调度算法磁盘调度主要是针对磁盘寻道进行的。因为它花费的时间约占80%以上。•先来先服务(FCFS)14375

3656798122124185((FCFSFCFS))先来先服务的磁盘调度先来先服务的磁盘调度共计移动:640个磁道例如,假定一开始读/写磁头位于53号磁道。有如下的一个磁盘请求序列,其磁道号为98,185,37,122,14,124,65,67•最短寻道时间优

先SSTF(Shortest-Seek-Time-First):选择移动距离最小的请求磁道调度。上述的请求,最接近磁头所在位置(53)的请求是第65号磁道,下一个是67号磁道,之后至37,接下去的服务顺序是14,98,122,124,最后是185。这种算法使得磁头移动距离的总和只有238个磁

道,是FCFS算法的三分之一。•扫描法(SCAN,电梯算法):磁头从一端向另一端移动,读/写头在移动时,随时处理所到达的磁道上的服务请求。直到另一端,磁头方向反转。。。•循环扫面法:与扫描发相似,只是回程不处理任何请求。•扫描法的变种--查询(LOOK)及循环查询(C

-LOOK)算法143753656798122123185循环查寻法(C-LOOK)磁盘调度共计移动:354个磁道磁盘调度算法的比较•SSTF(最短寻道时间优先)是公认的最有吸引力的算法•扫描法(SCAN,电梯算法)对于磁盘负担较重的系统更适合。

•但是任何算法都与进程对磁盘的请求数量和方式紧密相关。当磁盘请求队列中的请求数量很少超过一个时,所有的算法是等效的,这时最好采用FCFS算法。•注意的是:文件的分别配算法将大大的影响磁盘的服务请求。•目录即索引块的

位置也很重要。5、磁盘的错误处理磁盘在运转过程中容易出现各种各样的错误。常1程序性的错误(例如,申请不存在的扇区),系统给出错误信息;2瞬时检查和错误(例如,磁头上有灰尘),重复执行3永久性的检查和错误(磁盘块物理损坏),给出错误信息4由于磁臂的机械故障引起寻道错误(例如,寻找柱面6,磁

臂却定位到柱面7),给出错误信息。5.控制器错误:如控制器拒绝接受指令独立磁盘的冗余阵列(RAID:RedundantArrayofIndependentDisk)。它使用多个磁盘,组织磁盘上存储的数据,以提高数据传输的速度和改善磁盘的容错能力。目前公认的RAID

方案有RAID0~RAID7。(p141)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失效时不会使对数据的访问受损失而开发出一定水平的数据保护技术。RAID就是一种由多块廉价磁盘构成的冗余阵列,在操作系统下是作为一个独立的大型存储设备出现。6

、提高磁盘性能和容错的机制RAID可以充分发挥出多块硬盘的优势,可以提升硬盘速度,增大容量,提供容错功能够确保数据安全性,易于管理的优点,在任何一块硬盘出现问题的情况下都可以继续工作,不会受到损坏硬盘的影响。RAID0即DataStripping数据分条技术

。RAID0可以把多块硬盘连成一个容量更大的硬盘群,可以提高磁盘的性能和吞吐量。RAID0没有冗余或错误修复能力,成本低,要求至少两个磁盘,一般只是在那些对数据安全性要求不高的情况下才被使用。6、提高磁盘性能和容错的机制

RAID1RAID1称为磁盘镜像:把一个磁盘的数据镜像到另一个磁盘上,在不影响性能情况下最大限度的保证系统的可靠性和可修复性上,具有很高的数据冗余能力,但磁盘利用率为50%,故成本最高,多用在保存关键性

的重要数据的场合。RAID2电脑在写入数据时在一个磁盘上保存数据的各个位,同时把一个数据不同的位运算得到的海明校验码保存另一组磁盘上,由于海明码可以在数据发生错误的情况下将错误校正,以保证输出的正确。但海明码使用数据冗余技术,使得输出数据的速

率取决于驱动器组中速度最慢的磁盘。RAID2控制器的设计简单。6、提高磁盘性能和容错的机制提高磁盘性能和容错的机制•RAID3使用一个专门的磁盘存放所有的校验数据,而在剩余的磁盘中创建带区集分散数据的读写操作。当一个完好的RAID3系统中读取数据,只需要在数据存储盘中找到相应的数据块进行

读取操作即可。但当向RAID3写入数据时,必须计算与该数据块同处一个带区的所有数据块的校验值,并将新值重新写入到校验块中,这样无形虽增加系统开销。当一块磁盘失效时,该磁盘上的所有数据块必须使用校验信息重新建立,如果所要读取的数据块正好位于已经损坏的磁盘,则必须同时读取同一带区中的所有其它数据块

,并根据校验值重建丢失的数据,这使系统减慢。当更换了损坏的磁盘后,系统必须一个数据块一个数据块的重建坏盘中的数据,整个系统的性能会受到严重的影响。提高磁盘性能和容错的机制•RAID4RAID4即带奇偶校验码的独立磁盘结构,RAID4和RAID3很象,它对数据的访问

是按数据块进行的,也就是按磁盘进行的,每次是一个盘,RAID4的特点和RAID3也挺象,不过在失败恢复时,它的难度可要比RAID3大得多了,控制器的设计难度也要大许多,而且访问数据的效率不怎么好。•RAID5把校验块分散到所有的数据盘中。RAID

5使用了一种特殊的算法,可以计算出任何一个带区校验块的存放位置。这样就可以确保任何对校验块进行的读写操作都会在所有的RAID磁盘中进行均衡,从而消除了产生瓶颈的可能。RAID5的读出效率很高,写入效率一般,块式的集体访问效率不错。RAID5提高了系统可靠性,但对数据

传输的并行性解决不好,而且控制器的设计也相当困难。提高磁盘性能和容错的机制•RAID6RAID6即带有两种分布存储的奇偶校验码的独立磁盘结构,它是对RAID5的扩展,主要是用于要求数据绝对不能出错的场合,使用了二种奇偶校验值,所以需要N+2个磁盘,同时对控制器的设计变得十分复杂,写入速

度也不好,用于计算奇偶校验值和验证数据正确性所花费的时间比较多,造成了不必须的负载,很少人用。提高磁盘性能和容错的机制•RAID7RAID7即优化的高速数据传送磁盘结构,它所有的I/O传送均是同步进行的,可以分别控制,这样提高了系统的并行性和系统访问数据的速度;每个磁盘都带有高速

缓冲存储器,实时操作系统可以使用任何实时操作芯片,达到不同实时系统的需要。允许使用SNMP协议进行管理和监视,可以对校验区指定独立的传送信道以提高效率。可以连接多台主机,当多用户访问系统时,访问时间几乎接近于0。但如果系统断电,在高速缓冲存储器内的数据就会全部丢失,因此需要和

UPS一起工作,RAID7系统成本很高。6.5终端根据与操作系统的通信方法将终端分为两大类:(1)RS-232标准接口(2)存储映射终端•RS-232终端由键盘和显示器构成,通过串行接口一次一位地与计算机系统进行通信。这些终端使用25针的连接器,其中一针用于发送数据,一针用于接收数据,一针接地,其

余22针用于各种控制功能(大部分未使用)计算机和终端以字符作为处理对象。终端控制器需要完成字符到位串与位串到字符的转换。•智能CRT终端实际是一微小型计算机它们带有一个CPU和存储器,通常在EPROM或ROM中存储了复杂的程序,以实现光标的定位操作;•从操作系统的角度

,玻璃终端和智能终端的主要不同点是:后者理解特殊的转义序列•最高档的智能终端中包含了与主计算机功能相当的CPU,以兆字节为单位的内存,以及大的屏幕。终端硬件存储映射终端•本身是计算机的组成部分•通过专用存储器接口与计算机通信,称为视频RAM(vide

oRAM),是计算机地址空间的一部分,CPU对它的寻址与对其他存储器的寻址是一样•视频控制器(videocontroller),从视频RAM中取出字符,产生用于驱动显示器视频信号•当CPU将一个字符写到视频RAM时,在一帧显示周期内显示在屏幕上•速度快•广泛使用位映射终端•视频RAM

每一位直接控制屏幕上的每一像素•800×1024个像素的屏幕需100k字节RAM(彩色更多)•提供更加灵活的字符的各种字体和尺寸•允许多窗口•可制作任意图形存储映射终端输入软件键盘驱动程序的基本工作:收集键盘的输入信息到缓冲区当用户程序要从终

端读时,把输入缓冲区的信息传给用户程序键盘驱动程序两种处理方式(1)面向字符,原始(raw)模式将接收的输入不加修改地进行传送,从终端读信息的程序得到一系列原始的ASCII码序列。(2)面向行的加工(cooked)模式键盘驱动程序负责处理一行内的编辑,并将

修改过的行传送给用户程序输出软件RS-232终端与存储终端的驱动程序完全不同RS-232终端•输出缓冲区与每个终端相关联•程序向终端写时,先将输出拷贝到缓冲区•需要回送的输入也拷贝到缓冲区•当输出全部复制到缓冲区(或者缓冲区满)时,向终端输出第一个字符,驱动程序睡眠等待

,产生中断时,输出下一个字符,如此循环,直到输出完成存储映像终端•从用户空间一次取出一个要显示的字符•然后,直接送入视频RAM•波特率:每秒钟传输的2进制位数。9.6k/秒,缓冲区两个字节(一个字),问多少时间中断一次。本章重点按数据的组织方式的设备分类按设备的分配方式的设备分

类根据系统对设备的控制方式,主存与设备之间的四种传输方式通道的分类,通道与CPU之间的通信方式什么是设备的独立性?I/O软件的设计目标本章重点SPOOLING系统的设计目标以及它的功能模块的组成磁盘的编址参数及影响磁盘速度的三个参数I/O软件层各模块

主要实现的功能磁盘调度的策略•作业P151:6,12,15,17习题7•填空•(1)I/O软件的四个层次是_________,_________,___________,_________。•(2)设备控制器与处理机连线可分__________,_________和________三类。•(3)设

备控制器与设备之间有_______,__________,和状态三类信号。•(4)设备控制器的I/O逻辑用于实现对设备的控制接收________,和地址译码.•(5)处理机对I/O设备的控制方式有__________,______________,____,_____

_四种。习题7•(1)用户软件层设备独立软件层设备驱动程序中断处理程序•(2)数据线、地址线和控制线•(3)数据、控制和状态•(4)CPU的命令•(5)轮询方式,中断方式,直接存储器访问方式(DMA方式)和通道方式习题7•二。判断正误•(1)系

统不允许同一用户进程同时使用多台I/O设备并行工作。•(2)引入缓冲的主要目的主要是提高CPU的利用率。•(3)操作系统采用缓冲池技术一般是通过硬件实现的。•(4)由于独占设备在一段时间内只允许一个进程使用,因此并发进程无法交叉使用这类设备。•(5)磁盘是用来存放

文件和数据的,因此可以说磁盘是仅仅用于文件存储的设备。习题7•(1)错,从磁盘上打印文件就同时使用两台设备。•(2)错,主要解决速度不匹配问题。•(3)错,通过软件实现。•(4)正确。•(5)错,磁盘还可以做虚

拟存储器的一部分作为交换区。习题7•6下列工作各是在四层I/O软件的哪一层上实现的?•(1))•(2))•(3))•(4))•(5)为了打印,把二进制整数转换成ASCII码()1.设备驱动2独立于设备的软件层3设备驱动4独立

于设备的软件层5用户空间的I/O软件层•采用SPOOLing技术的目的是(A)。•A.提高独占设备的利用率B.提高主机效率•C.减轻用户编程负担D.提高程序的运行速度••缓冲技术用于(A)。•A、提高主机和设备交换信息的速度•B、提供主、辅存接口•C、提

高设备利用率•D、扩充相对地址空间习题6•6_13假设移动头磁盘有200个磁道(从0号到199号)。目前正在处理143号磁道上的请求,而刚刚处理结束的请求是125号,如果下面给出的顺序是按FIFO排成的等待服务86,147,91,177,94,150,102,75,130那么,用

下列各种磁盘调度算法来满足这些请求所需的总磁头移动量是多少?答:FCFS:125143--86--147--91--177--94--150--102--75--130习题6•满足这些请求所需的总磁头移动量=(143-86)+(147-86)+(147-91)+(17

7-91)+(177-94)+(150-94)+(150-102)+(102-75)+(130-75)=57+61+56+86+83+56+48+27+55=529•SSTF(最短寻到时间优先):12514

3--147--150--130--102--94--91--86--75--177•满足这些请求所需的总磁头移动量=(147-143)+(150-147)+(150-130)+(130-102)+(102-94)+(94-9

1)+(91-86)+(86-75)+(177-75)=7+75+102=184•(3)SCAN(扫描算法):125143--147--150--177--199--130--102--94--91--86--75习题7•满足这些请求所需的总磁头移动量=(199-

143)+(199-75)=56+124=180•(4)LOOK:125143--147--150--177--75--86--91--94--102--130•满足这些请求所需的总磁头移动量=(177-143)+(177-75)

+(130-75)=34+102+55=191•(5)C-SCAN(循环扫面算法):125143--147--150--177--0--75--86--91-94--102--130满足这些请求所需的总磁头移动量=(177-1

43)+(177-0)+(130-0)=34+177+130=341••磁盘请求以13、34、27、5、63、10、48、16磁道的序列到达磁盘驱动器。寻道时移动一个磁道需要8ms。假设磁头的起始位置位于磁道18,朝大磁道号方向移动。分别

采用最短寻道时间优先算法和循环访问算法,求磁道的访问顺序和平均寻道时间?答:最短寻道时间优先算法:访问顺序:18—16—13—10—5—27—34—48—63=(18-5)+(63-5)=71;寻道时间:71*8=568ms

循环查询法(不到头)18—27—34—48—63—5—10—13—16=(63-18)+(63-5)+(16-5)=45+58+11=114;寻道时间=118*8=944ms•6-15某文件系统存储空间共有80个柱面,20道/柱面,6块/磁道,每块1kB,用位视图表示。每张

位视图64个字,其中4个字包含控制信息。位视图1表示占用,0表示空闲。试给出分配和回收一个盘块的计算公式。答:每柱面块数:20*6=120块该系统磁盘块数:80*120=9600块每张位图为63个字,4个字是控制信息,假定每个字包

含2B为16位,则位图可表示块数:(64-4)*16=960块。总块数9600块,一张位图管理960块,需9600/960=10张位图,用0—9编号。(1)计算分配一个盘块的公式:相对块号=位图张号*960+字号*16+位号柱面号=

(相对块号/每柱面块数)的商=(相对块号/120)的商。•磁道号=(相对块号/每柱面块数)的余数/6的商。•扇区号=(相对块号/每柱面块数)的余数/6的余数•(2)回收一个盘块的计算公式:•首先将三维地址转为

相对块号:•相对块号=柱面号*120+磁道*6+扇区号•字号=(相对块号/16)的商•位号=(相对块号/16)的余数•由于一张位图包括60个有效字(64-4)•为图的张号=(字号/60)的商。•(字号/60)的余数为位图中的字号•位号=(相对块号/16)余数。•

在利用RS-232串口进行通信时,其通信速率为9.6Kb/s(b为bit)。如果通信串口中设置了一个16位寄存器作为缓冲寄存器,这意味着每隔(C)时间便要中断一次CPU。•A.0.8msB.0.1msC.1.6msD.0.2ms•

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?