devswchg 内核服务
用途
更改设备开关表中的设备开关入口点。
语法
参数
| 项 | 描述 |
|---|---|
| 德夫诺 | 指定将更改的设备的 主要和次要设备号 。 |
| TYPE | 指定要改变的设备开关入口点。 类型 参数可具有下列其中一个值:
|
| 纽丰克 | 指定设备交换入口点的新值。 |
| 奥尔德丰克 | 指定必须返回设备交换机入口点的旧值。 当有条件地改变设备开关入口点时,使用此参数来指定与当前设备开关入口点进行比较的函数。 |
描述
在 德夫斯沃德 内核服务添加设备交换表项后, 德夫施格 内核服务会更改设备交换入口点 (函数指针) 的值。 由 类型 参数指定的设备交换机入口点设置为 纽丰克 参数的值。 在由 奥尔德丰克 参数寻址的内存中返回其先前值。 对于每个调用,只能更改一个设备开关项。
在 devswadd 内核服务添加设备切换表条目之后, devswchg 内核服务还支持有条件地更新设备切换入口点 (函数指针)。 条件更新意味着,当当前设备开关入口点与 oldfunc 参数寻址的内存中指定的函数指针值匹配时,由 type 参数指定的设备开关入口点将设置为 newfunc 参数的值。 当函数指针不匹配时,将不会更新设备开关入口点,并且将在由 oldfunc 参数寻址的内存中返回当前设备开关入口点值。 每次调用只能有条件地更改一个设备切换表项。
如果 devswchg 内核服务由于除条件更新失败以外的任何错误而失败,那么未定义 oldfunc 参数所引用的值。
执行环境
德夫施格 内核服务只能从 流程 环境中进行调用。
返回值
| 项 | 描述 |
|---|---|
| 重大安全事件数量 | 指示操作成功。 |
| EINVAL | 指示 Type 参数无效,或者没有为条件更新指定 oldfunc 参数。 |
| ENODEV | 指示未定义由 德夫诺 参数指定的设备切换项。 |
| EPERM | 指示当前设备开关入口点与 oldfunc 参数寻址的内存中指定的函数指针不匹配。 |