91.515. OS-1 Fall 2010 The problems I pointed out in class with our message queue example were caused by the declaration of MSG.mtype, the message type component in the message structure I used: Previous incorrect structure declaration: typedef struct{ int mtype; char mtext[252]; } MSG;o The man page states clearly that the type field must be of type long (not int). While an int and a long are both 4 bytes on a 32 bit system, they are 4 and 8 bytes respectively on a 64 bit system, so my failure to declare mtype to be a long was the cause of our run-time problems. The correct declaration and treatment of the structure should have been: Current correct structure declaration: typedef struct{ long mtype; char mtext[252]; } MSG; This resolves the problem. The sources for client_msg.c and server_msg.c in ~bill/cs515/msg_ipc_example and at www.cs.uml.edu/~bill/cs515/msg_ipc_example have been updated to reflect the type change.