The Execution Manager (EM) is the privileged Adaptive Platform daemon responsible for launching, monitoring, and terminating all Adaptive Applications. It reads Application Manifests and Machine Manifests at boot and orchestrates the platform lifecycle.
| EM Responsibility | Mechanism |
|---|---|
| Launch processes | execve() with environment from Application Manifest |
| Monitor liveness | ApplicationClient heartbeat + PHM alive supervision |
| Graceful termination | SIGTERM → wait shutdownTimeout → SIGKILL |
| State orchestration | Start/stop process sets per FunctionGroupState transition |
| Resource enforcement | cgroup configuration from Machine Manifest resourceGroup |