## Input/Output Device Driver Reference

[prev][next][parent][TOC]

### APM Subsystem

The OS/2 APM Subsystem provides the support hub for the OS/2 Power Management Architecture. The APM Subsystem provides both Category OCh Generic IOCtl interfaces for specialized applications (such as Power object ) and an inter-device-driver communication (IDC) programming interface for APM-aware device drivers. Both the generic IOCtl and IDC interfaces are defined later in this section of the document.

The OS/2 APM Subsystem is contained in two separate files, APM.SYS and VAPM .SYS. The APM.SYS file is a physical device driver (PDD) and contains the key OS/2 APM Subsystem support (BIOS interactions, IDC and IOCtl interface support, and so on). The VAPM.SYS file is a virtual device driver (VDD) and contains power management support for the DOS and WIN-OS/2 application environments. The real DOS and Windows environments utilize the APM BIOS INT 15h, Ah=53h interfaces as well as the INT 2Fh broadcast interface for power state change notifications. These DOS and Windows interfaces are not supported in the DOS and WIN-OS/2 environments by the OS/2 VAPM.SYS device driver. The VAPM.SYS support simply rejects requests made to INT 15h, Ah= 53h by setting the returned AH value to 86h, indicating power management support functions are not available.

Because the APM Subsystem (APM.SYS) is the hub of the OS/2 Power Management support, it must be specified in the CONFIG.SYS file before the other power management components. If the APM BIOS is being implemented as an OS/2 device driver, then it must appear in the CONFIG.SYS file before the APM device driver. (See APM BIOS for more details.) In addition, the APM Subsystem provides the following DEVICE= command line switches:

/B

This switch directs APM.SYS to first locate and connect to the APM ROM BIOS . If the APM ROM BIOS support is not available, then the APM Subsystem will attempt to locate and connect to a device driver implementation of the BIOS support.

/D

This switch directs APM.SYS to first locate and connect to a device driver implementation of the BIOS support. If the device driver support is not available then the APM Subsystem will attempt to locate and connect to the APM ROM BIOS support.

/V version

This switch specifies the version of APM the OS/2 APM Subsystem should support. The default is to support the highest version of APM supported by both BIOS and the APM driver. This switch allows the APM Subsystem to run at a lower APM version, perhaps for compatibility reasons.

The version parameter is specified in the form d.d , where d is a digit. The following example specifies APM version 1.0:

             /V 1.0

Note: If no DEVICE= command line switch is specified then the /B option is used as the APM.SYS default switch setting.

The APM Subsystem IDC and IOCtl programming interfaces utilize the values defined by the Advanced Power Management Specification for the Power Management Device IDs and the Power Management States. (see APM-Aware Device Drivers ). Furthermore, Power Management Event Messages are utilized in the APM Subsystem IDC and IOCtl programming interfaces.