[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-frameworks-devel
Subject: Re: Review Request 126161: OS X housekeeping
From: Alex Merry <alex.merry () kde ! org>
Date: 2015-11-26 18:51:03
Message-ID: 4111cc51d01fa52afdeb6b0f51899d55 () randomguy3 ! me ! uk
[Download RAW message or body]
On 2015-11-26 09:27, René J.V. Bertin wrote:
> There's something I don't really understand though: the exact same
> question you asked above.
> What's the difference between starting kwrite directly on the
> commandline (or through execve()), and dlopen'ing it? Why does the
> code go through that on Linux? Whatever that difference is, it's
> probably the reason why the approach fails on OS X.
If I recall rightly, it's a speed thing. kdeinit pre-loads some
libraries common across most KDE applications (eg: Qt5Core and Qt5Gui,
which are reasonably large). fork()+dlopen() can then make direct use of
these already-loaded libraries, whereas an exec() would have to
reload/remap them all.
I think there's also possibly some memory-usage benefits from the fact
that fork() gives you copy-on-write access to kdeinit's memory pages.
Alex
_______________________________________________
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic