acrn-hypervisor/tools/acrn-manager
yuhong.tao@intel.com bcb101f4f0 tools: acrnd: the deamon for acrn-manager
There will be a daemon running on SOS: to forward wakeup_reason to
acrn-dm; to co-ordinate the lifecycle of VMs and SOS; to handle
ioc-timed wakeup/poweron.

1.to forward wakeup_reason to acrn-dm
acrnd is responsible to retrive wakeup_reason from SOS lifecycle
service and attach the wakeup_reason to acrn-dm parameter for ioc-dm;

2.co-ordinate the lifecycle of VMs and SOS
When SOS is about to suspend/shutdown, SOS lifecycle service will
send a request to acrnd to guarantee all guest VMs are suspended
or shutdown before SOS suspending/shutdown process continue. On
receiver the request, acrnd starts polling the guest VMs state, and
notify SOS lifecycle service when all guest VMs are put in proper
state gracefully.

3.handle ioc-timed wakeup/poweron
For vechile specific mode like garage mode, guest UOS may need to
wakeup/poweron in a future time for tasks such as map updating etc.
To setup a timed wakeup/poweron, ioc-dm will send request to acrnd,
acrnd maintains a list of timed requests from guest VMs, and acrnd
selects the nearest request and send it to SOS lifecycle service
who will setup the physical IOC.

Reviewed-by: Yan Like <like.yan@intel.com>
Acked-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Signed-off-by: Tao Yuhong <yuhong.tao@intel.com>
2018-07-16 16:04:34 +08:00
..
acrn_mngr.c tools: rework on vm ops 2018-07-16 16:04:34 +08:00
acrn_mngr.h tools: rework on vm ops 2018-07-16 16:04:34 +08:00
acrn_vm_ops.c tools: rework on vm ops 2018-07-16 16:04:34 +08:00
acrnctl.c tools: rework on vm ops 2018-07-16 16:04:34 +08:00
acrnctl.h tools: rework on vm ops 2018-07-16 16:04:34 +08:00
acrnd.c tools: acrnd: the deamon for acrn-manager 2018-07-16 16:04:34 +08:00
acrnd.service tools: acrnd: the deamon for acrn-manager 2018-07-16 16:04:34 +08:00
Makefile tools: acrnd: the deamon for acrn-manager 2018-07-16 16:04:34 +08:00
README.rst tools: acrnctl: Add support for reseting vm 2018-06-07 14:36:18 +08:00

.. _acrnctl:

acrnctl
#######


Description
***********

The ``acrnctl`` tool helps users create, delete, launch, and stop a User
OS (UOS).  The tool runs under the Service OS, and UOSs should be based
on ``acrn-dm``.



Usage
*****

You can see the available ``acrnctl`` commands by running:

.. code-block:: none

   # acrnctl help
   support:
     list
     start
     stop
     del
     add
     pause
     continue
     suspend
     resume
     reset
   Use acrnctl [cmd] help for details

Here are some usage examples:

Add a VM
========

The ``add`` command lets you add a VM by specifying a
script that will launch a UOS, for example ``launch_UOS.sh``:

.. code-block:: none

   # acrnctl add launch_UOS.sh -U 1
   vm1-14:59:30 added

Note that the launch script must only launch one UOS instance.
The VM name is important. ``acrnctl`` searches VMs by their
names so duplicate VM names are not allowed. If the
launch script changes the VM name at launch time, ``acrnctl``
will not recognize it.

Delete VMs
==========

Use the ``delete`` command with a VM name to delete that VM:

.. code-block:: none

   # acrnctl del vm1-14:59:30

List VMs
========

Use the ``list`` command to display VMs and their state:

.. code-block:: none

   # acrnctl list
   vm1-14:59:30            untracked
   vm-yocto                stopped
   vm-android              stopped

Start VM
========

If a VM is in a ``stopped`` state, you can start it with the ``start``
command:

.. code-block:: none

   # acrnctl start vm-yocto

Stop VM
=======

Use the ``stop`` command to stop one or more running VM:

.. code-block:: none

   # acrnctl stop vm-yocto vm1-14:59:30 vm-android

Build and Install
*****************

Source code for ``acrnctl`` is in the ``tools/acrn-manager`` folder.
Change to that folder and run:

.. code-block:: none

   # make
   # make install