X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Subject: Re: Announce: FlexDLL, flexible DLLs under Windows In-Reply-To: <4744E9AE.664E0AF8@dessent.net> To: cygwin AT cygwin DOT com Date: Thu, 22 Nov 2007 04:15:50 -0500 (EST) X-Mailer: ELM [version 2.4ME+ PL124 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="US-ASCII" Message-Id: From: Robert Kiesling X-ELNK-Trace: 0b901cbc512a9d8594f5150ab1c16ac01a238acc8405a5b0a3dfbdda2fbc0e2ead49417547942bb6350badd9bab72f9c350badd9bab72f9c350badd9bab72f9c Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com > Christopher Faylor wrote: > > > > Not an unreasonable idea, but very hard to make work when we really want > > >cygwin apps to basically be windows apps; I can't see how cygwin could support > > >e.g. an ELF loader and yet still be able to launch cygwin apps from cmd.exe > > >rather than having to fire up bash or whatever. > > > > It could theoretically do that if it had it's own loader for ELF binaries. > > Yes, probably. But then you run into the situation where you're doing > things behind the back of Windows, so to speak. The first thing that > comes to mind is the prefetching that is present in XP and later, which > reduces process startup time by recording the disk extents of all images > involved in startup so that they can be loaded all at once sequentially > the next time the process starts. The next thing is the memory > manager, which I think treats DLLs differently than generic file > mappings for the purpose of maintaining and trimming the working set. > And I wonder if there are further things that would not be possible > without specific kernel support -- unless maybe you had a real win32 > stub image for each exe/dll. > > Anyway, I don't mean to discourage anyone from trying this crazy idea, > but just pointing out why staying with PE-compliant DLLs and EXEs under > the hood has its advantages. ISTM it would be easier to add event notifiers to the shell or the app, although the implementation of that would almost certainly require a code fork. And the memory management and the practice of loading Windows apps with Unix is much better documented. AND although Cygwin is limited by its use of static libraries in that regard, the task would not be impossible. Just my 0.02. -- Ctalk Home Page: http://ctalk-lang.sourceforge.net -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/