06-05-2008
There is a kernel parameter CONFIG_POSIX_MQUEUE that turns mqueues off/on. mqueues use kernel resources.
What problem are you having?
10 More Discussions You Might Find Interesting
1. Programming
How can I increase the POSIX Msg Q parameter SC_MQ_PRIO_MAX? The maximum is defined as 32. Can I increase the number? If so, how?
Deepa (0 Replies)
Discussion started by: Deepa
0 Replies
2. UNIX for Advanced & Expert Users
Hi,
I am working closly with unix message queues i have encountered the following -
after creating the Q and start working with it (pushing & pulling) i receive the following stange parameters on the q's -
STIME=no_entry
Qnum=0
CBYTES=4140
when this happens, the Q is disabled (meaning i... (3 Replies)
Discussion started by: kel
3 Replies
3. HP-UX
Hello,
My question is related to "pipcs -qa" command under HP-UX 11i PA-RISC 64 bits.
We have a little C program that creates posix ipc message queues using the mq_open() system function.
The program fail with 'No space left on device' error when we create big queues. What is the system... (6 Replies)
Discussion started by: cadanir
6 Replies
4. Programming
Hello,
i need to write a message queue "chat server", that should work only localy.
Can anyone please help me with some ideas and peshaps code. I'm studying the UNIX IPC mechanisms right now. So far, i understand how it works but i still cannot get an idea how to write a chat programm...
... (2 Replies)
Discussion started by: etenv
2 Replies
5. Programming
Hii can anyone pls tell how to limit the max no of message in a posix message queue. I have made changes in proc/sys/fs/mqueue/msg_max
But still whenever i try to read the value of max. message in the queue using attr.mq_curmsgs (where struct mq_attr attr) its giving the default value as 10.... (0 Replies)
Discussion started by: mohit3884
0 Replies
6. Programming
Hi all,
I need help about message queues, i have a server-client program that communicates each other via msg queue, firstly server opens its msg queue and waits for msg then client opens server msg queue and its own msg queue(for receiving msg from server,clients sends msg to server msg... (7 Replies)
Discussion started by: SaTYR
7 Replies
7. Programming
Hello,
I am trying to implement posix message queue application. I am faced with an error on the mq_receive section. It says "Message too long". I've tried couple of small tweeks, but to no result. Please do suggest any rectificaitons.
mq_send section-works successfully
#include... (2 Replies)
Discussion started by: katwalatapan
2 Replies
8. Programming
in a single main() function,so need signal handling. Use Posix Message Queue IPC mechanism , can ignore the priority and other linked list message,to implement the scenario:
client:Knock Knock
server:who's there
client: Eric
Server:Eric,Welcome.
client:exit
all process terminated
... (1 Reply)
Discussion started by: ouou
1 Replies
9. Programming
Hi,
I wanted to know whether the POSIX message queues are statically allocated memory by the kernel based on the parameters specified in the open or as and when we send messages, memory are allocated?
Does the kernel reserve the specified memory for the message queue irrespective of whether... (1 Reply)
Discussion started by: sumtata
1 Replies
10. Programming
hello, I try to test the POSIX mq_open function on book unp like below:
#include "unpipc.h"
# include <mqueue.h>
int main(int argc, char **argv)
{
int c, flags;
mqd_t mqd;
flags = O_RDWR | O_CREAT;
while ((c = getopt(argc, argv, "e")) != -1) {
... (3 Replies)
Discussion started by: anpufeng
3 Replies
LEARN ABOUT OSF1
thread_terminate
thread_terminate(9r) thread_terminate(9r)
NAME
thread_terminate - General: Prepares to stop or stops execution of the specified kernel thread
SYNOPSIS
kern_return_t thread_terminate(
thread_t thread_to_terminate );
ARGUMENTS
Specifies a pointer to the thread structure associated with the kernel thread that you want to terminate. This pointer was returned in a
previous call to the kernel_isrthread or kernel_thread_w_arg routine.
DESCRIPTION
The thread_terminate routine prepares to stop or permanently stops execution of the specified kernel thread. You created and started this
kernel thread in a previous call to the kernel_isrthread or kernel_thread_w_arg routine. These routines return a pointer to the thread
structure associated with the newly created and started kernel thread. Kernel modules use this pointer as a handle to identify the specific
kernel thread that thread_terminate stops executing.
Typically, a kernel thread terminates itself. However, one kernel thread can terminate another kernel thread. A kernel thread that termi-
nates itself must call thread_halt_self immediately after the call to thread_terminate. The reason for this is that thread_terminate only
prepares the self-terminating kernel thread to stop execution. The thread_halt_self routine completes the work needed to stop execution
(by performing the appropriate cleanup work) of the self-terminating kernel thread.
Specifically, the thread_terminate routine works as follows: For terminating other kernel threads
The thread_terminate routine stops execution of the specified kernel thread, frees any resources associated with that kernel thread,
and thus makes the kernel thread unavailable. To make the kernel thread available again, you need to create it by calling ker-
nel_isrthread or kernel_thread_w_arg. A kernel thread terminates itself
The thread_terminate routine prepares to stop execution of the kernel thread that needs to terminate itself. The thread_halt_self
routine completes the work needed to stop execution of the self-terminating kernel thread by performing the appropriate cleanup
work. After you call these routines, the self-terminating kernel thread becomes unavailable until you create it again by calling
kernel_isrthread or kernel_thread_w_arg.
NOTES
You do not need to terminate every kernel thread that you create. You should not terminate a kernel thread that is waiting for some event.
The basic rule is that you should terminate only those kernel threads that you do not need anymore. For example, if a dynamically config-
ured kernel module uses kernel threads, you should terminate them in the CFG_OP_UNCONFIGURE entry point of the loadable module's configure
routine. The kernel threads are no longer needed after the module is unconfigured.
Note that the thread_terminate routine (for kernel threads that terminate other kernel threads) not only permanently stops execution of the
specified kernel thread, but it also frees any resources associated with that kernel thread; thus, this kernel thread can no longer be
used.
RETURN VALUES
Upon successfully terminating the specified kernel thread, thread_terminate returns the constant KERN_SUCCESS. If the thread structure
pointer passed to the thread_to_terminate argument does not identify a valid kernel thread, thread_terminate returns the constant
KERN_INVALID_ARGUMENT. On any other error, thread_terminate returns the constant KERN_FAILURE.
SEE ALSO
Data Structures: thread(9s)
Routines: kernel_isrthread(9r), kernel_thread_w_arg(9r), thread_halt_self(9r)
thread_terminate(9r)