#include
#include
#include
#include
#include
#include
#include
#include
int main ( int argc, char * argv[] )
{
int semid, pid;
int iCount = 0;
struct sembuf sop;
int semKey = 0;
int semVal = 0;
int semNo = 0;
semKey = 32;
printf ( "Deleting the semaphore set (with 4 semaphores) with semaphore set key : %d\n", semKey );
semid = semget ( semKey, 4, IPC_CREAT|0666);
if ( semid == -1 ) {
perror ( "semaphore id retrieval failed " );
exit(1);
}
int stat = semctl ( semid, 4, IPC_RMID, 0 );
if ( stat == -1 ) {
perror ( "cannot deleted the semaphore " );
exit(1);
}
printf ( "Semaphore set : %d deleted\n", semid );
int shmid;
key_t shKey = 0x1000;
shmid = shmget ( shKey, sizeof(int)*2, IPC_CREAT|0666 );
printf ( "deleting the shared memory : %d\n", shmid );
stat = shmctl ( shmid, IPC_RMID, 0 );
if ( stat == -1 ) {
perror ( "cannot deleted the shared memory " );
exit(1);
}
printf ( "Semaphore set : %d deleted!!\n", shmid );
}