This chapter contains an alphabetic list of the Control Program functions available in the OS/2 operating system. These functions can be used in full-screen, windowed (VIO), and Presentation Manager sessions to perform basic operating-system functions, such as file input and output, memory allocation, thread control and communication, process control and communication, pipe and queue manipulation, and exception and error handling.
The following table lists the available functions.
┌───────────────────────────────┬───────────────────────────────┐ │Date and Time │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosGetDateTime │DosSetDateTime │ ├───────────────────────────────┼───────────────────────────────┤ │Debugging │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosDebug │ │ ├───────────────────────────────┼───────────────────────────────┤ │Device Handling │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosCloseVDD │DosOpenVDD │ ├───────────────────────────────┼───────────────────────────────┤ │DosDevConfig │DosRequestVDD │ ├───────────────────────────────┼───────────────────────────────┤ │DosDevIOCtl │DosTmrQueryFreq │ ├───────────────────────────────┼───────────────────────────────┤ │DosTmrQueryTime │ │ ├───────────────────────────────┼───────────────────────────────┤ │Dynamic Link Modules │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosFreeModule │DosQueryModuleName │ ├───────────────────────────────┼───────────────────────────────┤ │DosLoadModule │DosQueryProcAddr │ ├───────────────────────────────┼───────────────────────────────┤ │DosQueryModuleHandle │DosQueryProcType │ ├───────────────────────────────┼───────────────────────────────┤ │Error Processing │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosErrClass │DosError │ ├───────────────────────────────┼───────────────────────────────┤ │Exceptions │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosAcknowledgeSignalException │DosSetExceptionHandler │ ├───────────────────────────────┼───────────────────────────────┤ │DosEnterMustComplete │DosSetSignalExceptionFocus │ ├───────────────────────────────┼───────────────────────────────┤ │DosExitMustComplete │DosUnsetExceptionHandler │ ├───────────────────────────────┼───────────────────────────────┤ │DosRaiseException │DosUnwindException │ ├───────────────────────────────┼───────────────────────────────┤ │DosSendSignalException │ │ ├───────────────────────────────┼───────────────────────────────┤ │Extended Attributes │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosEnumAttribute │DosProtectEnumAttribute │ ├───────────────────────────────┼───────────────────────────────┤ │File Management - File Locking │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosCancelLockRequest │DosProtectSetFHState │ ├───────────────────────────────┼───────────────────────────────┤ │DosProtectClose │DosProtectSetFileInfo │ ├───────────────────────────────┼───────────────────────────────┤ │DosProtectOpen │DosProtectSetFileLocks │ ├───────────────────────────────┼───────────────────────────────┤ │DosProtectQueryFileInfo │DosProtectSetFilePtr │ ├───────────────────────────────┼───────────────────────────────┤ │DosProtectRead │DosProtectSetFileSize │ ├───────────────────────────────┼───────────────────────────────┤ │DosProtectQueryFHState │DosProtectWrite │ ├───────────────────────────────┼───────────────────────────────┤ │File Management │ │ ├───────────────────────────────┼───────────────────────────────┤ │General │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosClose │DosFindNext │ ├───────────────────────────────┼───────────────────────────────┤ │DosCopy │DosForceDelete │ ├───────────────────────────────┼───────────────────────────────┤ │DosCreateDir │DosMove │ ├───────────────────────────────┼───────────────────────────────┤ │DosDeleteDir │DosOpen │ ├───────────────────────────────┼───────────────────────────────┤ │DosDelete │DosRead │ ├───────────────────────────────┼───────────────────────────────┤ │DosDupHandle │DosSearchPath │ ├───────────────────────────────┼───────────────────────────────┤ │DosEditName │DosSetMaxFH │ ├───────────────────────────────┼───────────────────────────────┤ │DosFindClose │DosSetVerify │ ├───────────────────────────────┼───────────────────────────────┤ │DosFindFirst │DosWrite │ ├───────────────────────────────┼───────────────────────────────┤ │Queries │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosQueryAppType │DosQueryFileInfo │ ├───────────────────────────────┼───────────────────────────────┤ │DosQueryCurrentDir │DosQueryPathInfo │ ├───────────────────────────────┼───────────────────────────────┤ │DosQueryCurrentDisk │DosQueryHType │ ├───────────────────────────────┼───────────────────────────────┤ │DosQueryFHState │DosQueryVerify │ ├───────────────────────────────┼───────────────────────────────┤ │Settings │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosResetBuffer │DosSetFileLocks │ ├───────────────────────────────┼───────────────────────────────┤ │DosSetCurrentDir │DosSetFilePtr │ ├───────────────────────────────┼───────────────────────────────┤ │DosSetDefaultDisk │DosSetFileSize │ ├───────────────────────────────┼───────────────────────────────┤ │DosSetFHState │DosSetPathInfo │ ├───────────────────────────────┼───────────────────────────────┤ │DosSetFileInfo │DosSetRelMaxFH │ ├───────────────────────────────┼───────────────────────────────┤ │File Systems │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosFSAttach │DosQueryFSAttach │ ├───────────────────────────────┼───────────────────────────────┤ │DosFSCtl │DosQueryFSInfo │ ├───────────────────────────────┼───────────────────────────────┤ │DosPhysicalDisk │DosSetFSInfo │ ├───────────────────────────────┼───────────────────────────────┤ │General │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosBeep │DosShutdown │ ├───────────────────────────────┼───────────────────────────────┤ │Memory Management │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosAllocMem │DosGiveSharedMem │ ├───────────────────────────────┼───────────────────────────────┤ │DosAllocSharedMem │DosQueryMem │ ├───────────────────────────────┼───────────────────────────────┤ │DosAllocThreadLocalMemory │DosSetMem │ ├───────────────────────────────┼───────────────────────────────┤ │DosFreeMem │DosSubAllocMem │ ├───────────────────────────────┼───────────────────────────────┤ │DosFreeThreadLocalMemory │DosSubFreeMem │ ├───────────────────────────────┼───────────────────────────────┤ │DosGetNamedSharedMem │DosSubSetMem │ ├───────────────────────────────┼───────────────────────────────┤ │DosGetSharedMem │DosSubUnsetMem │ ├───────────────────────────────┼───────────────────────────────┤ │Message Management │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosGetMessage │DosPutMessage │ ├───────────────────────────────┼───────────────────────────────┤ │DosInsertMessage │DosQueryMessageCP │ ├───────────────────────────────┼───────────────────────────────┤ │National Language Support │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosMapCase │DosQueryCtryInfo │ ├───────────────────────────────┼───────────────────────────────┤ │DosQueryCollate │DosQueryDBCSEnv │ ├───────────────────────────────┼───────────────────────────────┤ │DosQueryCp │DosSetProcessCp │ ├───────────────────────────────┼───────────────────────────────┤ │Pipes │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosCallNPipe │DosQueryNPipeSemState │ ├───────────────────────────────┼───────────────────────────────┤ │DosConnectNPipe │DosQueryNPHState │ ├───────────────────────────────┼───────────────────────────────┤ │DosCreatePipe │DosSetNPHState │ ├───────────────────────────────┼───────────────────────────────┤ │DosCreateNPipe │DosSetNPipeSem │ ├───────────────────────────────┼───────────────────────────────┤ │DosDisConnectNPipe │DosTransactNPipe │ ├───────────────────────────────┼───────────────────────────────┤ │DosPeekNPipe │DosWaitNPipe │ ├───────────────────────────────┼───────────────────────────────┤ │DosQueryNPipeInfo │ │ ├───────────────────────────────┼───────────────────────────────┤ │Processes, Threads and Sessions│ │ ├───────────────────────────────┼───────────────────────────────┤ │DosCreateThread │DosSelectSession │ ├───────────────────────────────┼───────────────────────────────┤ │DosEnterCritSec │DosSetPriority │ ├───────────────────────────────┼───────────────────────────────┤ │DosExecPgm │DosSetSession │ ├───────────────────────────────┼───────────────────────────────┤ │DosExitCritSec │DosSleep │ ├───────────────────────────────┼───────────────────────────────┤ │DosExit │DosStartSession │ ├───────────────────────────────┼───────────────────────────────┤ │DosExitList │DosStopSession │ ├───────────────────────────────┼───────────────────────────────┤ │DosGetInfoBlocks │DosSuspendThread │ ├───────────────────────────────┼───────────────────────────────┤ │DosKillProcess │DosWaitChild │ ├───────────────────────────────┼───────────────────────────────┤ │DosKillThread │DosWaitThread │ ├───────────────────────────────┼───────────────────────────────┤ │DosResumeThread │DosQueryThreadContext │ ├───────────────────────────────┼───────────────────────────────┤ │Query System Information │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosQuerySysInfo │DosScanEnv │ ├───────────────────────────────┼───────────────────────────────┤ │Queues │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosCloseQueue │DosPurgeQueue │ ├───────────────────────────────┼───────────────────────────────┤ │DosCreateQueue │DosQueryQueue │ ├───────────────────────────────┼───────────────────────────────┤ │DosOpenQueue │DosReadQueue │ ├───────────────────────────────┼───────────────────────────────┤ │DosPeekQueue │DosWriteQueue │ ├───────────────────────────────┼───────────────────────────────┤ │Resource Objects │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosFreeResource │DosQueryResourceSize │ ├───────────────────────────────┼───────────────────────────────┤ │DosGetResource │ │ ├───────────────────────────────┼───────────────────────────────┤ │Semaphores │ │ ├───────────────────────────────┼───────────────────────────────┤ │Event Semaphores │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosCloseEventSem │DosQueryEventSem │ ├───────────────────────────────┼───────────────────────────────┤ │DosCreateEventSem │DosResetEventSem │ ├───────────────────────────────┼───────────────────────────────┤ │DosOpenEventSem │DosWaitEventSem │ ├───────────────────────────────┼───────────────────────────────┤ │DosPostEventSem │ │ ├───────────────────────────────┼───────────────────────────────┤ │Mutex Semaphores │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosCloseMutexSem │DosQueryMutexSem │ ├───────────────────────────────┼───────────────────────────────┤ │DosCreateMutexSem │DosReleaseMutexSem │ ├───────────────────────────────┼───────────────────────────────┤ │DosOpenMutexSem │DosRequestMutexSem │ ├───────────────────────────────┼───────────────────────────────┤ │Muxwait Semaphores │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosAddMuxWaitSem │DosOpenMuxWaitSem │ ├───────────────────────────────┼───────────────────────────────┤ │DosCloseMuxWaitSem │DosQueryMuxWaitSem │ ├───────────────────────────────┼───────────────────────────────┤ │DosCreateMuxWaitSem │DosWaitMuxWaitSem │ ├───────────────────────────────┼───────────────────────────────┤ │DosDeleteMuxWaitSem │ │ ├───────────────────────────────┼───────────────────────────────┤ │Timers │ │ ├───────────────────────────────┼───────────────────────────────┤ │DosAsyncTimer │DosStopTimer │ ├───────────────────────────────┼───────────────────────────────┤ │DosStartTimer │ │ └───────────────────────────────┴───────────────────────────────┘