- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* (6)负责设备分配和调度 静态分配:进程运行前,将其所需的设备一次全部分配给它。简单,不死锁,但利用率低。 动态分配:在进程运行过程中,分配设备。设备利用率高,但易引起死锁。 * 独占设备:临界资源,如打印机。 共享设备:多个进程可交叉访问。如磁盘。 虚拟设备:是指设备本身是独占设备,而经过虚拟技术处理,可以把它改造成共享设备。 用可共享的高速设备来模拟独占的慢速设备,提高独占设备的利用率。 Spooling技术是实现虚拟设备的一种技术。它利用可共享磁盘的一部分空间,来模拟独占的I/O设备。以空间换时间 * 假脱机输出:以打印机为例 Spooling实际是一种缓冲技术。进程要打印时,系统并不为它分配打印机,而是把待打印的数据缓冲到一个独立的磁盘文件上,形成待打印文件队列。之后,Spooling系统一次一个地将打印队列上的文件送打印机打印。这种技术又叫缓输出技术。 * (7)出错处理 绝大多数错误是与设备密切相关的,一般由设备驱动程序来处理。 处理设备驱动程序处理不了的错误(重试几次操作后,仍有错误)。将错误信息报告调用者。 * 大部分I/O软件都包含在操作系统中,有一小部分是由与用户程序连接在一起的库函数构成的。 [例] 用户程序中的库函数: count=read(fd, buffer, nbytes); 程序运行期间,库函数read将与该程序连接在一起形成一个可执行文件装入主存。 这些函数通常只是将系统调用时所需要的参数放在合适的位置,由系统调用实现真正的操作。如“Printf”将调用“write”系统调用。 4. 用户空间的I/O软件 * 读文件的I/O操作步骤 用户进程发出一个读文件的系统调用。 设备独立I/O软件检查参数的正确性。若正确,再检查高速缓存中有无要读的信息块。若有,则从缓冲区直接读到用户区。若无,转3) 执行物理I/O。独立于设备的I/O软件将设备的逻辑名转换成物理名,检查设备操作权限。将I/O请求排队,阻塞用户进程且等待I/O完成。 核心执行设备驱动程序,分配缓冲区,准备接收数据,且向设备控制寄存器发启动读命令。 * 设备控制器控制设备,执行数据传输。 当采用DMA控制器控制传输时,一个块传输完成,硬件产生一个中断。 CPU响应中断,转磁盘的中断处理程序。检查中断原因和设备的执行状态,若出错,则向设备驱动程序发信号,若可重试,则再启动设备重传一次;否则,向上报告错误。若传输正确,将数据传输给指定的用户进程空间,将等待进程唤醒并且放入就绪队列,等待调度。 当用户进程被调度执行时,从I/O系统调用的断点恢复执行。 * 6.2.3 同步I/O和异步I/O 同步I/O:进程发出I/O请求后阻塞等待,直到数据传输完成后被唤醒,之后才能访问被传输的数据。 异步I/O:允许进程发出I/O请求后继续运行。将来I/O完成后的通知方式:设置进程地址空间内的某个变量;通过触发信号或软件中断;进程执行流之外的某个回调函数。 对于不必进行缓冲读写的快速I/O,使用同步I/O更有效;对于需要很长时间的I/O操作,可使用异步I/O。 * 6.3 磁盘管理 1. 提高磁盘I/O速度的主要途径 选择性能好的磁盘。如 IDE、SCSI 采用好的调度算法 设置磁盘高速缓冲区 * 2. 磁盘的类型 硬盘和软盘;固定头磁盘和活动头磁盘。 固定头磁盘:每条道上都有一个读/写磁头,用于大容量磁盘,并行读/写。 移动头磁盘:每个盘面仅配有一个磁头。 3. 访问磁盘块的时间:寻道时间、旋转延迟时间、读/写传输时间。 4. 磁盘分配方法 连续分配;链接分配;索引分配 * 5. 调度算法 先来先服务:最简单,易实现,又公平合理。 最短寻道时间优先:在将磁头移向下一请求磁道时,总是选择移动距离最小的磁道。 扫描法:读/写磁头在由磁盘的一端向另一端移动时,随时处理所到达磁道上的服务请求。 SCAN:扫描(电梯法) C-SCAN:循环扫描 LOOK:查询 C-LOOK:循环查询 * 45.(7分)假设计算机系统采用C-SCAN(循环扫描)磁盘调度策略,使用2KB的内存空间记录16384个磁盘块的空闲状态。 (1)请说明在上述条件如何进行磁盘块空闲状态的管理。 (2)设某单面磁盘的旋转速度为每分钟6 000转,每个磁道有100个扇区,相邻磁道间的平均移动时间为1ms。若在某时刻,磁头位于100号磁道处,并沿着磁道号增大的方向移动,磁道号的请求队列为50、90、30、120,对请求队列中的每个磁道需读取1个随机分布的扇区,则读完这4个扇区总共需要多少时间?需要给出计算过程。 * (3)如果将磁盘替换为随机访问的Flash半导体存储器(如U盘、SSD盘等),是否有比CSCAN更高效的磁盘调
文档评论(0)