HDK Technical Reference

HDK Technical Reference
        Atomic locks
                DDI atomic locks
                ODDI atomic locks
                DDI implementation
                SDI implementation
                ODDI implementation
        Block device drivers
                DDI implementation
                ODDI implementation
                Raw I/O
        Buffered I/O buffers, allocating
                DDI functions
                ODDI functions
                DDI coding
                ODDI coding
        Bus-master devices
        C++, device drivers
        Cache coherent NUMA localization
        Channel number
        Character device drivers
                DDI implementation
                ODDI implementation
        Clock, system
                PIT-based system clock
                High-precision system clock (SCO OpenServer 5 only)
        Clone device
                DDI 8 implementation
                ODDI and pre-DDI 8 implementation
        Compiling kernel drivers
                SVR5 DDI C language compiler notes
                SCO OpenServer 5 ODDI C language compiler notes
                C++ compiler notes
        Configuration manager
        Context of a driver
        Critical code section
        Daemons associated with drivers
        Data, copying
                Accessing memory about the 4GB boundary (DDI 8)
        DDI interface versioning
                Non-conforming functionality
                Identifying interface versions being used
        Debugging kernel drivers
        Delays and busy-waits
                DDI implementation
                ODDI implementation
        Device instance
        Device number
        Dynamically-loadable kernel modules (DLKM)
                Using loadable modules
                Making modules loadable
                Managing loadable modules
                Allocating DMA memory (DDI)
                Allocating DMA memory (ODDI)
                Considerations for allocating DMA memory
                Programming the system DMA controller (DDI)
                Programming the system DMA controller (ODDI)
        DMA up to 64 bits (DDI only)
        DSP (Driver Software Package)
                SVR5 DSP files
                SCO OpenServer 5 DSP files
        Dual-ported memory
        EISA device configuration
                DDI information
                ODDI information
        Endian issues for drivers
                Coding DDI or ODDI driver for endian safety
                UDI and endian issues
        Entry-point routines
                DDI 8 entry points
                Named entry points
                STREAMS entry points
                SDI entry points
        Error handling
                DDI implementation
                ODDI implementation
        Extended SCSI addressing scheme
        Failover (Network cards)
        Header files
                System header files used in driver code
                        DDI header files
                        ODDI header files
                Driver-specific header files
        Host bus adapter (HBA)
                HBA entry point routines
        Hotplug devices
                Architecture of the hotplug subsystem
                DDI 8 changes for hotplug
        HPCI (Hot Plug Controller Interface)
                I2O split drivers model
                The Operating System Services Module OSM
                The Hardware Device Module (HDM)
                System environments
        I2O pass-through OSM (ptosm)
                Return Values
        idata (instance data)
                ivect (interrupt vector) table
                Interrupt processing
        Interrupt handlers, attaching and registering
                Attaching and registering DDI interrupt handlers
                Attaching and registering ODDI interrupt handlers
                        Dynamic interrupt registration by BTLDs
        Interrupts, edge- and level-triggered
        Interrupt sharing
                DDI implementation
                ODDI implementation
        I/O schemes
        IPLs (Interrupt Priority Levels)
                Programmable Interrupt Controller (PIC)
                How IPLs are implemented
                Minimum interrupt priority levels
        ISA bus autoconfiguration
                DDI information
        Kernel threads
        Large device support
        Large memory support (DDI 8)
        Layered device drivers
                Earlier DDI and ODDI implementations
                UDI implementation
        Locks, non-DDI
        MAC addresses
        Major and minor numbers
                Major numbers
                Minor numbers
                Using DDI major and minor numbers
                Using ODDI major and minor numbers
        MicroChannel configuration information
        MDI data
                Ethernet and IEEE 802.3 frames
                IEEE 802.5 token passing ring
        MDI ioctls
                Multicast addresses and failover
        MDI primitives
        Memory access
        Memory allocation
                DDI implementation
                ODDI implementation
                Allocating STREAMS memory
                SDI implementation
                Allocating large chunks of memory
                Allocating non-cached memory
        Memory-mapped I/O
                Mapping device memory (DDI 7)
                Mapping device memory (DDI 8)
                Mapping device memory (ODDI)
                Supporting large memory mapped regions (DDI)
        Messages, STREAMS
                Message types
                Message queuing priority
                Metrics for disk devices
                Metrics for network adapter card devices
        Modems, adding new
                Defining a new modem
                Testing the modem
        Multiplexing, STREAMS
        Multiconsole devices
        Multiprocessor systems
        Multithreaded drivers
                DDI implementation
                ODDI implementation
        Non-Maskable interrupts (NMI)
                DDI coding
                ODDI coding
        ODDI driver interface version for SCO OpenServer 5
        OSDI SCSI driver interface version for SCO OpenServer 5
                Differences between versions
        Packaging and installing SVR5 drivers
                Installing drivers
                Deferred and immediate builds
                Packaging drivers
        PC Card interface (PCMCIA)
                Querying PCI configuration space from DDI drivers
                Querying PCI configuration space from ODDI drivers
        PCU (Platform Conformance Utility)
        PDI (Portable Driver Interface)
        Plug and Play ISA interface
        Porting kernel drivers
        Printers, adding new (SVR5)
        Programmed I/O (PIO)
                Porting DOS inb and outb functionality
        Promiscuous mode
        PSM (Platform Support Module)
        Queues, STREAMS
        Resource manager database
        Scatter/gather operations
                DDI implementation
                ODDI implementation
        SCSI interface
                SVR5 implementation
                SCO OpenServer 5 implementation
        SCSI multiple channels
        SDI event handling
        SDI peripheral hot add/remove
                Coding in HBA drivers
                Coding in target drivers
                Administrative interface
                Design limitations
        SDI pass-through interface
                Using the pass-through ioctl interface
                        Pass-through ioctl interface errors
                        SCSI addressing in pass-through ioctl operations
                Using the pass-through library interface
        SDI bus timeout/reset recovery
        SDI routing
        Serial port registration
                Serial card registration
                Format of the stanza file
                Naming conventions
                Example stanza file entries
        Sleep locks
        Source routing (network drivers)
        Spin locks (DDI)
                Attributes of spin locks
                        Minimum Interrupt Priority Levels (IPLs)
                        Hierarchy values
                Locking paradigms
                Reducing contention on spin locks
                Selecting an IPL scheme for spin locks
        Spin locks (ODDI)
        STREAMS ioctls
                General ioctl processing
                I_STR ioctl processing
                Transparent ioctl processing
                Transparent ioctl messages
                I_LIST ioctl
        Subsystem and Vendor ID (PCI)
                DDI implementation
                ODDI implementation
        Switch tables
        Synchronization primitives
        Synchronization variables
                Comparison of sleep and synchronization variables
        System interface
        Target drivers (SDI)
        Target mode for SDI HBA drivers
        Test and certification suites
                DDI implementation
                ODDI implementation
                UDI implementation
        TTY devices
        UDI (Uniform Driver Interface)
        Uniplexor (UNI multiplexor)