Support Launch Mode 69/294469/8
authorHwankyu Jhun <h.jhun@samsung.com>
Tue, 20 Jun 2023 01:24:45 +0000 (01:24 +0000)
committerHwankyu Jhun <h.jhun@samsung.com>
Tue, 20 Jun 2023 06:22:34 +0000 (06:22 +0000)
commitbb2f14404524ad512ebcab41e277f4375117af2f
treeb5db8cc4a28d38928bed2c1b5b3b09914be69952
parentb9c303aa91425eabbf635d5531b2c1f0f2427974
Support Launch Mode

The platform developer can set the launch mode of the app execution about
the loader using the configuration file.
There are 4 modes as below:
 1. Mode=Previous_Operation:
  - This mode is the original behavior. If the loader is not preapred,
  the application will be executed using fork() & execv().
 2. Mode=Default_Operation:
  - This mode is the default behavior from Tizen 8.0.
  - If the loader is not prepared and the loader is running, the launchpad
  waits until the loader is prepared. And then, the launch request will
  be delivered to the loader process.
 3. Mode=Always_Loader:
  - This mode is that the application will be  always executed using
  the loader process.
  - Even if the loader process is not executed, the launch request will
  be delivered to the loader process.
  - If the loader process is not executed, the launchpad executes
  the loader process when getting the launch request.
  - After processing the launch request, the launchpad executes the loader
  process when the pending request exists.
 4. Mode=Always_Loader_Without_CPUChecker:
  - This mode is the modified version of the "Mode=Always_Loader".
  - The loader process will be executed after processing the launch request.

Change-Id: I95c7be50f4e8e79b7c490b03ecf1733c1a3f1aed
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
src/launchpad-process-pool/conf/launchpad.conf.in
src/launchpad-process-pool/config.cc
src/launchpad-process-pool/config.hh
src/launchpad-process-pool/hydra_loader_context.cc
src/launchpad-process-pool/launchpad.cc
src/launchpad-process-pool/launchpad.hh
src/launchpad-process-pool/loader_context.cc
src/launchpad-process-pool/loader_context.hh