Jump to content

Control Program Functions: Difference between revisions

From EDM2
Ak120 (talk | contribs)
m mistyped DosQFHandState
Ak120 (talk | contribs)
structure
Line 1: Line 1:
__NOTOC__
__NOTOC__
== Control Programming Interface ==
Some general information is available at [[Control Program]] page.
Some general information is available at [[Control Program]] page.  


==File Management==
===File Functions===
*[[DosClose]] - Closes a file handle
*[[DosCopy]] - Copies a file or subdirectory
*[[DosDelete]] - Deletes a file
*[[DosEditName]] - Transforms a file name
*[[DosMove]] - Moves a file or subdirectory
*[[DosOpen]] - Gets a handle to a file, pipe, or device
*[[DosRead]] - Reads from a file, pipe, or device
*[[DosSetFileInfo]] - Sets information for an open file
*[[DosSetFileLocks]] - Locks and unlocks a range in a file
*[[DosSetFilePtr]] - Moves the position of the file pointer
*[[DosSetFileSize]] - Changes the size of a file
*[[DosSetPathInfo]] - Sets information for a file or subdirectory
*[[DosSetVerify]] - Enables write verification
*[[DosWrite]] - Writes data to a file, pipe, or device
===File Handle Functions===
*[[DosDupHandle]] - Duplicates a file handle
*[[DosQueryFHState]] - Gets the file handle state
*[[DosQueryHType]] - Gets the handle type
*[[DosSetFHState]] - Sets the file handle state
*[[DosSetMaxFH]] - Sets the maximum number of file handles
===File Query Functions===
*[[DosEnumAttribute]] - Gets the name and size of a file object's extended attributes
*[[DosQueryFileInfo]] - Gets information for an open file
*[[DosQueryPathInfo]] - Gets information for a file or subdirectory
*[[DosQuerySysInfo]] - Gets values of system variables
*[[DosQueryVerify]] - Determines whether or not write verification is enabled
===Directory Search (FileFind) Functions===
*[[DosFindClose]] - Ends a search for matching file objects
*[[DosFindFirst]] - Begins a search for matching file objects
*[[DosFindNext]] - Continues a search for matching file objects
===Directory and Disk Functions===
*[[DosCreateDir]] - Creates a subdirectory
*[[DosDeleteDir]] - Deletes an empty subdirectory
*[[DosQueryCurrentDir]] - Gets the current directory
*[[DosQueryCurrentDisk]] - Gets the current drive
*[[DosSetCurrentDir]] - Sets the current directory
*[[DosSetDefaultDisk]] - Sets the default drive
===Environment and Search Path Functions===
*[[DosScanEnv]] - Gets information for a file or subdirectory
*[[DosSearchPath]] - Scans environment variable
*DosQueryPathInfo - Searches along a specified path
*DosSetPathInfo - Sets information for a file or subdirectory
===Extended LIBPATH Search Path Functions===
*[[DosQueryExtLIBPATH]] - Queries the search path for Dynamic Link Library, which is either before or after LIBPATH search
*[[DosSetExtLIBPATH]] - Sets a search path for Dynamic Link Library, either before or after LIBPATH search
==Memory Management==
===Memory Functions===
*[[DosAllocMem]] - Allocates a private memory object within the virtual address space
*[[DosFreeMem]] - Frees a private or shared memory object from the virtual address space of the process
*[[DosQueryMem]] - Obtains information about a range of pages within the virtual address space of the subject process
*[[DosSetMem]] - Commits or decommits a range of pages within a memory object, or alters their protection
===Memory Suballocation Functions===
*[[DosSubAllocMem]] - Suballocates a block of memory from a heap that was previously initialized
*[[DosSubFreeMem]] - Frees a block of memory that was previously suballocated
*[[DosSubSetMem]] - Initializes a heap for suballocation, or  increases the size of a previously initialized heap
*[[DosSubUnsetMem]] - Terminates the use of a heap
===Shared Memory Functions===
*[[DosAllocSharedMem]] - Allocates a shared memory object within the virtual address space
*[[DosGetNamedSharedMem]] - Obtains access to an existing named shared memory object
*[[DosGetSharedMem]] - Obtains access to an existing shared memory object
*[[DosGiveSharedMem]] - Gives a target process access to an existing shared memory object
===Thread Local Memory Functions===
*[[DosAllocThreadLocalMemory]] - Allocates a block of memory that is unique, or local, to a thread
*[[DosFreeThreadLocalMemory]] - Frees a block of thread-local memory
==Program Execution Control==
===Thread Control Functions===
*[[DosCreateThread]]
*[[DosEnterCritSec]]
*[[DosExit]] - Terminates thread execution in the current process
*[[DosExitCritSec]] - Enables thread switching for the current process
*[[DosGetInfoBlocks]]
*[[DosKillThread]]
*[[DosResumeThread]]
*[[DosSetPriority]]
*[[DosSuspendThread]]
*[[DosWaitThread]]
===Process Control Functions===
*[[DosExecPgm]] - Executes another program as a child process
*[[DosExitList]] - Defines a list of routines to be executed when the current process ends
*[[DosKillProcess]]
*[[DosWaitChild]] - Waits for a child process to end
===Session Control Functions===
*[[DosSelectSession]]
*[[DosSetSession]] - Sets the status of a child session
*[[DosStartSession]] - Starts an unrelated or child session
*[[DosStopSession]] - Terminates one or all child sessions
==Semaphore Functions==
===Event Semaphore Functions===
*[[DosCloseEventSem]] - Closes an event semaphore
*[[DosCreateEventSem]] - Creates an event semaphore
*[[DosOpenEventSem]] - Opens an event semaphore for use
*[[DosPostEventSem]] - Posts an event semaphore
*[[DosQueryEventSem]]
*[[DosResetEventSem]] - Resets an event semaphore
*[[DosWaitEventSem]]
===Mutex Semaphore Functions===
*[[DosCloseMutexSem]]
*[[DosCreateMutexSem]]
*[[DosOpenMutexSem]]
*[[DosQueryMutexSem]]
*[[DosReleaseMutexSem]]
*[[DosRequestMutexSem]]
===Muxwait Semaphore Functions===
*[[DosAddMuxWaitSem]]
*[[DosCloseMuxWaitSem]]
*[[DosCreateMuxWaitSem]]
*[[DosDeleteMuxWaitSem]]
*[[DosOpenMuxWaitSem]]
*[[DosQueryMuxWaitSem]]
*[[DosWaitMuxWaitSem]] - Waits for a muxwait semaphore to clear
==Pipe Functions==
===Named-Pipe Functions===
*[[DosCallNPipe]]
*[[DosConnectNPipe]]
*[[DosCreateNPipe]] - Creates a named pipe
*[[DosDisConnectNPipe]]
*[[DosPeekNPipe]]
*[[DosQueryNPHState]]
*[[DosQueryNPipeInfo]]
*[[DosQueryNPipeSemState]]
*[[DosSetNPHState]] - Resets the blocking mode and the read mode of a named pipe
*[[DosSetNPipeSem]] - Attaches a shared event semaphore to a local named pipe
*[[DosTransactNPipe]] - Writes to a duplex message pipe, then reads from it
*[[DosWaitNPipe]] - Waits for an instance of a named pipe to become available
===Unnamed-Pipe Functions===
*DosClose - Closes a file or pipe
*[[DosCreatePipe]] - Creates an unnamed (anonymous) pipe
*DosDupHandle, DosOpen, DosRead, DosWrite
==Queue Functions==
*[[DosCloseQueue]] - Closes a queue
*[[DosCreateQueue]] - Creates a queue
*[[DosOpenQueue]] - Opens a queue
*[[DosPeekQueue]]
*[[DosPurgeQueue]]
*[[DosQueryQueue]] - Returns the number of elements in a queue
*[[DosReadQueue]]
*[[DosWriteQueue]] - Writes an element to a queue
==Timer Functions==
*[[DosAsyncTimer]]
*[[DosSleep]] - Suspends the current thread for a specified time interval
*[[DosStartTimer]]
*[[DosStopTimer]]
==Error Management Functions==
*[[DosErrClass]]
*[[DosError]] - Disables and enables hard-error and exception pop-up messages
==Exception Handling Functions==
*[[DosRaiseException]] - Raises an exception
*[[DosSetExceptionHandler]] - Registers an exception handler
*[[DosUnsetExceptionHandler]]
*[[DosUnwindException]]
===Signal Exception Functions===
*[[DosAcknowledgeSignalException]]
*[[DosSendSignalException]]
*[[DosSetSignalExceptionFocus]] - Sets keyboard signal focus
===Must-Complete Functions===
*[[DosEnterMustComplete]] - Enters a must-complete section of code
*[[DosExitMustComplete]] - Exits a must-complete section of code
==Device I/O Functions==
*[[DosBeep]]
*[[DosDevConfig]]
*[[DosDevIOCtl]]
*[[DosPhysicalDisk]]
File System Functions Used to Perform I/O to Devices:
*DosClose
*DosOpen
*DosRead
*DosWrite
==Message Management Functions==
*[[DosGetMessage]]
*[[DosInsertMessage]]
*[[DosPutMessage]] - Sends a message to an output file or device
*[[DosQueryMessageCP]] - Retrieves a message file list of code pages and language identifiers
==Code Page Management Functions==
===Code Page Functions===
*[[DosQueryCp]]
*[[DosSetProcessCp]] - Sets the code page of a process
===Country Dependent Functions===
*[[DosMapCase]]
*[[DosQueryCollate]]
*[[DosQueryCtryInfo]]
*[[DosQueryDBCSEnv]]
*DosQueryMessageCP
==Debugging Functions==
*[[DosDebug]] - Used by one process to control another for debugging purposes
==Dynamic Linking Functions==
*[[DosFreeModule]] - Frees the reference to the dynamic link module for the process
*[[DosLoadModule]] - Loads a dynamic link module, and returns a handle for the module
*[[DosQueryModuleHandle]]
*[[DosQueryModuleName]]
*[[DosQueryProcAddr]] - Returns the address of the specified procedure within a dynamic link module
==Dos...==
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
*[[DosAliasMem]] [[Image:Conf.gif]]
*[[DosQueryMemState]] [[Image:Conf.gif]]
*[[DosListIO]]
*[[DosListIOL]]
*[[DosQueryAppType]]
*[[DosQueryProcType]]
*[[DosResetBuffer]]
=== Date/Time ===
=== Date/Time ===
* [[DosGetDateTime]]
* [[DosGetDateTime]]
* [[DosSetDateTime]]
* [[DosSetDateTime]]
=== Device I/O ===
* [[DosBeep]]
* [[DosDevConfig]]
* [[DosDevIOCtl]]
* [[DosListIO]]
* [[DosListIOL]]
* [[DosPhysicalDisk]]
* [[DosTmrQueryFreq]]
* [[DosTmrQueryFreq]]
* [[DosTmrQueryTime]]
* [[DosTmrQueryTime]]
=== Dynamic Linking Library ===
* [[DosFreeModule]]
* [[DosLoadModule]]
* [[DosQueryAppType]]
* [[DosQueryModuleHandle]]
* [[DosQueryModuleName]]
* [[DosQueryProcAddr]]
* [[DosQueryProcType]]


