Commands |
Action |
Comments |
---|---|---|
|
Sends |
Used to inform receiving process that a resource (such as a critical section) it awaits has become available. |
|
Sends |
Used to awake a process that has been suspended while holding a resource. [a] |
|
Test sending a signal to specified process. [b] |
Used to determine if a process owning a resource still exists; if not, the resource is available to be grabbed by another process that needs it. |
|
Remove a specified POSIX semaphore. |
Used to remove an abandoned semaphore (for example, if the last attached process terminated abnormally). |
|
Remove a specified shared memory segment. |
Used to remove an abandoned shared memory segment. Before removing the segment, gtmsecshr checks that there are no processes attached to it. |
|
Remove a specified file. |
Used to remove an abandoned socket file (for example, as a result of abnormal process termination) used for interprocess communication on platforms that do not support memory semaphores ( |
|
Writes file header of specified database file to disk. |
The ipc resources (shared memory and semaphore) created for a database file are stored in the database file header. The first process opening a database file initializes these fields while the last process to use the database clears them. If neither of them has read-write access permissions to the database file, they set/reset these fields in shared memory and gtmsecshr will write the database file header from shared memory to disk on their behalf. |
[a] Please do not ever suspend a GT.M processes. In the event GT.M finds a process suspended while holding a resource, it is sent a [b] This function is no longer needed and will be removed soon. |