This is the mail archive of the cygwin-developers mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RFC: Cygwin 64 bit?


On 6/26/2011 19:45, Corinna Vinschen wrote:
> Hi guys,
> 
> 
> I'm not sure if you agree, but as far as I can see, 32 bit systems are
> more and more reduced to a niche market, namely Netbooks and other very
> small systems.  On the Desktop, 32 bit is declining fast, in the server
> segment it's practically dead.
> 
> Given this, I'm wondering how much future Cygwin has if we stick to
> 32 bit.  I think it will be pretty limited.  In fact, we're probably
> rather late in the game.
> 
> Lately I read a bit more about how 32 and 64 bit processes can interact
> with each other on Windows, and it seems we could come up with a 64 bit
> DLL which shares all important information with its 32 bit counterpart,
> so that we could run 64 and 32 bit processes in parallel on a 64 bit
> system acting as a single system.  This would be especially important,
> given the fact that 64 bit Cygwin applications will be pretty rare in
> the beginning.
> 

Yes please, 64bit Cygwin will be very nice.

> As far as I can see what we have to do in about this order is
> 
> - Discuss certain basics.  This is probably the most crucial step.
>   For instance:
> 
>   - What name should the 64 bit DLL have?

I think they should still use the "cyg" prefix, the libtool people was
against it when I suggested using a new prefix for 64bit mingw.

>   - Where should 64 bit binaries and libs go?

Its best that if we can separate 32bit/64bit completely, so there won't
be any conflicting files.

>   - Do we define "long" as 32 bit or 64 bit type?

I suggest 32bit, they'll be some awkwardness accessing w32api at the
Cygwin backend if they're 64bit.

>   - What defines should a 64 bit Cygwin compiler define?

__CYGWIN__ and __CYGWIN64__? Just so to allow programmers to tell that
its cygwin and its 64bit.

>   - What Windows headers and link libs do we use?
> 

Bootstrap with mingw-w64? :)

> - Create a x86_64-pc-cygwin cross toolchain.
> 

Yeah, I suppose newlib has to be ported first.

> - Create x86_64 replacements for x86 code and in general try to make the
>   Cygwin code 64 bit clean where it isn't so far.
> 
> - Decide how we can integrate 64 bit stuff into the distro.  Will we have
>   a 32 bit and a distinct 64 bit distro?  Or, should we stick to a single
>   distro?  If so, how do we separate 64 and 32 bit stuff?  What is the
>   best package layout?
> 

I suggest separating them, since I don't imagine they can interact with
each other anyway.

> - Change setup to allow installation of 64 bit stuff on 64 bit systems.
> 
> This is a big project which can only work if we have help and support
> from the community.  Before we can even contemplate to start discussing,
> I would like to learn:
> 
> - How much interest do you have in a 64 bit Cygwin?
> 
> - How much interest do you have to help to make 64 bit Cygwin real?
> 
> - What part of the project would most interest you to help?  Coding
>   Cygwin?  Documentation?  Setup?  Toolchain?  You name it.
> 

I'd like to help, but I don't know much on win32 API.

Attachment: 0xED74C077.asc
Description: application/pgp-keys

Attachment: signature.asc
Description: OpenPGP digital signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]