B.8.2  Loading Windows NT Drivers

Windows NT drivers are loaded either:

1.At system boot

2.Dynamically by the Win32 Service Controller

The second method is recommended. Either method requires setting up the Registry.

The streams.sys driver must be loaded prior to any driver that calls a StrmRegister* function. The path for this driver is:

%SystemRoot%\system\drivers\streams.sys

The dynamic link library that provides the user-level stream head API functions is winstrm.dll, accessed by the following path:

%SystemRoot%\system\winstrm.dll

In the following example, the Tcpipsys section of the Registry is for the driver containing the STREAMS stack. The Tcpip section is for the user-level plumbing daemon.

Example: Registry Parameters for TCP/IP Configuration

\Registry\Machine

    System

        CurrentControlSet

            Services

                Tcpipsys

                    Type = KernelDriver

                    Start = DemandLoad

                    ErrorControl = ErrorNormal

                    DependOnService = REG_MULTI_SZ "Streams"

                    ImagePath = REG_EXPAND_SZ

                                 \SystemRoot\system32\drivers\tcpip.sys

 

                Tcpip

                    Type = Win32ServiceShareProcess

                    Start = DemandLoad

                    ErrorControl = ErrorNormal

                    ImagePath = REG_EXPAND_SZ

                                %SystemRoot%\system32\LmSvcs.exe

                    DependOnService = REG_MULTI_SZ "Tcpipsys"

                    ObjectName = REG_SZ LocalSystem

                    Parameters

                        DefaultGateway = 11.1.0.1

                        DatabasePath = REG_EXPAND_SZ

                                "%SystemRoot%\system\drivers\etc"