知识点讲解
 
       用户空间的I/O软件
知识路径: > 嵌入式系统软件基础知识 > 嵌入式操作系统基础知识 > 设备管理 > 设备驱动程序 > I/O软件 > 
被考次数:1次
被考频率: 低频率
总体答错率: 44%
知识难度系数:
考试要求: 掌握     
相关知识点:4个
        通常大部分的I/O软件都是包含在操作系统当中,是操作系统的一部分,但也有一小部分的I/O软件,它们运行在系统内核之外。这主要可以分为两种:
        .与用户程序进行链接的库函数。例如,在C语言中与输入/输出有关的各种库函数。不过,对于这些库函数,它们在具体实现的时候,其实是把传给它们的参数再往下传递给相应的系统调用函数,然后由后者来完成实际的输入/输出操作。
        .完全运行在用户空间当中的程序。例如,Spooling技术是在多道系统中,一种处理独占设备的方法。
        Spooling(simultaneous peripheral operations on line)是外围设备联机操作的缩写,常称为Spooling技术、假脱机技术或虚拟设备技术,它可以把一个独占的设备转变为具有共享特征的虚拟设备,从而提高设备的利用率。它的基本思想是:在多道系统当中,对于一个独占的设备,专门利用一道程序,即Spooling程序,来增强该设备的输入/输出功能。具体来说,一方面,Spooling程序负责与这个独占的I/O设备进行数据交换,这可以称为实际的I/O操作。另一方面,应用程序在进行I/O操作时,只是和这个Spooling程序交换数据,这可以称为虚拟的I/O操作。此时,它实际上是与Spooling程序当中的缓冲区打交道,从中读出数据或往里写入数据,而不是直接地跟实际的设备进行I/O操作。
        Spooling技术的优点有两个:第一,它能提供高速的虚拟输入/输出服务。应用程序的虚拟输入/输出比实际的输入/输出速度要快,因为它只是在两个任务之前的一种通信,把数据从一个任务交给另一个任务,这种交换是在内存中进行的,而不是真正地让机械的物理设备去运作,这样就能缩短应用程序的执行时间;第二,它能实现对独占设备的共享,也就是说,由Spooling程序提供虚拟设备,然后各个用户任务就可以对这个设备依次地共享使用。
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2023 All Rights Reserved
软考在线版权所有