Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Mailing Lists -> Oracle-L -> Re: shell and output redirection

Re: shell and output redirection

From: Mladen Gogala <>
Date: Fri, 2 Jul 2004 16:45:25 -0400
Message-ID: <>

On 07/02/2004 04:18:26 PM, Tanel P?der wrote:


> Ok, but if program 1 will issue a write request to the pipe now, shall it
> post process 2 and not continue before process 2 has completed?

That is a part of pipe magic. Pipe blocks when it's full. The other program will get to it, when it executes something like read(0,&buff, SIZE); Pipes are "invisible" files allocated and mapped to the root file system. (a version of WYSE Unix used to have a possibility to define the file system used for pipes. That was extremely popular trick for benchmarking, especially when PIPEFS was pointing to a solid state disk device. A company that I worked for long, long time ago used to have a small solid state device to which PIPEFS would be pointed and on which I would put redo log files. Benchmarks against other manufacturers were great!). Unix (Linux) kernel will usually allow pipes to grow few blocks before the pipe must be read. I should go and look for that part of Linux kernel, but I'm not up to the task tonight. Hasta manana. I'll be back! (imagine me in a black leather jacket, with shades on my nose).

> As I saw from your trace, shell uses pipe() to create the pipe file
> descriptors for passing on data between processes.
> What if I create a pipe manually using mknod and run my two processes
> manually, does the data streaming work exactly the same way that with
> shell-generated pipe?

It probably will have the same effect, if you do it right, but why would you do it? Real programmers don't use tools provided by shell? It's called "reinventing the wheel".

Mladen Gogala
Oracle DBA

This message is for the named person's use only.  It may contain confidential, proprietary or legally privileged information.  No confidentiality or privilege is waived or lost by any mistransmission.  If you receive this message in error, please immediately delete it and all copies of it from your system, destroy any hard copies of it and notify the sender.  You must not, directly or indirectly, use, disclose, distribute, print, or copy any part of this message if you are not the intended recipient. Wang Trading LLC and any of its subsidiaries each reserve the right to monitor all e-mail communications through its networks.
Any views expressed in this message are those of the individual sender, except where the message states otherwise and the sender is authorized to state them to be the views of any such entity.

Please see the official ORACLE-L FAQ:
To unsubscribe send email to:
put 'unsubscribe' in the subject line.
Archives are at
FAQ is at
Received on Fri Jul 02 2004 - 15:42:17 CDT

Original text of this message