Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | - | - | ||||
adapter/ | 12-May-2024 | - | 978 | 730 | ||
common/ | 12-May-2024 | - | 387 | 299 | ||
etc/ | 12-May-2024 | - | 389 | 306 | ||
figures/ | 12-May-2024 | - | ||||
interfaces/innerkits/ | 12-May-2024 | - | 802 | 514 | ||
lite/ | 12-May-2024 | - | 886 | 673 | ||
standard/ | 12-May-2024 | - | 1,686 | 1,388 | ||
test/ | 12-May-2024 | - | 5,910 | 4,394 | ||
util/ | 12-May-2024 | - | 1,860 | 1,473 | ||
.gitattributes | D | 12-May-2024 | 631 | 16 | 15 | |
BUILD.gn | D | 12-May-2024 | 6.5 KiB | 215 | 195 | |
LICENSE | D | 12-May-2024 | 10.1 KiB | 177 | 150 | |
OAT.xml | D | 12-May-2024 | 4.4 KiB | 75 | 21 | |
README.md | D | 12-May-2024 | 891 | 27 | 18 | |
README_zh.md | D | 12-May-2024 | 2.7 KiB | 65 | 49 | |
appdata-sandbox-asan.json | D | 12-May-2024 | 726 | 23 | 22 | |
appdata-sandbox.json | D | 12-May-2024 | 30.4 KiB | 684 | 681 | |
appdata-sandbox64.json | D | 12-May-2024 | 2.7 KiB | 74 | 73 | |
appspawn.cfg | D | 12-May-2024 | 1.7 KiB | 52 | 50 | |
appspawn.gni | D | 12-May-2024 | 977 | 26 | 23 | |
appspawn.rc | D | 12-May-2024 | 758 | 23 | 20 | |
appspawn_preload.json | D | 12-May-2024 | 431 | 16 | 15 | |
bundle.json | D | 12-May-2024 | 2.8 KiB | 98 | 97 | |
startup_events.yaml | D | 12-May-2024 | 904 | 22 | 7 |
README.md
1# Startup<a name="EN-US_TOPIC_0000001078883578"></a> 2 3- [Introduction](#section11660541593) 4- [Directory Structure](#section161941989596) 5- [Repositories Involved](#section1371113476307) 6 7## Introduction<a name="section11660541593"></a> 8 9Appspawn is responsible for creating application process and setting process information function. 10 11## Directory Structure<a name="section161941989596"></a> 12 13``` 14base/startup/appspawn 15├── include # include directory 16├── parameter # system parameters 17├── src # source code 18│ └── socket # encapsulation of socket basic library 19└── test # test code 20``` 21 22## Repositories Involved<a name="section1371113476307"></a> 23 24Startup subsystem 25 26**[appspawn](https://gitee.com/openharmony/startup_appspawn/blob/master/README.md)** 27
README_zh.md
1# appspawn应用孵化器部件 2 3## 简介 4 5应用孵化器,负责接受应用程序框架的命令孵化应用进程,设置其对应权限,并调用应用程序框架的入口。 6 7**图1** appspawn应用孵化器组件框架图 8![](figures/appspawn.png) 9 10## 目录 11``` 12base/startup/appspawn_standard 13├─adapter # 适配外部依赖 14│ └─sysevent # 系统事件管理 15├─common # 通用代码 16├─etc 17├─figures 18├─interfaces # 应用孵化器组件头文件以及对外接口 19│ └─innerkits 20│ ├─client # 应用孵化器客户端源码 21│ └─include # 应用孵化器头文件 22├─lite # 小型系统应用孵化器源码 23├─standard # 标准系统应用孵化器源码 24├─test # 应用孵化器组件测试源码 25└─util 26 ├─include # 应用孵化器工具类头文件 27 └─src # 应用孵化器工具类源码, 含json处理库及应用沙箱实现源码 28``` 29 30## 说明 31 32### 小型系统 33 34 appspawn被init启动后,向IPC框架注册服务名称,之后等待接收进程间消息,根据消息解析结果启动应用服务并赋予其对应权限。 35 36 appspawn注册的服务名称为“appspawn”,在安全子系统限制规则下,目前仅Ability Manager Service有权限可以向appspawn发送的进程间消息。 37 38 appspawn接收的消息为json格式,如下所示: 39 ``` 40 "{"bundleName":"testvalid1","identityID":"1234","uID":1000,"gID":1000,"capability":[0]}" 41 ``` 42 43 **表 1** 小型系统字段说明 44 | 字段名 | 说明 | 45 | -------- | -------- | 46 | bundleName | 即将启动的应用程序包名,长度≥7字节,≤127字节。 | 47 | identityID | AMS为新进程生成的标识符,由appspawn透传给新进程,长度≥1字节,≤24字节。 | 48 | uID | 即将启动的应用服务进程的uID。 | 49 | gID | 即将启动的应用服务进程的gID。 | 50 | capability | 即将启动的应用服务进程所需的capability权限,数量≤10个。 | 51 52### 标准系统 53 appspawn注册的服务名称为“appspawn”。appspawn 通过监听本地socket,接收来自客户端的请求消息。 54 55 详细使用说明参考开发指南:[appspawn应用孵化组件](https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/subsystems/subsys-boot-appspawn.md) 56 57## 限制与约束 58仅支持小型系统和标准系统。 59 60## 相关仓 61**[startup\_appspawn](https://gitee.com/openharmony/startup_appspawn)** 62 63[startup\_init\_lite](https://gitee.com/openharmony/startup_init_lite) 64 65[startup\_bootstrap\_lite](https://gitee.com/openharmony/startup_bootstrap_lite)