This is perl, v5.8.0 built for i386-linux-thread-multi $ uname -r => 2.4.21-37.EL Module id = IPC::Msg CPAN_VERSION 1.00 #### #!/usr/bin/perl use strict; use warnings; use IPC::SysV qw(IPC_CREAT IPC_NOWAIT S_IRWXU S_IRWXG S_IRWXO IPC_SET); use IPC::Msg; my $msg = new IPC::Msg ("QUEUE_42", IPC_CREAT | S_IRWXU | S_IRWXG | S_IRWXO | IPC_SET); SEND: while (1) { # exit SEND if $msg->full(); # PSEUDO-CODE ONLY $msg->snd(1, pack("L a*", 1, "Hello World!")); } #### $ ipcs -q ------ Message Queues -------- key msqid owner perms used-bytes messages 0x00000000 163844 u92 777 16384 1024