From: dahms AT ifk20 DOT mach DOT uni-karlsruhe DOT de Subject: Re: Why is cygwin.dll? 17 Jan 1997 03:09:51 -0800 Approved: cygnus DOT gnu-win32 AT cygnus DOT com Distribution: cygnus Message-ID: <009AE7AE.8D3AAE80.7373.cygnus.gnu-win32@ifk20.mach.uni-karlsruhe.de> Original-To: jqb AT netcom DOT com Original-CC: gnu-win32 AT cygnus DOT com, dahms AT ifk20 DOT mach DOT uni-karlsruhe DOT de Original-Sender: owner-gnu-win32 AT cygnus DOT com Hi, you wrote: : Silly me; you and Barry Roberts are of course right to point out the : very significant shared memory aspect that I omitted to mention. : A staticly linked executable can of course only share among multiple : instances of itself; no pages are shared across executables : (static library routines won't even be at the same location within a : page). I used to live and breath unix kernel paging code; too much time : out of those trenches, I guess :-) I'm not sure if my English is good enough to understand whether the last remark means "yes" or "no", since modern unixes (like linux, but also VMS) do both sharing and demand paging, but then, you might have worked on one of those really old ones 8-) : Paging brings up an interesting issue: a well-organized shared library : can reduce memory usage and paging by localizing functions on the same : page that end to call each other. I don't know how many people bother : to do this, or if there are automated tools (there ought to be). For analyzing maybe gprof? But I don't know how to force ld to a specific order, if possible at all on the various platforms, or even a portable one. Not to mention alignment and cache issues... Bye, Heribert (dahms AT ifk20 DOT mach DOT uni-karlsruhe DOT de) - For help on using this list, send a message to "gnu-win32-request AT cygnus DOT com" with one line of text: "help".