【正确答案】正确答案:由于设备的工作速度很慢,CPU不知道何时把数据准备好送给主机,也担心I/O送来数据时没有及时发现,而丢失数据,因此,CPU不断把测试指令查询设备的工作是否完成、输入数据是否准备就绪,CPU执行循环程序一直检测设备接口中的状态触发器;设备没有准备好输入数据时就一直执行这种查询设备工作状态的程序,直到输入数据准备好,程序才能输入指令,取走要输入的数据。 输出数据时的状况也是类似的:CPU一直执行查询程序,测试输出设备输出的数据是否已经取走,输出工作是否已经完成,如果已经完成,CPU才能再输出下一个数据。 显然在程序查询方式中,CPU一直为I/O设备服务,不能做其他事情,因此CPU的工作效率是非常低的。
【答案解析】