# frameworks_runtimes_services_system_server **Repository Path**: open-vela/frameworks_runtimes_services_system_server ## Basic Information - **Project Name**: frameworks_runtimes_services_system_server - **Description**: No description available - **Primary Language**: C++ - **License**: Apache-2.0 - **Default Branch**: dev - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 11 - **Forks**: 0 - **Created**: 2024-11-29 - **Last Updated**: 2026-02-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 系统服务 [简体中文 | [English](./README.md)] ## 简介 系统服务 `System Server` 是 openvela 操作系统的核心组件之一,它负责启动和管理多个系统服务,包含的系统服务有: 1. 应用管理服务 2. 包管理服务 3. 窗口管理服务 4. 亮度管理服务 **图1** 系统服务架构图 ![系统服务架构](./docs/SystemServer_Architecture.jpg) 各子服务介绍: ### 1 应用管理服务 应用管理服务是负责管理应用程序的生命周期和任务栈,包括以下功能: - 管理应用生命周期,如启动、停止、暂停和恢复应用程序。 - 管理应用程序任务栈,如任务栈的创建、销毁和更新等。 - 管理应用程序的内存使用情况,如监测内存使用和低内存警告等。 ### 2 包管理服务 包管理服务是负责管理应用程序的安装、卸载、更新和权限等,包括以下功能: - 安装、卸载和更新应用程序。 - 管理应用程序权限,包括权限的授予和撤销等。 - 监听应用程序的安装、卸载和更新事件。 ### 3 窗口管理服务 窗口管理服务是负责管理应用程序窗口的显示和管理,包括以下功能: - 管理应用程序窗口,包括创建、显示、隐藏和关闭等。 - 管理窗口的显示属性,如尺寸和位置等。 - 输入事件监听处理,如触摸和按键等。 - 管理窗口的过渡动画。 ### 4 亮度管理服务 亮度管理服务是负责管理屏幕的亮度,包括以下功能: - 管理屏幕亮度。 - 监听屏幕亮度变化事件。 ## 目录 ``` ├── Kconfig └── SystemServer.cpp ``` ## 约束 - ./Kconfig文件列举了系统服务可配置子服务的配置开关,需要在系统服务的编译选项中打开相应的子服务的配置开关。 ## 说明 ### 编译和运行 SystemServer使用Vela源代码构建系统进行编译和运行。在编译Vela源代码之前,需要先安装相应的编译工具和依赖库。在编译Vela源代码时,需要选择编译System Server的选项,各个服务的编译也需要打开相应的配置选项,然后进行编译。 配置选项如下: - `SYSTEM_SERVER` :编译系统服务需要打开此选项。 - `SYSTEM_ACTIVITY_SERVICE` :编译应用管理服务需要打开此选项。 - `SYSTEM_PACKAGE_SERVICE` :编译包管理服务需要打开此选项。 - `SYSTEM_WINDOW_SERVICE` :编译窗口管理服务需要打开此选项。 - `SYSTEM_BRIGHTNESS_SERVICE` :编译亮度管理服务需要打开此选项。 在设备上运行 `SystemServer` 需要 root 权限。可以通过 adb 命令启动 `SystemServer` 到后台运行,如下所示: ``` adb shell systemd & ```