IPC with pipes. Cannot Read!

IPC with pipes. Cannot Read!

Post by vidyaran » Sat, 13 Feb 1993 16:25:26



ENVIRONMENT:
SunOS 4.1.3, SparcIPC, X11R5, with olwm.

WHAT I AM TRYING TO DO:
I have a simple application, in which I am forking a
child, closing its standard output, which is redirected
to a pipe. Parent waits for input using an XtAppAddinput,
which effectively sets something rolling when something
begins to come through read end of pipe. I am using
execvp to execute some simple programs, which generate
under 4096 bytes of data(so pipe should not choke!).
child will pass its o/p  to parent, which will simply read the
data and display it.

PROBLEMS I FACE:
(1) If child tries to write really large amounts of data
    (i wish to be able to write unlimited amounts!), it
     seems to block.

(2) First write into pipe by child, if the size is small, is
    no problem. But subsequent (small sized) writes, seem to
    have some kind of a phase lag! i.e., write number 3 triggers
    output due to write number 2(in general, write i+1 triggers
    output of write i.

Any reply(preferably email, though posting here will also
do) will be apperciated!

Thanks!

Vidyaranya.

 
 
 

1. IPC message que cannot be read

Hi

Many a times I have observed the following.

An IPC message queue, let us say, currently holds the maximum
no.of messages possible. On Some UNIX systems, when this condition
occurs either while writing a partial message to the queue or
while waiting for the queue to be cleared, the receiving process
will be on an eternal loop to gain access to the queue and receive
a message.

When such a condition occurs on a time critical system, what are the
possible causes and how to circumvent such a condition and also
how to come out of such situation without killing/stopping any process ?

Thanks in Advance
OPV
Venkateswar P Oruganti

2. Q: xxgdb for Linux

3. read() does not return bytes read from FIFO - pipe.txt [1/1]

4. kernel 2.4.2

5. Problem reading from pipe ("|") using read()

6. Software for Time Sync on Solaris

7. Problem reading from pipe ("|") using read() -- Solved

8. RAID5 vs. RAID1

9. tar, streamer : "Cannot read: Cannot allocate memory"

10. IPC: Named Pipes

11. IPC with FIFO's (named pipes)

12. IPC: Named Pipes

13. SYSV stream pipe or other record IPC under Linux?