Notices
Copyright Notices
Disclaimers
Trademarks
Overview of OS/2 for SMP Version 2.11
Architectural Design Objectives
Platform Specific Drivers (PSDs)
Platform Specific Driver Architecture and Structure
OS/2 Initialization
PSD Function Glossary
PSD Functions
PSD_INSTALL
PSD_DEINSTALL
PSD_INIT
PSD_PROC_INIT
PSD_START_PROC
PSD_GET_NUM_OF_PROCS
PSD_GEN_IPI
PSD_END_IPI
PSD_PORT_IO
PSD_IRQ_MASK
PSD_IRQ_REG
PSD_IRQ_EOI
PSD_APP_COMM
PSD_SET_ADV_INT_MODE
PSD Helps
PSDHLP_VMALLOC
PSDHLP_VMFREE
PSDHLP_SET_IRQ
PSDHLP_CALL_REAL_MODE
PSDHLP_VMLINTOPHYS
Application Programming Interface
DosCallPSD
Dos32TestPSD
Understanding Spinlocks
Spinlocks
Properties of Spinlocks
Spinlock Use Guidelines
Device Drivers In OS/2 for SMP V2.11
Device Driver Spinlocks
Application Considerations
Application Compatibility Requirements
Application Exploitation
New OS/2 for SMP V2.11 APIs
DosCreateSpinLock
DosAcquireSpinLock
DosReleaseSpinLock
DosFreeSpinLock
DosGetProcessorCount
DosGetProcessorIdleTime
DosGetProcessorStatus
DosSetProcessorStatus
DosAllocThreadLocalMemory
DosFreeThreadLocalMemory
DosQuerySysInfo
Avoiding Device Driver Deadlocks
Use of CLI/STI
Spinlocks Taken Out of Order
Blocking With Spinlocks Locked
Blocking
Interrupt Processing
New Device Helper (DevHlp) Routines
Physical DevHlps
DevHlp_CreateSpinLock
DevHlp_FreeSpinLock
DevHlp_AcquireSpinLock
DevHlp_ReleaseSpinLock
DevHlp_Port_IO
DevHlp_SetIRQMask
DevHlp_GetIRQMask
Virtual Device Driver Helps
VDHPortIO
New Kernel Debugger Commands
The Single Processor Utility Program
OS/2 for SMP V2.11 Tools
Appendix A
Main program
Entry stub
PSD.H
Specific header
Makefile
Glossary