From: Paulo L. <pau...@gm...> - 2014-07-08 16:43:16
|
i'm really looking forward to seeing this working. On Tuesday 08 July 2014 16:59:20 PCMan wrote: > Some updates. > Instead of doing some experiment, I tried to test MoonLightDE since it > did quite similar things. > However, I failed to get all of the components compiled correctly. > I'll try to fix them when I have time to see how it performs. > After a quick skim of the source code of MoonLightDE, I noticed that > it makes extensive use of C++ Micro Services library > (CppMicroService). Alexis, what's the benefit of using that? I found > it a little bit more complicated than needed? > I have another thought about the module architecture. > We can make them modules while retaining the stability of the original > multi-process architecture. > Just do "fork()" from the main process before loading the module, and > the components can be run in different processes, just like they're > now. So the crash of one component does not affect the other one. > This is actually what kdeinit process does. > If we add an option to turn off the "fork()" call, then all components > can run in the same process. > So we can switch between single process and multi-process > architectures on-the-fly with an runtime option. > Forking different components form the same core process is totally > different from launching different binaries. > When all of the components are forked from the same process, > relocation of dynamic libraries only happen "once" and this is exactly > how kdeinit speed up startup of KDE. > With this, we can solve three problems with the same solution. > 1. speed up startup but keep current multi-process architecture (by > forking from the main process) > 2. optional support of a single-process architecture with the same > code base (even more speed up and resource sharing) > 3. Sharing code with MoonLightDE becomes even easier (actually, we > even share the same goal if we do this) > > Users and developers who don't want a single-process mode can keep > using multiple process, and still benefit from a faster startup due to > kdeinit-like design. > Users who have limited resource can turn on the experimental > "single-process" option and avoid the fork() call. All modules then > stay in the same process. > What about the new proposal? > > Cheers! > > ---------------------------------------------------------------------------- > -- Open source business process management suite built on Java and Eclipse > Turn processes into business applications with Bonita BPM Community Edition > Quickly connect people, data, and systems into organized workflows Winner > of BOSSIE, CODIE, OW2 and Gartner awards > http://p.sf.net/sfu/Bonitasoft > _______________________________________________ > Lxde-list mailing list > Lxd...@li... > https://lists.sourceforge.net/lists/listinfo/lxde-list -- --- Paulo Lieuthier |