预定义诊断设备对象类

预定义诊断设备 对象类 (PDiagDev) 标识诊断支持的资源,并提供测试资源所需的其他信息。 操作系统可识别此对象类以实现后台兼容性。 出于开发目的,请改为使用 PDiagRes

PDiagDev 对象类结构定义为:


class PDiagDev {
                    char DType[16];
                    char DSClass[16];
                    short Ports;
                    short PSet;
                    short PreTest;
                    char AttDType[16];
                    char AttSClass[16];
                    short Conc;
                    short SupTests;
                    short Menu;
                    short DNext;
                    vchar DaName[255];
                    char  Diskette[5];
                    vchar EnclDaName[255];
                    short Sysxflg;
                    char DClass[16];
                    };
参数 描述
DType 预定义的设备类型。
DSC 类 预定义的设备子类。
DC 级 预定义的设备类。
端口 定义与 PDiagRes->Ports.
PSet 定义与 PDiagRes->PSet.
PreTest 定义与 PDiagRes->PreTest.
AttDType 要在设置 端口 字段时定义的子设备的设备预定义类型。 指定的设备应包含一组包含诊断支持的设备驱动程序。
AttSClass 要在设置 端口 字段时定义的子设备的设备子类。
conc 指示在多用户方式下是否支持设备。 值如下:
DIAG_YES
该设备在多用户方式下受支持。
DIAG_NO
在多用户方式下, 支持该设备。
SupTests 标识 DA 支持的测试类型。 可以指定下列其中一种以上类型:
suptests_shr ( 0x0001 )
支持共享测试。
suptests_sub ( 0x0002 )
支持子测试。
suptests_full ( 0x0004 )
支持完整测试。
SUPTESTS_MS1 (0x0008)
用于确定 检测到设备的原因的可选过程。 通常为具有外部电源的设备指定此过程。 此过程与 "缺少资源" 菜单中的第一个选择相关联。
SUPTESTS_MS2 (0x0010)
在除去设备时执行特定于设备的操作的可选过程。 例如, DA 可能会通知子系统 (LVM) 已除去物理资源 (磁盘)。 或者 DA 可能会提供有关删除设备的警告。 如果 指定此过程,那么诊断控制器将删除设备。 如果已指定,那么 DA 应删除该设备。 通过调用设备的 Undefine 方法来删除设备。 此过程与 "缺少资源" 菜单中的第二个选项相关联。
SUPTESTS_HFT
如果设备是与图形相关的设备,请进行设置。
超级测试
设置设备是否使用诊断内核扩展 DIAGEX。 如果 DA 需要装入第二个内核扩展,那么也会使用此参数。 此实例中使用了 PDiagAtt 数据库。 必须使用类似于以下的节:

PDiagAtt:

DC 级
设备类。
DSC 类
设备 SubClass。
DType
设备类型。
指标
必须为 diag_kext
设置为内核扩展驱动程序名称。 必须位于 /usr/lib/drivers 目录中。
菜单 定义与 PDiagRes->Menu.
下一页 定义与 PDiagRes->DNext.
DaName 定义与 PDiagRes->DaName.
软盘 包含与独立诊断包的设备关联的 DA 的软盘标识。 如果 DA 位于补充磁盘上,则该值应为 "S";如果 DA 是可用作控制台设备的图形适配器,则该值应为 "3S"。
EnclDaName 定义与 PDiagRes->EnclDaName.
SysxFlg 标识在 System Exerciser 环境中运行时 DA 支持的测试类型。
SYSX_NO
如果系统试验程序不应运行 DA ,请进行设置。
SYSX_ALONE
如果不能使用同一位也设置的其他位来运行 DA ,请设置此参数。 这包括对适配器发出复位的软盘 DA ,这将在另一个软盘 DA 同时运行时导致问题。 另一个示例是与图形相关的设备,例如键盘,鼠标,平板电脑,拨号和 LPFKeys。
SYSX_交互
设置是否可以使用要测试的介质运行 DA。 这包括软盘,磁带和 CD-ROM DA。 SYSX_交互以前是 SYSX_MEDIA。
SYSX_LONG
设置 DA 运行时间是否超过一分钟。 如果没有运行较长的 DA ,那么可以使用此位来确定运行其他 DA 的次数。 不需要长时间运行的 DA 的当前循环计数为 25 个循环。