next up previous contents
Next: API extensions Up: System V IPC Design Previous: Permissions

   
Control Requirements


 
Table 43: Control requirements for manipulating semaphores.
  CONTROL REQUIREMENT(S)
CALL(S) CLASS PERM SSID TSID
semget sem create current sem
semop (sem_op==0) sem read current sem
semop (sem_op!=0) sem write current sem
semctl.SEM_STAT, sem getattr current sem
IPC_STAT,        
IPC_GETNCNT,        
IPC_GETPID        
IPC_GETZCNT        
semctl.IPC_SET sem setattr current sem
semctl.IPC_RMID sem destroy current sem
semctl.IPC_GETALL, sem read current sem
IPC_GETVAL        
semctl.IPC_SETALL, sem write current sem
IPC_SETVAL        
 


 
Table 44: Control requirements for manipulating message queues.
  CONTROL REQUIREMENT(S)
CALL(S) CLASS PERM SSID TSID
msgget msgq create current msgq
msgsnd msgq enqueue current msgq
  msg send current msg
msgrcv msgq dequeue current msgq
  msg recv current msg
msgctl.MSG_STAT, msgq getattr current msgq
IPC_STAT        
msgctl.IPC_SET msgq setattr current msgq
msgctl.IPC_RMID msgq destroy current msgq
 


 
Table 45: Control requirements for manipulating shared memory.
  CONTROL REQUIREMENT(S)
CALL(S) CLASS PERM SSID TSID
shmget shm create current shm
shmat (SHM_RDONLY) shm attach current shm
shmat (!SHM_RDONLY) shm attach current shm
  shm write current shm
shmctl.SHM_STAT, shm getattr current shm
IPC_STAT        
shmctl.IPC_SET shm setattr current shm
shmctl.IPC_RMID shm destroy current shm
shmctl.SHM_LOCK, shm lock current shm
SHM_UNLOCK        
 

The control requirements for the System V IPC system calls are shown in Table 43, Table 44, and Table 45.


next up previous contents
Next: API extensions Up: System V IPC Design Previous: Permissions