!--a11y-->
Managing the Virtual Machine Container
(VMC) 
The Virtual Machine Container (in short VM Container or VMC) is a component integrated into the SAP Web AS ABAP that enables Java functions that comply with the Java Standard J2SE 1.4 to be executed in AS ABAP. The VMC is optimized for applications that use functions implemented in ABAP as well as in Java, and that have to communicate quickly and reliably with one another.
The VMC runs fully integrated in the Work Process of Web AS ABAP and cannot be run as a stand-alone component. If necessary, it can add a Java virtual machine (in short, Java VM) to the work process, which then takes on the execution of Java application code. To do this several Java VMs are kept in a pool in the application server memory. If required they are moved into the work process, and once executed, they are removed and put back into the pool.
The VM container component can be activated and deactivated using profile parameters for each Web AS ABAP application server.
Below is a list of all the tools relevant for the administration of the VM container:
·
The
Overview of Work
Processes (transaction SM50) indicates whether a work process is executing
a Java function. If it is, you can recognize this from the name of the
executed program. This name begins with the word Function followed by the name of the Java function
module.
·
The
Overview of the SAP
Application Server (transaction SM51) shows which Web AS ABAP is providing
an activated VM Container. Application servers with activated VM containers are displayed here with
the provided service VMC.
·
The
VM Overview
(transaction SM52) indicates how many Java VMs are available in the pool or
are being used, and which applications are being executed by them at this
moment. The current memory consumption and the overall status of the memory
management of the VM container can also be looked at here. For more information
see SAP Note 863354.
·
The
VMC System
Administration (transaction SM53) provides details about the status of the
Java runtime environment, and about how to import urgent corrections for Java functions. For more
information see note 863354.
·
In the SAP
Workload Business Transaction Analysis (transaction STAD) the execution time,
CPU consumption, and memory consumption in the VM container is displayed for
applications that use the VMC. You can recognize whether applications are
using the VM container by the presence of a statistics subrecord of type VMC,
in which the details of the resource consumption of the application is
recorded. For more information see
Displaying VMC
Statistics in the Workload Monitor.
·
In the
System Workload
Monitor (transaction ST03), analogous to the SAP Workload Business
Transaction Analysis, you can view details of resource consumption in the VM container, if
this is being used.
The VMC is
contained within the SAP kernel AS ABAP kernel and so it does not have to be
installed especially . Though it does have to be activated by changing a few
profile parameters. Note 854170 describes how to do this. The easiest way to
determine whether the VM container is activated is described in
Overview of the SAP
Application Server (section Tools).
Though the VM container is a Java runtime environment, this environment does not comply with any J2EE standard. The VMC does not therefore replace the Web AS Java. Customer developments of Java functions for the VMC are not supported.
The table below lists the most important administration tasks that may have to be executed.
Task |
Description |
Set up VM container |
You can find out in the Implementation Guide for your application whether an
activated VMC is necessary in the business scenarios you use. If this is the
case, you can find information about activating, starting up, and operating
the VM Container in |
Import urgent corrections |
Urgent corrections (outside support packages) for Java applications running in
the VM container are imported in the Errors occurring in the VM container itself are corrected with kernel patches
together with the rest of the SAP kernel. For more information, see |
The following tasks must be done periodically:
Task |
Description |
Check memory requirement |
The VM container manages the memory for various runtime data dynamically. if necessary it cleans up the memory used by Java VMs, If this memory is too small, frequent cleanups are necessary, which slows down the execution time. The |
Check number of Java VMs |
The VM container can use up to a pre-configured maximum number of Java VMs.
You cannot create just any number of Java VMs you like because the VMs require
swap space from the operating system. If too few Java VMs have been
configured, this may result in application terminations. In the |
For more
information see the documentation
SAP Virtual Machine
Container.
The information is kept up to date in the following notes:
· 854170 Switching on Component “VM Container”
· 863354 Administration of the component “VM Container”