Common Event Flag Cluster
A common event flag cluster is a set of 32 event flags that enable cooperating processes to post event notifications to each other.
Event flags in the cluster can be set or cleared to indicate the occurrence of an event. All event flags are contained within clusters of 32 event flags, and each process has access to four clusters (numbered 0 through 3). Two of the clusters are local to a single process. Event flag clusters 2 and 3 are called common event flag clusters and are used for interprocess synchronization. A subject may be associated with up to two common event flag clusters. Each common event flag in a cluster is referenced by an event flag number.
Contents
Naming rules
The name of the object is whatever character string was supplied as an argument to the Associate Common Event Flag Cluster system service ($ASCEFC). Remember that common event flag cluster names are qualified by your UIC group number.
Types of access
The capability class supports the following types of access:
Associate | Gives a process the right to establish an association with the named cluster so the process can access event flags |
Delete | Gives a process the right to mark a permanent event flag cluster for deletion with the Delete Common Event Flag Cluster ($DLCEFC) system service. The actual deletion occurs once all processes disassociate from the cluster. |
Control | Gives you the right to modify the protection elements of the common event flag cluster |
Template profile
The common event flag cluster class provides one template profile. Although the template assigns an owner UIC of [0,0], this value is only temporary. As soon as the object is created, the operating system replaces a 0 value with the value in the corresponding field of the creating process's UIC.
Template name | Owner UIC | Protection code |
---|---|---|
DEFAULT | [0,0] | S:AD,O:AD,G:A,W |
When the process creating the common event flag cluster supplies a prot argument to $ASCEFC that has a value of 1, then the system modifies the template so the process UIC is the owner, and the protection code denies group access.
Privilege requirements
Creation of a permanent common event flag cluster requires the PRMCEB privilege. This privilege also grants delete access for permanent clusters.
Kinds of auditing performed
The operating system can audit the following types of events:
Event audited | When audit occurs |
---|---|
Creation | When the first process to associate with a particular cluster calls $ASCEFC |
Access | Whenever subsequent callers to $ASCEFC associate with the cluster |
Deaccess | When a process calls $DACEFC or associates with another cluster or at image rundown |
Deletion | When the process calls $DLCEFC |
Permanence of the object
A common event flag cluster and its security profile need to be reset each time a system starts up.