=== Error Management ===
=== Error Management ===
* [[DosErrClass]]
* [[DosError]]
* [[DosDebug]]
* [[DosSuppressPopUps]]
* [[DosSuppressPopUps]]
* [[DosDumpProcess]]  [[Image:Conf.gif]]
* [[DosDumpProcess]]  [[Image:Conf.gif]]
Line 38: Line 250:
=== Exception Management ===
=== Exception Management ===
* [[DosQueryModFromEIP]] [[Image:Conf.gif]]
* [[DosQueryModFromEIP]] [[Image:Conf.gif]]
* [[DosRaiseException]]
* [[DosSetExceptionHandler]]
* [[DosUnsetExceptionHandler]]
* [[DosUnwindException]]
* [[Dos16QueryModFromCS]] [[Image:Conf.gif]]
* [[Dos16QueryModFromCS]] [[Image:Conf.gif]]
==== Must Complete Management ====
* [[DosEnterMustComplete]]
* [[DosExitMustComplete]]
==== Signaling Exception Management ====
* [[DosAcknowledgeSignalException]]
* [[DosSendSignalException]]
* [[DosSetSignalExceptionFocus]]


=== File Systems/File Management ===
=== File Systems/File Management ===
==== Directory Searching ====
* [[DosFindClose]]
* [[DosFindFirst]]
* [[DosFindNext]]
==== Directory ====
* [[DosCreateDir]]
* [[DosDeleteDir]]
* [[DosQueryCurrentDir]]
* [[DosSetCurrentDir]]
==== Disk ====
* [[DosQueryCurrentDisk]]
* [[DosSetDefaultDisk]]
==== Environment/Path ====
* [[DosScanEnv]]
* [[DosSearchPath]]
===== LibPath =====
* [[DosQueryExtLIBPATH]]
* [[DosSetExtLIBPATH]]
==== File Manipulation ====
==== File Manipulation ====
* [[DosCancelLockRequest]]  
* [[DosCancelLockRequest]]  
* [[DosCancelLockRequestL]] [[Image:Conf.gif]]
* [[DosCancelLockRequestL]] [[Image:Conf.gif]]
* [[DosClose]]
* [[DosProtectClose]]
* [[DosProtectClose]]
* [[DosCopy]]
* [[DosDelete]]
* [[DosEditName]]
* [[DosForceDelete]]
* [[DosForceDelete]]
* [[DosMove]]
* [[DosOpen]]
* [[DosOpenL]] [[Image:Conf.gif]]
* [[DosOpenL]] [[Image:Conf.gif]]
* [[DosProtectOpen]]
* [[DosProtectOpen]]
* [[DosProtectOpenL]] [[Image:Conf.gif]]
* [[DosProtectOpenL]] [[Image:Conf.gif]]
* [[DosRead]]
* [[DosReplaceModule]] [[Image:Conf.gif]]
* [[DosReplaceModule]] [[Image:Conf.gif]]
* [[DosProtectRead]]
* [[DosProtectRead]]
* [[DosSetFileInfo]]
* [[DosProtectSetFileInfo]]
* [[DosProtectSetFileInfo]]
* [[DosSetFileLocks]]
* [[DosSetFileLocksL]] [[Image:Conf.gif]]
* [[DosSetFileLocksL]] [[Image:Conf.gif]]
* [[DosProtectSetFileLocks]]
* [[DosProtectSetFileLocks]]
* [[DosProtectSetFileLocksL]] [[Image:Conf.gif]]
* [[DosProtectSetFileLocksL]] [[Image:Conf.gif]]
* [[DosSetFilePtr]]
* [[DosSetFilePtrL]] [[Image:Conf.gif]]
* [[DosSetFilePtrL]] [[Image:Conf.gif]]
* [[DosProtectSetFilePtr]]
* [[DosProtectSetFilePtr]]
* [[DosProtectSetFilePtrL]] [[Image:Conf.gif]]
* [[DosProtectSetFilePtrL]] [[Image:Conf.gif]]
* [[DosSetFileSize]]
* [[DosSetFileSizeL]] [[Image:Conf.gif]]
* [[DosSetFileSizeL]] [[Image:Conf.gif]]
* [[DosProtectSetFileSize]]
* [[DosProtectSetFileSize]]
* [[DosProtectSetFileSizeL]] [[Image:Conf.gif]]
* [[DosProtectSetFileSizeL]] [[Image:Conf.gif]]
* [[DosSetPathInfo]]
* [[DosSetVerify]]
* [[DosWrite]]
* [[DosProtectWrite]]
* [[DosProtectWrite]]


