Try OpenEdge Now
skip to main content
Guide for New Developers
Introducing OpenEdge Platform : A comprehensive view of the components in OpenEdge : The ABL Virtual Machine (AVM)
 

The ABL Virtual Machine (AVM)

The AVM is a platform for compiling and running ABL code. Often called the OpenEdge runtime or client, the AVM also provides many other services, such as performing syntax checks, running OpenEdge and user-designed tools, and running startup procedures. In Progress Developer Studio for OpenEdge, every OpenEdge project is associated with an AVM.
Note: The AVM process is prowin32.exe for Windows applications and _progres.exe for TTY applications.
Project-specific AVMs You might want to configure individual AVMs when projects in a workspace do not have the same requirements.You could, for example, create projects with different PROPATH settings by configuring an individual AVM for each project. Configure project-level AVMs on the properties pages for OpenEdge projects (Project > Properties > Progress OpenEdge).
Shared AVMs You can configure an AVM that is available to every project within a workspace. If, for example, you are developing an application that is divided into multiple project modules within a single workspace, you might want all the project modules to use an AVM that has the same startup parameters, the same PROPATH, the same database connections and so on. Configuring a shared AVM for all the project modules guarantees that all those settings are the same. In addition, the shared AVM conserves memory and CPU resources. You configure a shared AVM as a workspace preference (Window > Preferences > Progress OpenEdge > Shared AVM).
Runtime AVMs By default, when you run an ABL executable in a project, the AVM associated with the project (project-specific or shared) runs the ABL executable. However, you can also create launch configurations that start a new instance of the AVM when you run the file. Configure separate runtime AVMs when you create launch configurations in your workspace (Run > Run Configurations...).