1# AMS - Ability manager service of OpenHarmony 2 3## Introduction 4 5`Ability manager service` plays an important role in the OpenHarmony. This module focuses on aspect of introducing the feature of AMS aiming at managing ability stack, managing application process and controlling life cycle of ability slices. 6 7## Features 8 9- Manage ability stack. 10- Manage application process. 11- Controll life cycle of ability slices. 12- AMS tools. 13 14## Directions 15 16``` 17. 18├── BUILD.gn 19├── include 20│ ├── ability_connect_mission.h 21│ ├── ability_connect_record.h 22│ ├── ability_connect_trans_param.h 23│ ├── ability_inner_feature.h 24│ ├── ability_list.h # ability map to store ability record 25│ ├── ability_message_id.h # message id of AMS task 26│ ├── ability_mgr_context.h 27│ ├── ability_mgr_feature.h # AMS feature in Service Manager 28│ ├── ability_mgr_handler.h # AMS message handler 29│ ├── ability_mgr_service.h # register AMS in the Service Manager 30│ ├── ability_mission_record.h # ability mission record 31│ ├── ability_mission_stack.h # ability mission record stack 32│ ├── ability_record.h # ability record including ability info for GT 33│ ├── ability_service.h # AMS for GT 34│ ├── ability_stack.h # stack of AMS for GT 35│ ├── ability_stack_manager.h # ability stack manager 36│ ├── ability_worker.h # ability task manager 37│ ├── app_manager.h # application process record manager 38│ ├── app_record.h # application process record 39│ ├── client 40│ │ ├── ability_dump_client.h 41│ │ ├── ability_thread_client.h 42│ │ ├── app_spawn_client.h 43│ │ ├── bundlems_client.h 44│ │ └── wms_client.h 45│ ├── js_app_host.h 46│ ├── page_ability_record.h 47│ ├── task 48│ │ ├── ability_activate_task.h 49│ │ ├── ability_attach_task.h 50│ │ ├── ability_background_task.h 51│ │ ├── ability_connect_done_task.h 52│ │ ├── ability_connect_task.h 53│ │ ├── ability_disconnect_done_task.h 54│ │ ├── ability_disconnect_task.h 55│ │ ├── ability_dump_task.h 56│ │ ├── ability_inactivate_task.h 57│ │ ├── ability_start_task.h 58│ │ ├── ability_stop_task.h 59│ │ ├── ability_task.h 60│ │ ├── ability_terminate_service_task.h 61│ │ ├── ability_terminate_task.h 62│ │ ├── app_restart_task.h 63│ │ └── app_terminate_task.h 64│ └── util 65│ ├── abilityms_helper.h 66│ ├── abilityms_log.h 67│ └── abilityms_status.h 68├── README.md 69├── src 70│ ├── ability_connect_mission.cpp 71│ ├── ability_inner_feature.cpp 72│ ├── ability_list.cpp 73│ ├── ability_mgr_context.cpp 74│ ├── ability_mgr_feature.cpp 75│ ├── ability_mgr_handler.cpp 76│ ├── ability_mgr_service.cpp 77│ ├── ability_mission_record.cpp 78│ ├── ability_mission_stack.cpp 79│ ├── ability_record.cpp 80│ ├── ability_service.cpp 81│ ├── ability_stack.cpp 82│ ├── ability_stack_manager.cpp 83│ ├── ability_worker.cpp 84│ ├── app_manager.cpp 85│ ├── app_record.cpp 86│ ├── client 87│ │ ├── ability_dump_client.cpp 88│ │ ├── ability_thread_client.cpp 89│ │ ├── app_spawn_client.cpp 90│ │ ├── bundlems_client.cpp 91│ │ └── wms_client.cpp 92│ ├── js_app_host.cpp 93│ ├── page_ability_record.cpp 94│ ├── task 95│ │ ├── ability_activate_task.cpp 96│ │ ├── ability_attach_task.cpp 97│ │ ├── ability_background_task.cpp 98│ │ ├── ability_connect_done_task.cpp 99│ │ ├── ability_connect_task.cpp 100│ │ ├── ability_disconnect_done_task.cpp 101│ │ ├── ability_disconnect_task.cpp 102│ │ ├── ability_dump_task.cpp 103│ │ ├── ability_inactivate_task.cpp 104│ │ ├── ability_start_task.cpp 105│ │ ├── ability_stop_task.cpp 106│ │ ├── ability_terminate_service_task.cpp 107│ │ ├── ability_terminate_task.cpp 108│ │ ├── app_restart_task.cpp 109│ │ └── app_terminate_task.cpp 110│ └── util 111│ ├── abilityms_helper.cpp 112│ └── abilityms_status.cpp 113└── tools 114 ├── BUILD.gn 115 ├── include 116 │ └── ability_tool.h 117 └── src 118 ├── ability_tool.cpp 119 └── main.cpp 120 121``` 122