Home Libraries Author Links

system.h File Reference


Detailed Description

Specification of operating system dependent facilities.

Version:
1.11-r319
Date:
2007-11-15 17:34:59 (Tom)
Author:
Tom Michaelis
SysToMath
Wittelsbacherstr. 7
D-80469 Munich
Contact:
http://www.SysToMath.com
mailto:Tom.Michaelis@SysToMath.com
This C header file contains the declaration of functions for operating system dependent facilities. They are implemented in the C program file system.c belonging to the SysToMath Base C Library stmbase.

Definition in file system.h.

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

StmProcessSemaphore Creation and Destruction

StmProcessSemaphore stmProcessSemaphoreCreate (unsigned int value)
 Creation of a new StmProcessSemaphore object.
int stmProcessSemaphoreDestroy (StmProcessSemaphore semaphore)
 Destruction of the StmProcessSemaphore object semaphore.

StmProcessSemaphore Method Functions

int stmProcessSemaphoreAcquire (StmProcessSemaphore semaphore)
 Acquire the StmProcessSemaphore object semaphore.
int stmProcessSemaphoreTryAcquire (StmProcessSemaphore semaphore)
 Try to acquire the StmProcessSemaphore object semaphore.
int stmProcessSemaphoreTimedAcquire (StmProcessSemaphore semaphore, StmInt64 absTimeMs)
 Try to acquire the StmProcessSemaphore object semaphore till the number absTimeMs of milliseconds elapsed since the Epoch (1970-01-01).
int stmProcessSemaphoreRelease (StmProcessSemaphore semaphore)
 Release the StmProcessSemaphore object semaphore.

StmSemaphore Creation and Destruction

StmSemaphore stmSemaphoreCreate (const char *name, unsigned int value, unsigned int attach)
 Creation of a new StmSemaphore object.
int stmSemaphoreDestroy (StmSemaphore semaphore)
 Destruction of the StmSemaphore object semaphore.

StmSemaphore Method Functions

int stmSemaphoreAdjustChild (StmSemaphore semaphore)
 Adjust the StmSemaphore object semaphore after a fork system call.
const char * stmSemaphoreName (StmSemaphore semaphore)
 Get the name of the StmSemaphore object semaphore.
int stmSemaphoreAcquire (StmSemaphore semaphore)
 Acquire the StmSemaphore object semaphore.
int stmSemaphoreTryAcquire (StmSemaphore semaphore)
 Try to acquire the StmSemaphore object semaphore.
int stmSemaphoreTimedAcquire (StmSemaphore semaphore, StmInt64 absTimeMs)
 Try to acquire the StmSemaphore object semaphore till the number absTimeMs of milliseconds elapsed since the Epoch (1970-01-01).
int stmSemaphoreRelease (StmSemaphore semaphore)
 Release the StmSemaphore object semaphore.

StmMutex Creation and Destruction

StmMutex stmMutexCreate (StmBool recursive)
 Creation of a new StmMutex object.
int stmMutexDestroy (StmMutex mutex)
 Destruction of the StmMutex object mutex.

StmMutex Method Functions

int stmMutexLock (StmMutex mutex)
 Lock the StmMutex object mutex.
int stmMutexTryLock (StmMutex mutex)
 Try to lock the StmMutex object mutex.
int stmMutexTimedLock (StmMutex mutex, StmInt64 absTimeMs)
 Try to lock the StmMutex object mutex till the number absTimeMs of milliseconds elapsed since the Epoch (1970-01-01).
int stmMutexUnlock (StmMutex mutex)
 Unlock the StmMutex object mutex.

StmNamedMutex Creation and Destruction

StmNamedMutex stmNamedMutexCreate (const char *name, StmBool recursive, unsigned int attach)
 Creation of a new StmNamedMutex object.
int stmNamedMutexDestroy (StmNamedMutex mutex)
 Destruction of the StmNamedMutex object mutex.

StmNamedMutex Method Functions

int stmNamedMutexAdjustChild (StmNamedMutex mutex)
 Adjust the StmNamedMutex object mutex after a fork system call.
const char * stmNamedMutexName (StmNamedMutex mutex)
 Get the name of the StmNamedMutex object mutex.
int stmNamedMutexLock (StmNamedMutex mutex)
 Lock the StmNamedMutex object mutex.
int stmNamedMutexTryLock (StmNamedMutex mutex)
 Try to lock the StmNamedMutex object mutex.
int stmNamedMutexTimedLock (StmNamedMutex mutex, StmInt64 absTimeMs)
 Try to lock the StmNamedMutex object mutex till the number absTimeMs of milliseconds elapsed since the Epoch (1970-01-01).
int stmNamedMutexUnlock (StmNamedMutex mutex)
 Unlock the StmNamedMutex object mutex.

StmCondition Creation and Destruction

StmCondition stmConditionCreate (void)
 Creation of a new StmCondition object.
int stmConditionDestroy (StmCondition cond)
 Destruction of the StmCondition object cond.

StmCondition Method Functions

