trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: December 2011

Re: [trinity-devel] Unexpected kreadconfig/kwriteconfig messages

From: Nix <nix@...>
Date: Wed, 21 Dec 2011 20:54:56 +0000
On 20 Dec 2011, Bruce Dubbs said:

> Calvin Morrison wrote:
>> On 20 December 2011 12:21, Bruce Dubbs <bruce.dubbs@...> wrote:
>
>>> Trolltech did the separation in Qt4.  Their major libraries are libQtCore,
>>> libQtGui, libQtMultimedia.so, and libQtNetwork.so.  The other libraries
>>> essentially add on additional functionality.
>>>
>>> The same sort of thing could be done with Qt3, but I question the value.
>>>  If someone is building a new application, they would probably just build
>>> it with Qt4.
>
>> some applications would load faster and/or use less memory because they
>> aren't linking a giant so file and instead fewer smaller ones that they
>> actually need
>
> LOL. The libraries you refer to are already in memory. They don't have
> to be loaded again. That's what a shared library does. Even if they
> weren't in memory, the system would have to be instrumented to measure
> the change. It would be imperceptible to the user.

It would use a bit less memory, and speed up startup a bit, because
fewer relocations are required, and relocations necessarily require
making the page containing the relocations private to that process, and
writable. Even on a prelinked system, some memory would be saved,
because two relocations are required per C++ class even when prelink is
in use, and a split Qt would contain many fewer classes in the
non-X-using part than exist in all of Qt now.

(But despite that, you are surely right that the cost/benefit tradeoff
is surely not worth it for Qt3.)

-- 
NULL && (void)