Programming :: Difference Between Message Queues And Named Pipes
Mar 1, 2011recently I had been to interview where I had a question to be answered, that what are advantages and disadvantages when desiging an application in linux.
View 1 Repliesrecently I had been to interview where I had a question to be answered, that what are advantages and disadvantages when desiging an application in linux.
View 1 RepliesI am implementing an IPC mechanism using message queues (Sys V).I can receive the messages using msgrcv() function. I am wondering how can I listen on the new messages. I would like to implement a mechanism that would notify me when there is a new message in the queue for me and I will call the msgrcv() function to retrieve the message.
View 4 Replies View RelatedI have this daemon I'm writing in Python, but I still a Python n00b. I've coded the part of the daemon that does the work, but not the part that receives messages. I need a simple system so that other processes on the same (Linux) computer can occasionally send text-string messages to the daemon (without needing to stay running all the time themselves). Once in the past we did something similar by (mis)using pyliblo to listen for OSC messages coming in on a certain port. That option isn't as workable here because the pyliblo interface (as near as I can tell) requires you to know in advance specifically what messages you are expecting, and forward them to specified functions, rather than just allowing you to generically process incoming messages as you see fit.
View 1 Replies View RelatedI have a pthread waiting forever on a POSIX message queue and then call mq_close and mq_unlink on the POSIX message queue. I've found that the pthread never wakes up from it's call to mq_receive and remains blocked indefinitely. Is there a way to wakeup all pthreads blocked on a POSIX message queue after calling mq_close/mq_unlink? The goal is to include error handling during message queue deletion to avoid leaving any pthreads blocked forever.
View 2 Replies View RelatedI want to communicate between two threads, each belonging to a different process. Iam using message queues for this. I use mq_open()call. I created the queues with the same queue name starting with a '/'. But when I open the queue, the queue ID is different in both the process. What should I do so that both the process have the same queue ID?
View 1 Replies View RelatedHow to create and use named pipe on linux network.ie
client - my linux machine
server - my fren's linux machine
how to communicate between these two using named pipe created in C? do u have any similar code snippet written in C??
i got one server client application,its working fine on my machine.So i want enhance that code for networking.so help in this...
I was trying to use Message Queues for sending message from aninserted kernel module to user space. The function sys_msgsnd failedgiving the obvious error -EFAULT.However, I was able to send the message from kernel to user space when I had made the same driver part of kernel (and not inserting it).How is that possible?I am using linux.2.6.19.x (arch=ppc)I now use Netlink socket to communicate from kernel to user, but the aboveproblem seemed strange to me.
View 2 Replies View RelatedI've been using pipes and redirects for a long time and just realized that I don't know exactly how they are different. I just know that if you want to store the output in a file, then you use >. Otherwise most of the time you just use |. difference between pipes and redirects?
View 1 Replies View RelatedFor example, I have a script that writes the time to a pipe in /etc/pipe. It writes continuously in a while true loop. How long will the data in the pipe be available for reading? If I only decide to read the pipe a day later with cat /etc/pipe, will I get all the time values right from the time I started writing?
Conversely, what if my loop only wrote the time every 10 minutes. Will I be able to access everything a day later?
Finally, pretend my loop writes the time continuously (like my first example) and I read the pipe every 30 minutes. If my computer shuts down right before I read the pipe, will the pipe be empty when I reboot or will it hold all that data?
i am working on a project that uses message queues. i am able to successfully create them and they are working fine. now the problem is to close/remove message queues without software or mq_close / mq_unlink command. earlier when i worked on rh9, there is ipcs utility. we use ipcs to see all the existing message queues and ipcrm to remove them. however ipcs is not working for message queues in RHEL 5.3. Neither ipcs shows the exisiting message queues and neither we are able to use ipcrm. Plz guide to close/remove the queues with ipcs or any other command/utility from shell itself.
View 1 Replies View RelatedI need to find one RUNNING word in latest created logs.
and as soon as i will get RUNNING WORD , i have to execute another Unix Command.
I wrote following script code...
see these simple commands:
Code:
# dbus-monitor --system >> /data/eject.txt
This one works as expected ... dbus-monitor never terminates and whenever it outputs new lines, they are
[code]....
Mandriva 2009, BIND 9.5.0-P2. Named will start however I'm getting the above error as well as these:
14-Mar-2009 15:45:37.084 general: error: zone 0.in-addr.arpa/IN: loading from master file /var/lib/named/var/named/reverse/named.zero failed: file not found
14-Mar-2009 15:45:37.084 general: error: zone 0.0.127.in-addr.arpa/IN: loading from master file /var/lib/named/var/named/reverse/named.local failed: file not found
[code].....
Named shows to be running but with the errors above I know it's not running correctly. I also copied the above dir's over to /var/lib/named/var/lib/named which is where I 'believe' it's chroot'd at, though I could be wrong since I'm unfamiliar with chroot.
I'm using the Posix's mutexes in a project. I have 3 threads and 3 queues. The problem is: I used the mutexes to "protect" the access to the queues. But the first started thread monopolizes the use of the queues. See a example code:
[Code].....
I am using Cent OS 5.5 and i want configure DNS, but while configuring bind i am getting below error.
#/etc/init.d/named restart Stopping named: [ OK ]
Starting named:
Error in named configuration:
/etc/named.conf:57: open: /etc/named.root.hints: file not found[FAILED]
I am trying to read from a file named matrixA.dat that contains a matrix formatted like this:
2 x 3
1 0 2 -1 3 1
I am reading the lines in, and this is the source that I have so far: Code: #include <stdio.h>
#include <string.h>
#define DATALIMIT 17
#define DIMLIMIT 5
#define NAMELIMIT 40
[Code]...
was stored in dataA, so when I print it all I get is a newline. Why didn't it grab the 1 0 2 -1 3 1 line?
I need help getting this bourne shell script working properly. This script I found online while reading some tutorials on getting a caching name server running, which is supposed to update the rootserver hints file.
The below case statement always returns that the hints file has failed. Even though when I check the file it looks normal and I can see the NOERROR status in the returned header.
Code: dig (at)e.root-servers.net . ns >root.hints.new 2> errors
case `cat root.hints.new` in
*NOERROR*)
# It worked
[Code]..
In Python 2.6.5, I could import from mx.DateTime.ISO import ParseDateTimeUTC With 2.7 I cannot.Here is the error. My module util_lib contains the import noted above.
File "util_lib.py", line 46, in <module>
from mx.DateTime.ISO import ParseDateTimeUTC
ImportError: No module named mx.DateTime.ISO
What changes do I need to make, to import on pre-2.7 and 2.7?
I have installled eyeD3. It works on the commandline (bash). But I want use it in python3.
I did get this error:
Code: Select all>>> import eyed3
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named eyed3
Why cant I use this module for reading and writing tag information to mp3 files?
How to build a list of files under a directory that may have any permissible characters in the name, that is anything except NUL? The only possible (?) bash data structure to contain a list of such names is an array because NUL cannot be used as a list item separator so no X-separated list can safely be used; there is no "X" that might not be part of a file name. OK -- but how to populate such an array? Here's what I've tried.
Code:
#!/bin/bash
# Set up test files
dir=$(mktemp -d "/tmp/${0##*/}.XXXXXX")
touch $dir/foo $dir/bar
[code].....
My question deals with me creating a name pipe (file) in the my /group directory called chat.I then have to write a script to read from the named pipe and save data into a file called chat.log until the words End of File are passed to the program.
-When I created the named pipe file (chat) I used the mknod chat p command..Is this the correct command to create a named pipe file? -Then I'm having trouble with my script and how to make it run until the words End of File are entered in. This is what I have so far.
I am interested in learning 3D programming. The thing is, I would hate to put too much effort to learn something that doesn't have future and is dying. My favorite language at the time is Java. My goal is professional programming.
So I have several questions:
1. Should I learn JOGL or start learning C++ and do C++ openGL programming?
2. Is there a big difference between JOGL and C++ openGL programming?
3. Is it worth to learn openGL? Does it have a future?
4. Is it a big difference between openGL and directX coding?
5. If choosing Java, then JOGL or LWJGL?
Why and what is the main difference between them?
We are trying to create a message forwarder program that receive a message on Port A and pass it on t Port B. Also receive a message from Port C and Pass it on to Port D as follows.
[Code]...
i have problem in socket programming, while displaying received message in file,i got a problem... i cant able to write it in the file.... this is the code....
Code:
/* tcpserver.c */
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdio.h>
[Code]....
now my problem is run time error i can able to create file but i cant able to write file....log.txt contain nothing.... as here i have give sample code... dont say not initialising function and all.... i have initialised , please only see func1() - my problem is only not able to write msg which i got received from the client..
i've made a big update of almost 300Mb.I'had a working DNS server.Now, when i boot the box, named works and it resolves all the clients.If i make any change (enter a new client for example) and of course i restart named (service named restart), named stop but does not start again !!!In order to get a working named, i 'm obliged to reboot the box?
View 6 Replies View RelatedAlthough this is a basic stuff, but still i wonder.
Consider these two examples. code...
I wonder, why doesn't redirection work in first case? when to use redirect and when to use pipes? I have been Linux for a long time, but still this basic stuff baffles me.
File descriptors with pipes-Can someone help me with this three situations, what would happen?
a) a process open the same file twice and read through two file descriptors
b) a process does fork and both parent- and child-processes read parallell
c) two processes opens and read from same file.
has anyone seen this before, when running an ssh command as normal user via ssh i get results:
ssh picolo 'ls -d /var/sadm/pkg/* | egrep "Prod|Dev|UAT" |cut -d/ -f5;uname -r;grep -v "^#" /opt/Tivoli/lcf/dat/1/DMXAdaptiveFileSystem.dat'>>sshnotroot
and it creates file
more sshnotroot
Prod
5.10
[Code]...
Anyone know of the simple (!) command syntax to : a) download the full SQF tree from [URl].. b) maintain that tree WITHOUT having to download the whole dang thing again.
I'm 100% certain this is possible - that's exactly what source-code repository tools like subversion and git are supposed to do. But Git is complex and that site doesn't seem to have an obvious (to me) method of doing part b)
Ubuntu 10.04 lucid. sun-java6-jdk has been dropped from the Multiverse section of the Ubuntu archive. They recommend using openjdk-6 instead. Is there any difference between these 2 packages?
View 3 Replies View Related