Running CHARON-VAX for Linux

Table of Contents

CHARON-VAX symbolic links

Each model of CHARON-VAX has a symbolic link defined to point to the corresponding CHARON executable (see the table below). If the PATH is correctly defined, you can start a virtual machine by specifying the link followed by the configuration file. This is described further.

Link name

Emulator to run

mv3k196

MicroVAX 3100 Model 96

mv3k198

MicroVAX 3100 Model 98

mv3k6MicroVAX 3600
mv3k9MicroVAX 3900

mvii

MicroVAX II

vs4k90

VAXStation 4000 Model 90

vx3k6

VAXserver 3600

vx3k6_128

VAXserver 3600 (128Mb of RAM is available)

vx3k6_512

VAXserver 3600 (512Mb of RAM is available)

vx3k9

VAXserver 3900

vx3k9_128

VAXserver 3900 (128Mb of RAM is available)

vx3k9_512

VAXserver 3900 (512Mb of RAM is available)

vx4k106

VAX 4000 Model 106

vx4k108

VAX 4000 Model 108

vx4k700

VAX 4000 Model 700

vx4k705

VAX 4000 Model 705

vx6k310

VAX 6310

vx6k610

VAX 6610

vx6k620

VAX 6620

vx6k630

VAX 6630

vx6k640

VAX 6640



Link nameEmulator to run
vx6k650VAX 6650
vx6k660VAX 6660

Running CHARON-VAX emulators

It is possible to run one or several instances of CHARON-VAX at the same time if your license allows it.

For multiple instances, please use only absolute paths and unique names to all the files referenced in the configuration file of each CHARON-VAX instance (log, toy clock, nvram files and all the other data such as disk images - all these objects will be explained later; at this stage just pay attention to the files specified in the configuration file) and check the hardware devices are used by only one instance at a time (not shared).

Example:

...
set session log="/charon_instances/first/mv3k6.log"
set toy container="/charon_instances/first/mv3k6.dat"

load RQDX3/RQDX3 DUA
set DUA container[0]="/charon_instances/first/mv3k6_boot_disk.vdisk"
... 

Please refer to the next chapters for more details concerning CHARON-VAX configuration details.

Running from the console

Copy the selected configuration template from the "/opt/charon/cfg/" directory to some local file and set the correct privileges for the file to be edited.

Example:

$ cp /opt/charon/cfg/mv3k6.cfg.template my_mv3k6.cfg
$ chmod 644 my_mv3k6.cfg

Run the virtual machine using this configuration file:

$ mv3k6 my_mv3k6.cfg

Below is an example of a normal VAX test sequence, followed by the prompt sign (">>>"):

KA650-A V5.3, VMB 2.7
Performing normal system tests.

40..39..38..37..36..35..34..33..32..31..30..29..28..27..26..25..
24..23..22..21..20..19..18..17..16..15..14..13..12..11..10..09..
08..07..06..05..04..03..
Tests completed.
>>>

The next stage can be either installation of a new VAX/VMS system using a distributive provided by HP or data transfer from some existing VAX system. These possibilities will be discussed in details in the next chapters.

If for some reason CHARON-VAX refuses to start, please look for files with .log extension (CHARON-VAX log files) located in the directory from where CHARON-VAX was started, open them with an editing tool and analyze their content. In most cases those files contain very helpful information on what may possible went wrong.


To exit from the CHARON-VAX emulator use the following methods:

ConfigurationHow to exit
No change to the template configuration file (not recommended)Kill the console from where CHARON runs (CTRL-C for example) or kill the CHARON process

Enable "F6" button in configuration file to trigger exit from CHARON:

set OPA0 stop_on = F6

Press the "F6" key


(warning) Please note that before stopping CHARON-VAX, a clean shutdown of the operating system running on the virtual machine has to be performed.

Options for running CHARON-VAX from console

If "-h" of "--help" option is specified when running CHARON-VAX from console, it displays a list of additional available options:

Usage:

  <program-name> [options] [<configuration-file-name>]

Command line options:

  -l,--log <file-name>             - write log to the file (overwrite),
                                     until configuration is loaded;
  -la,--log-append <file-name>     - write log to the file (append),
                                     until configuration is loaded;
  -f,--configuration <file-name>   - read configuration from the file;
  -d,--daemon                      - run detached;
  -h,--help                        - display this text

Note that configuration file must be supplied either as a command line
operand <configuration-file-name> or using '-f' command line option followed
by name of the configuration file.

Options to use with CHARON Manager:

  -a,--alias <alias-name>          - virtual machine alias name;
  -s,--shm-name <shm-name>         - name of shared memory section

The last 2 options are used for running CHARON-VAX in Baremetal environment,


Running as system service (daemon)

