Hi all,

I've been investigating how we run Crosswalk on Tizen for the past few days and I would like to challenge the current model of sharing one Browser Process for all the webapps.

I'm not convinced that the benefits (in terms of memory usage) are big enough to justify the increasingly complexity of the source code related to the Shared Browser Process in the Crosswalk tree.

Crosswalk should not be aware of any platform specifics like manifests, sandboxing (smack labels), permissions, etc. This is how we do it successfully for Android, Linux Desktop and Mac.

Therefore, tools like xwalkctl, xwalk-launcher, etc can still exist, but as separated project outside the Crosswalk tree, since they are Tizen specific, in the same way as the tizen-extensions-crosswalk.

This new xwalk-launcher could be a simple pre-loader (remember maemo-launcher?) that would launch a self-contained instance of Crosswalk (i.e. a Browser Process + Renderer Process) for each webapp.

With this change, we can can remove all the code from Crosswalk handling manifests, permissions and shared browser process mode making the design much more simple. We will also have the same execution model as we have for Android, Mac and Linux, reducing the delta between the platforms we support.

Here is the memory usage analysis I did with more details:
https://github.com/tmpsantos/crosswalk-process-model

I honestly don't think that with a pre-loader in place, the startup time will be that different, but has to be tested. I invite everyone to join me on this investigation, measuring launch time, performance, etc.

Cheers,
_______________________________________________
Crosswalk-dev mailing list
[email protected]
https://lists.crosswalk-project.org/mailman/listinfo/crosswalk-dev

Reply via email to