mqueuefs —
POSIX message queue file
system
To link into kernel:
options P1003_1B_MQUEUE
To load as a kernel loadable module:
kldload mqueuefs
The mqueuefs module will permit the
FreeBSD kernel to support POSIX message queue. The
module contains system calls to manipulate POSIX message queues. It also
contains a file system to implement a view for all message queues of the
system. This helps users to keep track of their message queues and make it
more easily usable without having to invent additional tools.
The most common usage is as follows:
mount -t mqueuefs null
/mnt/mqueue
where /mnt/mqueue is a mount point.
It is possible to define an entry in
/etc/fstab that looks similar to:
null /mnt/mqueue mqueuefs rw 0 0
This will mount mqueuefs at the
/mnt/mqueue mount point during system boot. Using
/mnt/mqueue as a permanent mount point is not
advised as its intention has always been to be a temporary mount point. See
hier(7) for more information on
FreeBSD directory layout.
Some common tools can be used on the file system, e.g.:
cat(1),
chmod(1),
chown(8),
ls(1),
rm(1), etc. To use only the message queue system calls, it is
not necessary for user to mount the file system, just load the module or
compile it into the kernel. Manually creating a file, for example,
“touch /mnt/mqueue/myqueue”, will
create a message queue named myqueue in the kernel,
default message queue attributes will be applied to the queue. It is not
advised to use this method to create a queue; it is better to use the
mq_open(2) system call to create a queue as it allows the
user to specify different attributes.
To see the queue's attributes, just read the file:
cat /mnt/mqueue/myqueue