can't share fifo between 32-bit and 64-bit Cygwins

Warren Young warren@etr-usa.com
Tue Jul 1 00:40:00 GMT 2014


On 6/30/2014 17:18, Christopher Faylor wrote:
> On Mon, Jun 30, 2014 at 10:08:24PM +0200, Marco Atzeri wrote:
>> On 30/06/2014 20:04, Nellis, Kenneth wrote:
>>>
>>> If I create a named pipe (mkfifo), as long as I write to and read from using
>>> either 32-bit Cygwin or 64-bit Cygwin, all works fine, but if I write with either
>>> one and read with the other, both processes hang.
>>
>> why do you expect such things to work ?
>> You have two separate simulation layers independent from each other.
>> Nothing is in place to pass the data from the 32 bit layer to the 64 layer.
>
> Right.  Fifos, signals, ptys - all of them are distinct entities that won't
> work between 32 bit and 64 bit or even between different Cygwin installations
> on the same system.

In principle, one could build a 32-bit cygwin1.dll that would depend on 
the existence of a 64-bit cygwin1.dll, doing nothing other than acting 
as a thunking layer.  Every 32-bit Cygwin app that makes a call on that 
DLL would actually be talking to the 64-bit DLL, which would do all the 
work.

Microsoft has done such trickery several times to my knowledge, but MS 
has lots of financial incentive to do go to the effort it takes to build 
such things.  It's not trivial.

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list