Wednesday, 20 February 2013

Program:To write a c program to create a message queue with read and write permissions to write 3 messages to it with different priority numbers.

/*

Program:To write a c program to create a message queue with read and write permissions to write
        3 messages to it with different priority numbers.

        
*/

    //receiver.c
  #include
#include
#include
main()
{
int msqid,t;
int key,r;
struct mymsg
{
long type;
char mtext[512];
}msg;
key=ftok("arth.sh",78);
printf("Enter the type of the message :\n");
scanf("%ld",&msg.type);
msqid=msgget(key,IPC_CREAT|0666);
r=msgrcv(msqid,&msg,sizeof(msg),msg.type,IPC_NOWAIT);
if(r==-1)
{
printf("Message received failed\n");
}
else
{
printf("Message received successively\n");
printf("Message = %s",msg.mtext);
}
}

~

/*-------------------------------------INPUT/OUTPUT--------------------------
-bash-3.2$ cc receiver_msgqq.c
-bash-3.2$ ./a.out
Enter the type of the message :
hello
Message received successively



-bash-3.2$ ipcs

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status

------ Semaphore Arrays --------
key        semid      owner      perms      nsems

------ Message Queues --------
key        msqid      owner      perms      used-bytes   messages
0x070006ed 0          09121f0007 666        0            0
0x640011f2 32769      09121f0007 666        0            0
0xf40011f2 65538      09121f0007 666        1560         3
0x0e001c23 98307      09121f0004 666        336          3
0x070011f2 131076     09121f0007 666        0            0
0x09001a8e 163845     09121f0009 666        0            0
0x090008f2 196614     09121f0009 666        0            0
0x00000100 229383     09121f0044 666        3640         7
0x4e000410 262152     09121f0078 666        1040         2


-------------------------------------------------------------------------*/

No comments:

Post a Comment