mirror of
https://gitee.com/openharmony/ability_dmsfwk
synced 2024-11-22 22:09:58 +00:00
update readme
Signed-off-by: ql <qianli16@huawei.com> Change-Id: I3208517e061ffd185aca333329a38aee804fc0ca
This commit is contained in:
parent
80b89eebec
commit
c86a477fe2
101
README.md
101
README.md
@ -1,105 +1,32 @@
|
|||||||
# Distributed Scheduler<a name="EN-US_TOPIC_0000001162308327"></a>
|
# Distributed Scheduler<a name="EN-US_TOPIC_0000001115719369"></a>
|
||||||
|
|
||||||
- [Introduction](#section11660541593)
|
|
||||||
- [System Architecture](#section13587185873516)
|
|
||||||
- [Directory Structure](#section161941989596)
|
|
||||||
- [Constraints](#section119744591305)
|
|
||||||
- [Usage](#section10729231131110)
|
|
||||||
- [Repositories Involved](#section1371113476307)
|
|
||||||
|
|
||||||
## Introduction<a name="section11660541593"></a>
|
## Introduction<a name="section11660541593"></a>
|
||||||
|
|
||||||
Distributed Scheduler is used for cross-device component management. It allows the local device to access or control remote components, and enables app collaboration in distributed scenarios. Its main functions are as follows:
|
Distributed Scheduler is used for cross-device component management. It allows the local device to access or control remote components, and enables app collaboration in distributed scenarios. Its main functions are as follows:
|
||||||
|
|
||||||
- Remote FA startup: Starts a Feature Ability (FA) on a remote device.
|
- Remote ability startup: Starts an ability on a remote device.
|
||||||
- Remote FA migration: Migrates an FA to a remote device.
|
- Remote ability migration: Migrates an ability to a remote device.
|
||||||
- Remote AA binding: Binds an AA on a remote device.
|
- Remote ability binding: Binds an ability on a remote device.
|
||||||
|
|
||||||
|
|
||||||
## System Architecture<a name="section13587185873516"></a>
|
## System Architecture<a name="section13587185873516"></a>
|
||||||
|
|
||||||
![](figures/dms-architecture.png)
|
**Figure 1** Distributed Scheduler architecture<a name="fig4460722185514"></a>
|
||||||
|
|
||||||
**Figure 1** Distributed Scheduler architecture<a name="fig4460722185514"></a>
|
|
||||||
|
![](figures/dms-architecture.png)
|
||||||
|
|
||||||
## Directory Structure<a name="section161941989596"></a>
|
## Directory Structure<a name="section161941989596"></a>
|
||||||
|
|
||||||
The main code directory structure of Distributed Scheduler is as follows:
|
|
||||||
|
|
||||||
```
|
```
|
||||||
/foundation/distributedschedule/dmsfwk
|
/foundation/distributedschedule
|
||||||
├── interfaces # API definition
|
├── dmsfwk # DMS framework (DMS is short for Distributed Manager Service, also called the Distributed Scheduler Service)
|
||||||
├── services # Core functions
|
├── dms_fwk_lite # Lightweight DMS framework
|
||||||
│ └── dtbschedmgr
|
|
||||||
│ ├── include
|
|
||||||
│ │ ├── ability_connection_wrapper_stub.h # Connection callback wrapper class
|
|
||||||
│ │ ├── adapter
|
|
||||||
│ │ │ └── dnetwork_adapter.h # DSoftBus adaptation layer
|
|
||||||
│ │ ├── bundle
|
|
||||||
│ │ │ └── bundle_manager_internal.h # BMS function wrapper class
|
|
||||||
│ │ ├── caller_info.h # Basic information about the caller
|
|
||||||
│ │ ├── connect_death_recipient.h # APIs that listen for connection callback death events
|
|
||||||
│ │ ├── continuation_callback_death_recipient.h # APIs that listen for continuation callback death events
|
|
||||||
│ │ ├── deviceManager
|
|
||||||
│ │ │ └── dms_device_info.h # APIs for defining and obtaining device information
|
|
||||||
│ │ ├── distributed_device_node_listener.h # APIs for listening for device online/offline events
|
|
||||||
│ │ ├── distributed_sched_ability_shell.h # Continuation callback management APIs
|
|
||||||
│ │ ├── distributed_sched_adapter.h # DMS adaptation layer
|
|
||||||
│ │ ├── distributed_sched_continuation.h # Continuation token management APIs
|
|
||||||
│ │ ├── distributed_sched_dumper.h # Dump APIs
|
|
||||||
│ │ ├── distributed_sched_interface.h # External APIs
|
|
||||||
│ │ ├── distributed_sched_permission.h # Permission verification APIs
|
|
||||||
│ │ ├── distributed_sched_proxy.h # Proxy APIs
|
|
||||||
│ │ ├── distributed_sched_service.h # Service APIs
|
|
||||||
│ │ ├── distributed_sched_stub.h # Stub APIs
|
|
||||||
│ │ ├── dtbschedmgr_device_info_storage.h # Device information storage management
|
|
||||||
│ │ ├── dtbschedmgr_log.h # Log module
|
|
||||||
│ │ ├── parcel_helper.h # Definition of auxiliary macros for serialization/deserialization
|
|
||||||
│ │ └── uri.h
|
|
||||||
│ ├── src
|
|
||||||
│ │ ├── ability_connection_wrapper_stub.cpp # Implementation of the connection callback wrapper class
|
|
||||||
│ │ ├── adapter
|
|
||||||
│ │ │ └── dnetwork_adapter.cpp # DSoftBus adaptation layer
|
|
||||||
│ │ ├── bundle
|
|
||||||
│ │ │ └── bundle_manager_internal.cpp # Implementation of the BMS function wrapper class
|
|
||||||
│ │ ├── connect_death_recipient.cpp # Implementation of the listening for connection callback death events
|
|
||||||
│ │ ├── continuation_callback_death_recipient.cpp # Implementation of the continuation callback death events
|
|
||||||
│ │ ├── deviceManager
|
|
||||||
│ │ │ └── dms_device_info.cpp # Implementation of the APIs for obtaining device information
|
|
||||||
│ │ ├── distributed_device_node_listener.cpp # Implementation of the APIs for device online/offline event listening
|
|
||||||
│ │ ├── distributed_sched_ability_shell.cpp # Implementation of continuation callback management
|
|
||||||
│ │ ├── distributed_sched_adapter.cpp # Implementation of the DMS adaptation layer
|
|
||||||
│ │ ├── distributed_sched_continuation.cpp # Implementation of continuation token management
|
|
||||||
│ │ ├── distributed_sched_dumper.cpp # Dump Implementation
|
|
||||||
│ │ ├── distributed_sched_permission.cpp # Permission verification implementation
|
|
||||||
│ │ ├── distributed_sched_proxy.cpp # Proxy implementation
|
|
||||||
│ │ ├── distributed_sched_service.cpp # Server implementation
|
|
||||||
│ │ ├── distributed_sched_stub.cpp # Stub implementation
|
|
||||||
│ │ └── dtbschedmgr_device_info_storage.cpp # Implementation of device information storage management
|
|
||||||
│ └──── BUILD.gn
|
|
||||||
├── sa_profile
|
|
||||||
├── utils
|
|
||||||
├── LICENSE
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Constraints<a name="section119744591305"></a>
|
|
||||||
|
|
||||||
- The devices between which you want to set up a connection must be in the same LAN.
|
|
||||||
- Before setting up a connection between two devices, you must bind the devices. For details about the binding process, see relevant descriptions in the Security subsystem readme file.
|
|
||||||
|
|
||||||
## Usage<a name="section10729231131110"></a>
|
|
||||||
|
|
||||||
- **Compiling and Building Distributed Scheduler**
|
|
||||||
|
|
||||||
The code of Distributed Scheduler is stored in the following directory:
|
|
||||||
|
|
||||||
```
|
|
||||||
foundation/distributedschedule/dmsfwk
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
## Repositories Involved<a name="section1371113476307"></a>
|
## Repositories Involved<a name="section1371113476307"></a>
|
||||||
|
|
||||||
Distributed Scheduler
|
**Distributed Scheduler**
|
||||||
|
|
||||||
[distributedschedule\_dms\_fwk](https://https://gitee.com/openharmony/distributedschedule_dms_fwk)
|
distributedschedule\_dms\_fwk
|
||||||
|
|
||||||
|
distributedschedule\_dms\_fwk\_lite
|
102
README_zh.md
102
README_zh.md
@ -1,105 +1,37 @@
|
|||||||
# 分布式调度组件<a name="ZH-CN_TOPIC_0000001162308327"></a>
|
# 分布式组件管理部件<a name="ZH-CN_TOPIC_0000001115719369"></a>
|
||||||
|
|
||||||
- [简介](#section11660541593)
|
- [简介](#section11660541593)
|
||||||
- [系统架构](#section13587185873516)
|
- [系统架构](#section13587185873516)
|
||||||
- [目录](#section161941989596)
|
- [目录](#section161941989596)
|
||||||
- [约束](#section119744591305)
|
|
||||||
- [使用](#section10729231131110)
|
|
||||||
- [相关仓](#section1371113476307)
|
- [相关仓](#section1371113476307)
|
||||||
|
|
||||||
## 简介<a name="section11660541593"></a>
|
## 简介<a name="section11660541593"></a>
|
||||||
|
|
||||||
分布式任务调度模块负责跨设备组件管理,提供访问和控制远程组件的能力,支持分布式场景下的应用协同。主要功能如下:
|
分布式组件管理部件模块负责跨设备组件管理,提供访问和控制远程组件的能力,支持分布式场景下的应用协同。主要功能如下:
|
||||||
|
|
||||||
- 远程启动FA:跨设备拉起远端设备上指定FA。
|
- 远程启动元能力:跨设备拉起远端设备上的指定元能力。
|
||||||
- 远程迁移FA:将FA跨设备迁移到远端。
|
- 远程迁移元能力:将元能力跨设备迁移到远端设备。
|
||||||
- 远程绑定AA:跨设备绑定远端设备上指定AA。
|
- 远程绑定元能力:跨设备绑定远端设备上的指定元能力。
|
||||||
|
|
||||||
|
## 分布式组件管理部件架构<a name="section13587185873516"></a>
|
||||||
|
|
||||||
|
**图 1** 分布式组件管理部件架构图<a name="fig4460722185514"></a>
|
||||||
|
|
||||||
|
|
||||||
## 系统架构<a name="section13587185873516"></a>
|
![](figures/dms-architecture-zh.png)
|
||||||
|
|
||||||
![](figures/dms-architecture_zh.png)
|
|
||||||
|
|
||||||
**图 1** 分布式调度组件架构图<a name="fig4460722185514"></a>
|
|
||||||
|
|
||||||
## 目录<a name="section161941989596"></a>
|
## 目录<a name="section161941989596"></a>
|
||||||
|
|
||||||
分布式调度组件主要代码目录结构如下:
|
|
||||||
|
|
||||||
```
|
```
|
||||||
/foundation/distributedschedule/dmsfwk
|
/foundation/distributedschedule
|
||||||
├── interfaces # 接口定义
|
├── dmsfwk # 分布式组件管理部件模块
|
||||||
├── services # 核心功能
|
├── dms_fwk_lite # 轻量分布式组件管理部件模块
|
||||||
│ └── dtbschedmgr
|
|
||||||
│ ├── include
|
|
||||||
│ │ ├── ability_connection_wrapper_stub.h # 绑定回调封装类
|
|
||||||
│ │ ├── adapter
|
|
||||||
│ │ │ └── dnetwork_adapter.h # 软总线适配层
|
|
||||||
│ │ ├── bundle
|
|
||||||
│ │ │ └── bundle_manager_internal.h # bms功能封装接口
|
|
||||||
│ │ ├── caller_info.h # 调用方基本信息
|
|
||||||
│ │ ├── connect_death_recipient.h # 绑定回调死亡监听接口
|
|
||||||
│ │ ├── continuation_callback_death_recipient.h # 迁移回调死亡监听接口
|
|
||||||
│ │ ├── deviceManager
|
|
||||||
│ │ │ └── dms_device_info.h # 设备信息定义和获取接口
|
|
||||||
│ │ ├── distributed_device_node_listener.h # 设备上下线监听接口
|
|
||||||
│ │ ├── distributed_sched_ability_shell.h # 迁移回调管理接口
|
|
||||||
│ │ ├── distributed_sched_adapter.h # dms适配层
|
|
||||||
│ │ ├── distributed_sched_continuation.h # 迁移token管理接口
|
|
||||||
│ │ ├── distributed_sched_dumper.h # dump接口
|
|
||||||
│ │ ├── distributed_sched_interface.h # 对外接口
|
|
||||||
│ │ ├── distributed_sched_permission.h # 权限校验接口
|
|
||||||
│ │ ├── distributed_sched_proxy.h # proxy端接口
|
|
||||||
│ │ ├── distributed_sched_service.h # 服务端接口
|
|
||||||
│ │ ├── distributed_sched_stub.h # stub端接口
|
|
||||||
│ │ ├── dtbschedmgr_device_info_storage.h # 设备信息存储管理
|
|
||||||
│ │ ├── dtbschedmgr_log.h # 日志模块
|
|
||||||
│ │ ├── parcel_helper.h # 序列化/反序列化辅助宏定义
|
|
||||||
│ │ └── uri.h
|
|
||||||
│ ├── src
|
|
||||||
│ │ ├── ability_connection_wrapper_stub.cpp # 绑定回调封装类实现
|
|
||||||
│ │ ├── adapter
|
|
||||||
│ │ │ └── dnetwork_adapter.cpp # 软总线适配层
|
|
||||||
│ │ ├── bundle
|
|
||||||
│ │ │ └── bundle_manager_internal.cpp # bms功能封装实现
|
|
||||||
│ │ ├── connect_death_recipient.cpp # 绑定回调死亡监听实现
|
|
||||||
│ │ ├── continuation_callback_death_recipient.cpp # 迁移回调死亡监听实现
|
|
||||||
│ │ ├── deviceManager
|
|
||||||
│ │ │ └── dms_device_info.cpp # 设备信息获取接口实现
|
|
||||||
│ │ ├── distributed_device_node_listener.cpp # 设备上下线监听实现
|
|
||||||
│ │ ├── distributed_sched_ability_shell.cpp # 迁移回调管理实现
|
|
||||||
│ │ ├── distributed_sched_adapter.cpp # dms适配层实现
|
|
||||||
│ │ ├── distributed_sched_continuation.cpp # 迁移token管理实现
|
|
||||||
│ │ ├── distributed_sched_dumper.cpp # dump实现
|
|
||||||
│ │ ├── distributed_sched_permission.cpp # 权限校验实现
|
|
||||||
│ │ ├── distributed_sched_proxy.cpp # proxy端实现
|
|
||||||
│ │ ├── distributed_sched_service.cpp # 服务端实现
|
|
||||||
│ │ ├── distributed_sched_stub.cpp # stub端实现
|
|
||||||
│ │ └── dtbschedmgr_device_info_storage.cpp # 设备信息存储管理实现
|
|
||||||
│ └──── BUILD.gn
|
|
||||||
├── sa_profile
|
|
||||||
├── utils
|
|
||||||
├── LICENSE
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## 约束<a name="section119744591305"></a>
|
|
||||||
|
|
||||||
- 组网设备需在同一局域网中。
|
|
||||||
- 组网之前,需先完成设备绑定,绑定流程参见安全子系统中说明。
|
|
||||||
|
|
||||||
## 使用<a name="section10729231131110"></a>
|
|
||||||
|
|
||||||
- **分布式任务调度模块编译**
|
|
||||||
|
|
||||||
分布式任务调度模块,其代码所在目录如下:
|
|
||||||
|
|
||||||
```
|
|
||||||
foundation/distributedschedule/dmsfwk
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
## 相关仓<a name="section1371113476307"></a>
|
## 相关仓<a name="section1371113476307"></a>
|
||||||
|
|
||||||
分布式任务调度子系统
|
**分布式组件管理部件**
|
||||||
|
|
||||||
[distributedschedule\_dms\_fwk](https://https://gitee.com/openharmony/distributedschedule_dms_fwk)
|
distributedschedule\_dms\_fwk
|
||||||
|
|
||||||
|
distributedschedule\_dms\_fwk\_lite
|
BIN
figures/dms-architecture-zh.png
Normal file
BIN
figures/dms-architecture-zh.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 42 KiB |
Binary file not shown.
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 47 KiB |
Binary file not shown.
Before Width: | Height: | Size: 53 KiB |
Loading…
Reference in New Issue
Block a user