Appearance
题目
下列因素中,设备分配需要考虑的是( )。
Ⅰ. 设备的类型 Ⅱ. 设备的访问权限 Ⅲ. 设备的占用状态 Ⅳ. 逻辑设备与物理设备的映射关系
错因
A
只想到了"分类型 + 看权限"两步。但实际分配还得查这台设备此刻空不空闲(Ⅲ 占用状态)——独占设备一被占,新请求就得排队;以及用户写的"打印机"这种逻辑名要解析到具体哪一台物理设备(Ⅳ 映射)。这两步少了根本分不下去。
B
可能觉得分配就是"看权限 + 看空闲"两步。忽略了 Ⅰ:独占设备(打印机、磁带)必须整体分给一个进程,共享设备(磁盘)可以多个进程同时排队,虚拟设备(SPOOLing)又是另一套,分配策略要先按类型选;也忽略了 Ⅳ 逻辑名到物理设备的映射。
C
觉得分配的核心是"找空闲资源做映射",确实是 Ⅲ + Ⅳ。但漏了 Ⅰ:得先知道是独占还是共享,策略才能定;以及 Ⅱ:用户权限不够(比如普通用户访问受保护设备)就直接拒绝,根本走不到"查空闲"那一步。
总解析
设备分配是 OS 设备管理的核心环节,从用户发起请求到拿到具体设备使用权要走完整套流程:
| 步骤 | 考虑因素 | 为什么必要 |
|---|---|---|
| ① 定分配策略 | Ⅰ 设备类型 | 独占 / 共享 / 虚拟(SPOOLing)三种分配机制完全不同 |
| ② 校验合法性 | Ⅱ 访问权限 | 用户没权限直接拒绝(如普通用户访问受保护设备) |
| ③ 选具体设备 | Ⅲ 占用状态 | 在符合条件的物理设备里找一台空闲的;都被占就挂到等待队列 |
| ④ 建立连接 | Ⅳ 逻辑 ↔ 物理映射 | 用户用的是逻辑设备名("打印机"),OS 要把它绑到具体物理设备号,后续 I/O 调用都靠这层映射定位真实硬件 |
四项依次环环相扣:少了 Ⅰ 不知道用什么策略,少了 Ⅱ 安全性失守,少了 Ⅲ 没法找到可用的,少了 Ⅳ 用户的逻辑请求落不到真实硬件上。所以全选。
最终答案是 D。