==== File Handle Manipulation ====
==== File Handle Manipulation ====
* [[DosDupHandle]]
* [[DosQueryFHState]]
* [[DosProtectQueryFHState]]
* [[DosProtectQueryFHState]]
* [[DosQueryHType]]
* [[DosResetBuffer]]
* [[DosResetBuffer]]
* [[DosSetFHState]]
* [[DosProtectSetFHState]]
* [[DosProtectSetFHState]]
* [[DosSetMaxFH]]
* [[DosSetRelMaxFH]]
* [[DosSetRelMaxFH]]


==== File Querying ====
==== File Querying ====
* [[DosEnumAttribute]]
* [[DosProtectEnumAttribute]]
* [[DosProtectEnumAttribute]]
* [[DosQueryFileInfo]]
* [[DosQueryFileMode]] [[image:Att.gif]] [[image:Vraag.gif]] [https://books.google.com.ec/books?id=u7WbsmbttwYC&pg=PT372&lpg=PT372&dq#v=onepage&q&f=false]
* [[DosQueryFileMode]] [[image:Att.gif]] [[image:Vraag.gif]] [https://books.google.com.ec/books?id=u7WbsmbttwYC&pg=PT372&lpg=PT372&dq#v=onepage&q&f=false]
* [[DosProtectQueryFileInfo]]
* [[DosProtectQueryFileInfo]]
* [[DosQueryPathInfo]]
* [[DosQuerySysState]] [[Image:Conf.gif]]
* [[DosQuerySysInfo]]
* [[DosQuerySysState]]   [[Image:Conf.gif]]
* [[DosQueryVerify]]
* [[DosPerfSysCall]]
* [[DosPerfSysCall]]
* [[DosGetProcessorStatus]]   [[Image:Conf.gif]]
* [[DosGetProcessorStatus]] [[Image:Conf.gif]]
* [[DosSetProcessorStatus]]   [[Image:Conf.gif]]
* [[DosSetProcessorStatus]] [[Image:Conf.gif]]
* [[DosQueryABIOSSupport]]   [[Image:Conf.gif]]
* [[DosQueryABIOSSupport]] [[Image:Conf.gif]]


==== File System Functions ====
==== File System Functions ====
Line 144: Line 299:
* [[DosSetFSInfo]]
* [[DosSetFSInfo]]
* [[DosShutdown]]
* [[DosShutdown]]
=== Memory Management ===
* [[DosAliasMem]] [[Image:Conf.gif]]
* [[DosAllocMem]]
* [[DosFreeMem]]
* [[DosQueryMem]]
* [[DosQueryMemState]] [[Image:Conf.gif]]
* [[DosSetMem]]
==== Heap Memory ====
* [[DosSubAllocMem]]
* [[DosSubFreeMem]]
* [[DosSubSetMem]]
* [[DosSubUnsetMem]]
==== Shared Memory ====
* [[DosAllocSharedMem]]
* [[DosGetNamedSharedMem]]
* [[DosGetSharedMem]]
* [[DosGiveSharedMem]]
==== Thread local Memory ====
* [[DosAllocThreadLocalMemory]]
* [[DosFreeThreadLocalMemory]]
=== Message Management ===
* [[DosGetMessage]]
* [[DosInsertMessage]]
* [[DosPutMessage]]
* [[DosQueryMessageCP]]
=== National Language/Code Page ===
* [[DosQueryCp]]
* [[DosSetProcessCp]]
* [[DosMapCase]]
* [[DosQueryCollate]]
* [[DosQueryCtryInfo]]
* [[DosQueryDBCSEnv]]
=== Pipes ===
* [[DosCreatePipe]]
==== Named Pipes ====
* [[DosCallNPipe]]
* [[DosConnectNPipe]]
* [[DosCreateNPipe]]
* [[DosDisConnectNPipe]]
* [[DosPeekNPipe]]
* [[DosQueryNPHState]]
* [[DosQueryNPipeInfo]]
* [[DosQueryNPipeSemState]]
* [[DosResetBuffer]]
* [[DosSetNPHState]]
* [[DosSetNPipeSem]]
* [[DosTransactNPipe]]
* [[DosWaitNPipe]]
=== Queues ===
* [[DosCloseQueue]]
* [[DosQueryQueue]]
* [[DosWriteQueue]]
==== Server ====
* [[DosCreateQueue]]
* [[DosPeekQueue]]
* [[DosPurgeQueue]]
* [[DosReadQueue]]
==== Client ====
* [[DosOpenQueue]]


=== Resource Management ===
=== Resource Management ===
* [[DosFreeResource]]
*[[DosFreeResource]]
* [[DosGetResource]]
*[[DosGetResource]]
* [[DosQueryResourceSize]]
*[[DosQueryResourceSize]]
 
=== Semaphores ===
==== Event Semaphores ====
*[[DosCloseEventSem]]
*[[DosCreateEventSem]]
*[[DosOpenEventSem]]
*[[DosPostEventSem]]
*[[DosQueryEventSem]]
*[[DosResetEventSem]]
*[[DosWaitEventSem]]
 
====Mutex Semaphores ====
*[[DosCloseMutexSem]]
*[[DosCreateMutexSem]]
*[[DosOpenMutexSem]]
*[[DosQueryMutexSem]]
*[[DosReleaseMutexSem]]
*[[DosRequestMutexSem]]
 
====MuxWait Semaphores ====
*[[DosAddMuxWaitSem]]
*[[DosCloseMuxWaitSem]]
*[[DosCreateMuxWaitSem]]
*[[DosDeleteMuxWaitSem]]
*[[DosOpenMuxWaitSem]]
*[[DosQueryMuxWaitSem]]
*[[DosWaitMuxWaitSem]]
 
=== Processes/Threading ===
*[[DosExit]]
*[[DosGetInfoBlocks]]
*[[DosSetPriority]]
 
==== Processes ====
*[[DosEnterCritSec]]
*[[DosExecPgm]]
*[[DosExitCritSec]]
*[[DosExitList]]
*[[DosKillProcess]]
*[[DosWaitChild]]


==== Threads ====
==== Threads ====
*[[DosCreateThread]]
*[[DosCreateThread2]] [[Image:Conf.gif]]
*[[DosCreateThread2]] [[Image:Conf.gif]]
*[[DosKillThread]]
*[[DosQueryThreadAffinity]] [[Image:Conf.gif]]
*[[DosQueryThreadAffinity]] [[Image:Conf.gif]]
*[[DosQueryThreadContext]]
*[[DosQueryThreadContext]]
*[[DosResumeThread]]
*[[DosSetThreadAffinity]] [[Image:Conf.gif]]
*[[DosSetThreadAffinity]] [[Image:Conf.gif]]
*[[DosSleep]]
*[[DosVerifyPidTid]] [[Image:Conf.gif]]
*[[DosSuspendThread]]
*[[DosVerifyPidTid]]   [[Image:Conf.gif]]
*[[DosWaitThread]]
 
=== Session Management ===
*[[DosSelectSession]]
*[[DosSetSession]]
*[[DosStartSession]]
*[[DosStopSession]]
 
=== Timer ===
*[[DosAsyncTimer]]
*[[DosStartTimer]]
*[[DosStopTimer]]


=== VDD ===
=== VDD ===
Line 287: Line 316:
*[[DosOpenVDD]]
*[[DosOpenVDD]]
*[[DosRequestVDD]]
*[[DosRequestVDD]]
</div>


==Kbd, Mou, Vio==
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
===Keyboard functions===
===Keyboard functions===
*[[KbdCharIn]]
*[[KbdCharIn]]
Line 365: Line 397:
*[[VioGetState]]
*[[VioGetState]]
*[[VioSetState]]
*[[VioSetState]]
</div>


==== Advanced VIO ====
===Advanced VIO===
*[[VioAssociate]]
*[[VioAssociate]]
*[[VioCreateLogFont]]
*[[VioCreateLogFont]]
Line 377: Line 410:
*[[VioSetDeviceCellSize]]
*[[VioSetDeviceCellSize]]
*[[VioShowPS]]
*[[VioShowPS]]
</div>


=== Icon Legend===
=== Icon Legend===
Line 466: Line 498:


==== File Handle Manipulation ====
==== File Handle Manipulation ====
* [[DosDupHandle|DosDupHandle]]
* [[DosSetMaxFH|DosSetMaxFH]]
* [[DosSetMaxFH|DosSetMaxFH]]
* [[DosBufReset|DosBufReset]]
* [[DosBufReset|DosBufReset]]
Line 540: Line 571:
* [[DosQNmPHandState|DosQNmPHandState]]
* [[DosQNmPHandState|DosQNmPHandState]]
* [[DosSetNmPHandState|DosSetNmPHandState]]
* [[DosSetNmPHandState|DosSetNmPHandState]]
=== Queues===
* [[DosCloseQueue|DosCloseQueue]]
* [[DosQueryQueue|DosQueryQueue]]
* [[DosWriteQueue|DosWriteQueue]]
==== Server====
* [[DosCreateQueue|DosCreateQueue]]
* [[DosPeekQueue|DosPeekQueue]]
* [[DosPurgeQueue|DosPurgeQueue]]
* [[DosReadQueue|DosReadQueue]]
==== Client ====
* [[DosOpenQueue|DosOpenQueue]]


=== Resource Management ===
=== Resource Management ===
Line 591: Line 608:
* [[DosGetPPID|DosGetPPID]]
* [[DosGetPPID|DosGetPPID]]
* [[DosGetInfoSeg|DosGetInfoSeg]]
* [[DosGetInfoSeg|DosGetInfoSeg]]
==== Threads====
* [[DosCreateThread|DosCreateThread]]
* [[DosResumeThread|DosResumeThread]]
* [[DosSleep|DosSleep]]
* [[DosSuspendThread|DosSuspendThread]]


=== Session Management===
=== Session Management===

Revision as of 21:02, 29 August 2017

Some general information is available at Control Program page.

File Management

File Functions

File Handle Functions

File Query Functions

Directory Search (FileFind) Functions

Directory and Disk Functions

Environment and Search Path Functions

  • DosScanEnv - Gets information for a file or subdirectory
  • DosSearchPath - Scans environment variable
  • DosQueryPathInfo - Searches along a specified path
  • DosSetPathInfo - Sets information for a file or subdirectory

Extended LIBPATH Search Path Functions

  • DosQueryExtLIBPATH - Queries the search path for Dynamic Link Library, which is either before or after LIBPATH search
  • DosSetExtLIBPATH - Sets a search path for Dynamic Link Library, either before or after LIBPATH search

Memory Management

Memory Functions

  • DosAllocMem - Allocates a private memory object within the virtual address space
  • DosFreeMem - Frees a private or shared memory object from the virtual address space of the process
  • DosQueryMem - Obtains information about a range of pages within the virtual address space of the subject process
  • DosSetMem - Commits or decommits a range of pages within a memory object, or alters their protection

Memory Suballocation Functions

  • DosSubAllocMem - Suballocates a block of memory from a heap that was previously initialized
  • DosSubFreeMem - Frees a block of memory that was previously suballocated
  • DosSubSetMem - Initializes a heap for suballocation, or increases the size of a previously initialized heap
  • DosSubUnsetMem - Terminates the use of a heap

Shared Memory Functions

Thread Local Memory Functions

Program Execution Control

Thread Control Functions

Process Control Functions

Session Control Functions

Semaphore Functions

Event Semaphore Functions

Mutex Semaphore Functions

Muxwait Semaphore Functions

Pipe Functions

Named-Pipe Functions

Unnamed-Pipe Functions

  • DosClose - Closes a file or pipe
  • DosCreatePipe - Creates an unnamed (anonymous) pipe
  • DosDupHandle, DosOpen, DosRead, DosWrite

Queue Functions

Timer Functions

Error Management Functions

Exception Handling Functions

Signal Exception Functions

Must-Complete Functions

Device I/O Functions

File System Functions Used to Perform I/O to Devices:

  • DosClose
  • DosOpen
  • DosRead
  • DosWrite

Message Management Functions

Code Page Management Functions

Code Page Functions

Country Dependent Functions

Debugging Functions

  • DosDebug - Used by one process to control another for debugging purposes

Dynamic Linking Functions

Dos...

Date/Time

Error Management

Exception Management

File Systems/File Management

File Manipulation

File Handle Manipulation

File Querying

File System Functions

Resource Management

Threads

VDD

Kbd, Mou, Vio

Keyboard functions

Mouse functions

Video I/O functions

Advanced VIO

Icon Legend

  • : It seems that these functions were not implemented on the OS/2 4.5 Toolkit.
  • : These functions were documented on the Addendum of the OS/2 4.5 Toolkit.
  • : More information is required on this function.

Legacy Functions

This are the legacy functions of the Control Program Interface API. This functions are supposed to be replaced by the newer ones, but some of these are still required for older programs to work or because some newer functions weren't implemented correctly.

Date / Time

Device I/O

Dynamic Linking Library

Monitor functions

Dynamic Link Library

Error Management

Exception Management

File Systems/File Management

Directory Searching

Directory

Disk

Enviroment/Path

File Manipulation

File Handle Manipulation

File Querying

File System Functions

Memory Management

Heap Memory

Message Management

National Language/Code Page

Pipes

Named Pipes

Resource Management

Semaphores

MuxWait Semaphores

Processes/Threading

Processes

Session Management

Screen Group

Quickhelp

Timer

Addressing

Spool

To SORT

Keyboard functions

Mouse functions

Video I/O functions

Advanced VIO

Legend

  • : More information is required on this function. Information was not available on CP1 or PRCP books.

References

Title Author Year Document Ref. Links
Control Program Programming Guide and Reference IBM 1996 CP1.INF, CP2.INF, CP3.INF PDF, INF 1 INF 2 INF 3
API Addendum Volume 1 (PowerPC Edition) IBM APIBAS.INF
Legacy OS/2 Programming Reference IBM PRCP.INF