It is possible to run CHARON-VAX as a daemon (service). In this case the CHARON-VAX process will be detached from its parent process and from the terminal window in which it runs.

Follow the description below to install and execute CHARON-VAX as a daemon:

Installation and start of CHARON-VAX service


  1. Copy the sample script "/opt/charon/bin/charon.service" ( "/opt/charon/bin/charon" for Red Hat  Linux 6.x) to the "/usr/lib/systemd/system/" directory (or to your home directory for Red Hat Enterprise Linux 6.x).

    Example:

    Red Hat Linux 6.x

    $ cp /opt/charon/bin/charon /my_services/mv3k6_service
    $ chmod 755 /my_services/mv3k6_service

    Red Hat Enterprise Linux/CentOS 7 & 8

    $ cp /opt/charon/bin/charon.service /usr/lib/systemd/system/mv3k6.service
    $ chmod 755 /usr/lib/systemd/system/mv3k6.service

  2. Edit the renamed file to replace sample values of the following parameters.

    Example:

    Red Hat Linux 6.x

    exec="/opt/charon/bin/mv3k6"
    prog="my_mv3k6"
    config="/my_services/mv3k6-service.cfg"

    Red Hat Enterprise Linux/CentOS 7 & 8

    ExecStart=/opt/charon/bin/mv3k6 -d /my_services/mv3k6-service.cfg
    WorkingDirectory=/my_services

    (warning) "my_mv3k6" is a service name in the example above

             

  3. Create and edit the configuration file ("/my_services/mv3k6-service.cfg" in the examples above) the way it was described before and make sure the following pre-requisites are met:
    • OPA0 must be configured as a virtual port or physical console, not as an operator console.

      Example:

      load virtual_serial_line OPA0 port=10003
      #load operator_console OPA0

    • Use only absolute paths to log, toy clock, nvram files and all the other data such as disk images, etc. The names of the references files must be unique.

      Example:

      ...

      set session log="/my_services/my_mv3k6.log"
      set toy container="/my_services/my_mv3k6.dat"

      load RQDX3/RQDX3 DUA
      set DUA container[0]="/my_services/mv3k6_daemon_boot_disk.vdisk"
      ...

    • Make sure the same physical devices are not used by other CHARON-VAX daemons and the OPA0 console port number is unique across the CHARON server.


Once configuration file is ready, execute the following commands (based on the examples above) to install and start CHARON-VAX as a daemon:

Red Hat Linux 6.x

# ln -sf /my_services/mv3k6_service /etc/init.d/mv3k6_service
# chkconfig mv3k6_service on
# service mv3k6_service start

Red Hat Enterprise Linux/CentOS 7 & 8

# systemctl enable mv3k6.service
# systemctl start mv3k6.service

Red Hat Enterprise Linux/CentOS 7 & 8

If you update the /usr/lib/systemd/system/<my virtual machine>.service file, the following command must be executed in order to take changes into account:

# systemctl daemon-reload

Note that a certain delay may appear in finding network licenses by Sentinel Run-time on CHARON-VAX host system startup. If the CHARON-VAX service is starting automatically at host system startup, it may report a "License not found" error and exit.

This problem can be avoided by specifying the "license_key_lookup_retry" parameter in the following way:

set session license_key_lookup_retry = "N [, T]"

where:

  • N = Number of retries looking for the license key (or keys)
  • T = Time between retries in seconds. If not specified, 60 seconds is used

Example:

set session license_key_lookup_retry = 5

In this example, if the license key is not found during initial scan, CHARON-VAX will do 5 more attempts waiting 60 seconds between them.

See General Settings section for more details.



Stopping CHARON-VAX service

To stop a CHARON-VAX daemon, use the following commands.

Example:

Red Hat Linux 6.x

# service mv3k6_service stop

Red Hat Enterprise Linux/CentOS 7 & 8

# systemctl stop mv3k6

(warning) Please note that before stopping a CHARON-VAX service, a clean shutdown of the operating system running on the virtual machine has to be performed.

Removing CHARON-VAX service

To remove a CHARON-VAX daemon use the following commands.

Example:

Red Hat Linux 6.x

# chkconfig mv3k6_service off
# chkconfig --del mv3k6_service
# rm -f /etc/init.d/mv3k6_service

Red Hat Enterprise Linux/CentOS 7 & 8

# systemctl disable mv3k6.service
# rm -f /usr/lib/systemd/system/mv3k6.service 

(warning) Please note that before removing a CHARON-VAX service, a clean shutdown of the operating system running on the virtual machine has to be performed and the service has to be stopped.

(info) Please refer to the next chapters for more details concerning CHARON-VAX configuration details




© Stromasys, 1999-2024  - All the information is provided on the best effort basis, and might be changed anytime without notice. Information provided does not mean Stromasys commitment to any features described.