int stmConditionSignal (StmCondition cond)
 Signal one thread waiting on the StmCondition object cond.
int stmConditionBroadcast (StmCondition cond)
 Signal all threads waiting on the StmCondition object cond.
int stmConditionWait (StmCondition cond, StmMutex mutex)
 Wait for the StmCondition object cond to be signaled.
int stmConditionTimedWait (StmCondition cond, StmMutex mutex, StmInt64 absTimeMs)
 Wait for the StmCondition object cond to be signaled till the number absTimeMs of milliseconds elapsed since the Epoch (1970-01-01).

StmNamedCondition Creation and Destruction

StmNamedCondition stmNamedConditionCreate (const char *name)
 Creation of a new StmNamedCondition object.
int stmNamedConditionDestroy (StmNamedCondition cond)
 Destruction of the StmNamedCondition object cond.

StmNamedCondition Method Functions

int stmNamedConditionAdjustChild (StmNamedCondition cond)
 Adjust the StmNamedCondition object cond after a fork system call.
const char * stmNamedConditionName (StmNamedCondition cond)
 Get the name of the StmNamedCondition object cond.
int stmNamedConditionSignal (StmNamedCondition cond)
 Signal one thread waiting on the StmNamedCondition object cond.
int stmNamedConditionBroadcast (StmNamedCondition cond)
 Signal all threads waiting on the StmNamedCondition object cond.
int stmNamedConditionWait (StmNamedCondition cond, StmNamedMutex mutex)
 Wait for the StmNamedCondition object cond to be signaled.
int stmNamedConditionTimedWait (StmNamedCondition cond, StmNamedMutex mutex, StmInt64 absTimeMs)
 Wait for the StmNamedCondition object cond to be signaled till the number absTimeMs of milliseconds elapsed since the Epoch (1970-01-01).

StmThread Creation and Destruction

StmThread stmThreadCreate (void *(*routine)(void *), void *arg)
 Creation of a new StmThread object.
int stmThreadDestroy (StmThread thread)
 Destruction of the StmThread object thread.

StmThread Method Functions

int stmThreadAtExit (void(*routine)(void))
 Register a function to run at normal termination of the calling thread.
StmThread stmThreadSelf (void)
 Return the StmThread object representing the calling thread.
int stmThreadCmp (StmThread thread1, StmThread thread2)
 Compare two StmThread objects.
int stmThreadJoin (StmThread thread, void **pResult)
 Join the StmThread object thread.

StmThreadSpecific Creation and Destruction

StmThreadSpecific stmThreadSpecificCreate (void(*destructor)(void *))
 Creation of a new StmThreadSpecific object.
int stmThreadSpecificDestroy (StmThreadSpecific threadSpecific)
 Destruction of the StmThreadSpecific object threadSpecific.

StmThreadSpecific Method Functions

void * stmThreadSpecificGet (StmThreadSpecific threadSpecific)
 Return the void pointer of threadSpecific associated with the calling thread.
int stmThreadSpecificSet (StmThreadSpecific threadSpecific, const void *value)
 Set the void pointer of threadSpecific associated with the calling thread.

Defines

#define StmOnceInit   StmOnceInitImpl_
 StmOnce initializer.
#define StmSharedMemoryItemDefine(ItemType, TimeoutMs)   StmSharedMemoryItemImpl_ (ItemType, TimeoutMs)
 Definition of the abstract data type StmSharedMemory<ItemType> providing a named shared memory object of the abstract data type ItemType.

Typedefs

typedef StmOnceImpl_ StmOnce
 StmOnce type.

Enumerations

enum  StmSystemFlags {
  StmNoSystemFlag = 0x0000,
  StmAttachExisting = 0x0010,
  StmAttachCreated = 0x0020,
  StmAttach = StmAttachExisting | StmAttachCreated,
  StmAttachMask = StmAttach,
  StmKeepLocked = 0x0040
}
 Definition of the system flags describing the conditions for attaching an underlying sytem object to a StmSemaphore, StmNamedMutex or named shared memory object and if a shared memory object shall keep locked after its creation. More...

Functions

int stmGetkey (int fd)
 Read one character in raw mode without echoing and return it.
StmInt64 stmGetMsTime (void)
 Return the number of milliseconds elapsed since the Epoch (1970-01-01).
StmInt64 stmGetMsCount (void)
 Return the number of milliseconds elapsed since the very first call.
void stmSleepMs (StmDword msecs)
 Suspend the calling thread for msecs milliseconds.
int stmAtExit (void(*routine)(void))
 Register a function to run at process termination.
pid_t stmProcessSpawn (const char *path, char *const argv[], StmBool usePath)
 Create and execute a new process asynchronously.
int stmProcessWait (pid_t pid, int *result)
 Wait for the termination of a process.
int stmOnce (StmOnce *once, void(*routine)(void))
 Execute routine at most once in a process.


© Copyright Tom Michaelis 2002-2007

Distributed under the SysToMath Software License (See the accompanying file license.txt or a copy at www.SysToMath.com).