On Fri, 2017-09-08 at 18:06 -0400, Sam Varshavchik wrote: Sam: Thanks for all your effort: The following paragraph seems to be a crucial part of what you are trying to explain - but there are a few instances where I don't understand what is what. What you were writing about seems to be one of the core concepts on Unix/Linux - so I'd like to understand them. So please allow me ask: > I build and install my shared libraries, with an existing running daemon "shared libraries" = the new libraries, new versions of them, right? And the "running daemon" is the new version of it, not the "uninstalled" old one ..? > still having the old, uninstalled version mmaped in its process space. "uninstalled version" of the daemon. Right? > Sometimes I even go through a build/upgrade cycle more than once, "build/upgrade cycle": the "build/upgrade cycle" of new libraries, not the daemon - right? > before restarting the daemon. Which one: the old one, still on the system - or the newly installed one? > I have no issues, whatsoever, with testing new code "new code", again you mean the libraries? > that links to the new version, and still have the old daemon putter along, the "new version" now is the newly installed daemon. So we have two versions of that daemon on the system?, the old one and the newly installed one, right? > until I restart the new version. the "new version" of the daemon, right? > If this were actually true, I would not be > able to build and link with the new C++ library, and its changed ABI, and I > would get immediate runtime segfaults after linking with the new library, > but still loading the old version at runtime because the existing daemon > still has the old shared library loaded. That would be a rather rude, and > impolite thing to do. Are you saying that we can have two different versions of a daemon on the system, and each one with its own specific and different versions, old and new, of libraries attached to it? I surely know one needs to have lots of patience to dig through these questions. So I fully understand if you simply ignore them. After all this is a mailing list, not a classroom. I'm just curious ... Whatever: If you made it already until here: Thanks a lot for your patience, in anticipation! Wolfgang _______________________________________________ users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx