CHARON-VAX for Linux configuration
Table of Contents
- 1 Creation of your own configuration file using a template
- 2 VAX model specification
- 3 Configuration name
- 4 Log file parameters
- 4.1 Rotating log (default)
- 4.2 Single log
- 5 TOY, ROM and EEPROM containers
- 6 Emulated memory (RAM) size
- 7 Console
- 8 Disk subsystem
- 9 Tape subsystem
- 9.1 TQK50 controller
- 9.2 TUK50 controller
- 10 Serial Lines
- 11 Networking
- 12 Auto boot
- 13 Host load balance for SMP systems
Creation of your own configuration file using a template
All CHARON templates are located in the "/opt/charon/cfg" folder. Copy the appropriate template configuration file(s) to a new directory that you have created specifically for them and give the directory proper permissions. You can name the configuration file as you wish. We recommend <hostname>-<model-name>.cfg. For example: zonker-mv3k6.cfg.
Example:
|
Please do not edit the original template configuration files since they can be updated or even removed on update/deinstallation of CHARON-VAX
Once the file has been created you can open it in your favorite editing tool and proceed with modifications to reflect the exact features of the system you are going to emulate.
We will review all the parameters step by step issuing some recommendations and guidelines.
Note: the lines preceded by the comment sign "#" inside the configuration files will not be interpreted. You can use this sign to debug your configuration.
VAX model specification
The first configuration statement is the specification of the exact VAX hardware model to emulate.
Example:
|
You must leave this line untouched.
If you create the Charon-VAX configuration file from scratch, it must be the very first uncommented line in the configuration file.
Configuration name
The next configuration statement is the "Configuration name" option.
Example:
|
You can optionally uncomment this line to differentiate this CHARON-VAX instance from all others in a multi-instances environment. The configuration name can be any label that is meaningful. It is reported in the log file and is used to set the log file name for rotating log (see further: Rotating log (default)).
Log file parameters
Execution of CHARON-VAX creates one log file or a set of log files reflecting the progress of its start-up and ongoing operation - start and end time of execution, system information, license and configuration details, warnings, reports on problems that may occur, etc. In case of possible problems either with the running CHARON-VAX or the emulated system configuration (such as the absence or malfunction of certain devices), the log file(s) is the primary source to be analyzed for troubleshooting. If it becomes necessary to contact Stromasys for support, the configuration and log files, plus the license number, will be requested to begin problem resolution.
20200523:074333:INFO :0:000003A5:hexane.cxx(5952): session: loading built-in configuration "VAX_6610"...20200523:074333:INFO :0:000003A6:hexane.cxx(5973): session: ... done loading built-in configuration "VAX_6610"20200523:074333:INFO :0:000003AA:hexane.cxx(6002): session: loading configuration file "vx6k610.cfg"...20200523:074333:INFO :0:000003AB:hexane.cxx(6026): session: ... done loading configuration file "vx6k610.cfg"20200523:074333:INFO :0:000003F2:sesmgr.cxx(1419): session: default log file size limit is 4194304 bytes20200523:074333:INFO :0:0000032B:hexane.cxx(2698): Start request received.20200523:074334:INFO :0:000003AC:hexane.cxx(1424): session: process affinity is 000000000000000F, system affinity is 000000000000000F20200523:074334:INFO :0:000003D1:hexane.cxx(1686): session: I/O domain affinity is 0000000000000001, CPU domain affinity is 000000000000000E20200523:074334:INFO :0:0000024D:licenseman(1823): Checking the available license key "1422726238".20200523:074334:INFO :0:0000024D:licenseman(1823): Found license key: "1422726238".20200523:074334:INFO :0:0000024D:licenseman(1823): Checking product section 0.20200523:074334:INFO :0:0000024D:licenseman(1823): The value "VAX_6610" of the required parameter "P_HW" is not found in the list "AlphaServer_400,AlphaServer_800,AlphaServer_1000,AlphaServer_1000A,AlphaServer_1200,AlphaServer_2000,AlphaServer_2100,AlphaServer_4000,AlphaServer_4100" for the product 0.20200523:074334:INFO :0:0000024D:licenseman(1823): Checking product section 1.20200523:074334:INFO :0:0000024D:licenseman(1823): The value "VAX_6610" of the required parameter "P_HW" is not found in the list "AlphaServer_DS10,AlphaServer_DS10L,AlphaServer_DS15,AlphaServer_DS20,AlphaServer_DS25,AlphaServer_ES40,AlphaServer_ES45,AlphaServer_GS80,AlphaServer_GS160,AlphaServer_GS320" for the product 1.20200523:074334:INFO :0:0000024D:licenseman(1823): Checking product section 2.20200523:074334:INFO :0:0000024D:licenseman(1823): The value "VAX_6610" of the required parameter "P_HW" is not found in the list "PDP1193,PDP1194" for the product 2.20200523:074334:INFO :0:0000024D:licenseman(1823): Checking product section 3.20200523:074334:INFO :0:0000024D:licenseman(1823): HASP clock: 23-May-2019 08:47:05.20200523:074334:INFO :0:0000024D:licenseman(1823): Host clock: 23-May-2019 07:43:34.20200523:074334:INFO :0:0000024D:licenseman(1823): License number: "003.msc.test.center.kirill".20200523:074334:INFO :0:0000024D:licenseman(1823): Product License number: "p.vax".20200523:074334:INFO :0:0000024D:licenseman(1823): CHARON product code: "CHVAX-4110xx-WI-LI".20200523:074334:INFO :0:0000024D:licenseman(1823): Unlimited license.20200523:074334:INFO :0:0000024D:licenseman(1823): Feature 1 check interval 1 hour(s).20200523:074334:INFO :0:0000024D:licenseman(1823): Concurrency info:20200523:074334:INFO :0:0000024D:licenseman(1823): There are 7 instances allowed.20200523:074334:INFO :0:0000024D:hexane.cxx(2848): STROMASYS SA, (C) 2009-202020200523:074334:INFO :0:00000408:hexane.cxx(2892): CHARON-VAX (VAX 6000 Model 610), V 4.12 B 21009, May 14 2020 / 003.msc.test.center.kirill / 142272623820200523:074334:INFO :0:00000336:hexane.cxx(2924): The end user of this software has agreed to STROMASYS' Terms and Conditions for Software License and Limited Warranty, as described at: /pub/doc/30-17-033.pdf20200523:074334:INFO :0:00000097:hexane.cxx(2999): OS Environment: Red Hat Enterprise Linux Server release 7.4 (Maipo), Linux 3.10.0-693.5.2.el7.x86_64 #1 SMP Fri Oct 13 10:46:25 EDT 2017 x86_64.20200523:074334:INFO :0:00000098:hexane.cxx(3004): Host CPU: GenuineIntel, Family 6, Model 42, Stepping 1, Intel Xeon E312xx (Sandy Bridge), 1 Sockets, 1 Cores per Socket, 4 Threads per Core, at ~2593 MHz, 4 cpu's available
20200523:074334:INFO :0:00000099:hexane.cxx(3009): Host Memory: 3840Mb20200523:074334:INFO :0:0000041F:hexane.cxx(3224): Configuration dump::. session:. . configuration_name = "VAX_6610". . log_method = "overwrite". . hw_model = "VAX_6610". . log_mode = "shared". . log_locale = "english". XMI:. . clock_period = "20000". . boot = "manual". RAM:. . size = "512". eeprom:. . container = "charon.rom". TOY:. . container = "charon.dat". OPA0:. . trace = "disabled". . stop_on = "F6". . tx_flush_delay = "0". PUA:. . container[0] = "/home/charon/Charon/test/performancecomparison-66x0.vdisk". . xmi_node_id = "11". EXA:. . adapter_mode = "auto". . interface = "EXA0". . rx_fifo_delay_on_overload = "false". . extended_command_ring = "false". . xmi_node_id = "13". EXA0:. . interface = "eth1". . disabled_mode = "10BaseT-HD". . port_show_driver_statistics = "false". . port_enable_mac_addr_change = "true". . port_snd_sock_buf_size_kb = "0"20200523:074336:WARN :1:00000431:lnxpackpor(1006): (95) Operation not supported: EXA0: ioctl("eth1", SIOCETHTOOL, GSET)20200523:074336:INFO :0:00000001: tpool.cxx(1374): CPU: The ACE option is omitted; enable ACE as license default.20200523:074337:INFO :0:00000133: tpool.cxx(1606): Advanced CPU Emulation (ACE) enabled.20200523:074337:INFO :0:00000400:ethdev.cxx( 388): EXA: RX FIFO size is 512KB.20200523:074338:INFO :0:0000032C:hexane.cxx(2740): "VAX_6610" started.20200523:074345:INFO :0:0000014F:lnxpackpor(1652): EXA0: Carrier loss detected.20200523:074539:INFO :0:000003D7:hexane.cxx(5548): All virtual CPUs of "VAX_6610" have been stopped by now.20200523:074539:INFO :0:0000032D:hexane.cxx(2784): "VAX 6000 Model 610" stop request received.20200523:074539:INFO :0:0000014C:lnxpackpor( 433): EXA0: Stopping network interface ... please wait.20200523:074539:INFO :0:0000024D:licenseman(1823): Licensing component received stop request.20200523:074539:INFO :0:0000032E:hexane.cxx(2811): Stopped.20200523:074539:INFO :0:0000014C:lnxpackpor( 433): EXA0: Stopping network interface ... please wait.
The next group of parameters defines the name of the CHARON-VAX log file and how CHARON-VAX will use it:
|
By default CHARON-VAX utilizes a so called "rotating log" mechanism. This means that a new default log file is created each time CHARON starts and can switch to another log file if the size of the log file exceeds 64Kb (this behavior can be changed with the "set session log_file_size" and "set session log_rotation_period" parameters; see more details in the "General Settings" chapter of this guide).
This mode is turned on if all the log parameters above are disabled (commented out) or the "session_log" parameter is pointing to an existing directory rather than to a file. If a directory is specified, the log files will be created in that directory.
The names of the rotating log files are composed as follows:
|
If the "Configuration name" parameter described before is omitted (commented out), the log name has the following format instead:
|
Note that "xxxxxxxxx" is an increasing decimal number starting from "000000000". During a session (the time between start and stop of the emulator), when the log file is rotated, this number will be incremented by 1.
Only an existing directory can be used as a value of the "log" parameter.
Single log
Alternatively it is possible to use a single log file: uncomment the "set session log" line and specify the desired CHARON-VAX log file name. Optionally, a path can be added to the log file name. If the path is not specified, the log file is created in the directory from where the guest (emulated machine) is started.
The log file can be extended ("log_method = append") or overwritten ("log_method = overwrite") by CHARON-VAX.
Below is a specification of a CHARON-VAX log file located in the "/my_logs" directory which will be appended each time CHARON-VAX starts:
|
TOY, ROM and EEPROM containers
The next objects to be configured are TOY, ROM and EEPROM containers. Their presence depends on the VAX model. It is always recommended to enable them. If a container file of the given name does not exist, CHARON-VAX will create it. Specific paths can be added to the file name specification.
TOY means "Time of Year"; its container records time, date and some console parameters while CHARON-VAX is not running. To enable the TOY, uncomment the following line:
|
The ROM container stores an intermediate state of the Flash ROM and some console parameters. It is highly recommended to define its location:
|
EEPROM stores the NVRAM content. It is highly recommended to define its location:
|
Emulated memory (RAM) size
The next parameter defines the amount of host memory the chosen CHARON-VAX model reserves for the emulation.
Example:
|
The amount of RAM is specified in MB. It cannot exceed or be lower than certain values specific for each VAX model. It is very important to keep the listed predefined increment between possible memory values.
The following table lists all the parameters per model:
Hardware Model | RAM size (in MB) | |||
| Min | Max | Default | Increment |
MicroVAX_II | 1 | 16 | 16 | 1, 8, 16 |
MicroVAX_3600 | 16 | 64 | 16 | 16 |
MicroVAX_3900 | 16 | 64 | 16 | 16 |
VAXserver_3600 | 16 | 64 | 16 | 16 |
VAXserver_3900 | 16 | 64 | 16 | 16 |
VAXserver_3600_128 | 32 | 128 | 32 | 32 |
VAXserver_3900_128 | 32 | 128 | 32 | 32 |
MicroVAX_3100_Model_96 | 16 | 128 | 16 | 16 |
VAXstation_4000_Model_90 | 16 | 128 | 16 | 16 |
VAX_4000_Model_106 | 16 | 128 | 16 | 16 |
VAX_6000_Model_310 | 32 | 512 | 32 | 32 |
VAXserver_3600_512 | 32 | 512 | 32 | 32 |
VAXserver_3900_512 | 32 | 512 | 32 | 32 |
MicroVAX_3100_Model_98 | 16 | 512 | 16 | 16 |
VAX_4000_Model_108 | 16 | 512 | 16 | 16 |
VAX_4000_Model_700 | 64 | 512 | 64 | 64 |
VAX_4000_Model_705 | 64 | 512 | 64 | 64 |
VAX_6610 | 128 | 3584 | 128 | 128 |
VAX_6620 | 128 | 3584 | 128 | 128 |
VAX_6630 | 128 | 3584 | 128 | 128 |
VAX_6640 | 128 | 3584 | 128 | 128 |
VAX_6650 | 128 | 3584 | 128 | 128 |
VAX_6660 | 128 | 3584 | 128 | 128 |
It is possible to leave the RAM line commented out. In this case the model's default RAM amount is used.
Console
Mapping to system resources
The next step is the specification of the VAX console (OPA0) serial line.
Example:
|
The goal of this configuration step is to tell CHARON-VAX what host device to use as the virtual system console. The following options are available:
Option | Description |
|---|---|
physical_serial_line | Mapping to host serial line, both physical and virtual. Use the following mapping for different types of host serial lines:
Please note: If the emulator will be configured to use a physical serial port ("/dev/ttyNN"), it must either be run as the |
virtual_serial_line | Mapping to an IP port of CHARON-VAX host. |
operator_console | Mapping to the current TTY console |
The default setting is "operator_console".
Note that the VAX 4000 and MicroVAX 3100 models have a 4-line QUART adapter onboard so their configuration for the console line looks a bit different:
|
IF VAX 4000 and MicroVAX 3100 models are used, it is possible to configure up to 4 independent console lines: OPA0, TT0, TT1 and TT2. The main one is OPA0.
Note there are a number of additional parameters for CHARON-VAX serial line configuration. Follow this link for details.
Exit on pressing F6 key
A hot key can be defined to stop the execution of the CHARON-VAX virtual machine:
|
It is strongly recommended to uncomment this line to provide CHARON-VAX the ability to exit by pressing the "F6" key.
Disk subsystem
The next step is the configuration of the disk subsystem and mapping it to the system resources using the samples given in the template configuration files.
CHARON-VAX supports MSCP, DSSI, CI and SCSI disk controllers. The examples below are for MSCP and SCSI controllers only. DSSI controllers are discussed in details in the following section and CI controllers in this section.
MSCP disk controllers (RQDX3, KDB50, KDM70)
Below is a typical configuration sample for MSCP disk controller RQDX3:
|
The first line ("load RQDX3 DUA") loads disk controller RQDX3 with name DUA, followed by 4 lines showing different ways of mapping to the host resources:
Type of mapping | Description |
|---|---|
"<file-name>.vdisk" | Mapping to files representing physical disks of the VAX system (disk images). |
"/dev/disk/by-id/<ID>" | Mapping to physical disks. "L" is letter here. Be careful not to destroy all the information from the disk dedicated to Charon-VAX by mistake! These disks can not be formatted by the host OS. It is also possible to a particular partition of a disk. In this case the syntax is the following: "/dev/disk/by-<thing>/<ID/UUID><PART>" where <thing> is "id" or "uuid", <ID/UUID> is the corresponding entry in the directory and <PART> is the number of partition to be used. Beware: Since "/dev/sd<L>" addressing is not persistent, so it is strongly recommended to use "/dev/disk/by-id/wwn-*" or "/dev/disk/by-uuid/<UUID>" syntax instead to refer the disk by its ID or WWID - especially in the enviroments utilizing FC and SAN storages (see below) |
"/dev/dm-<N>" | Mapping to multipath disk. Beware: When passing a Linux storage device via the emulator to the guest operating-system, you must take care to avoid writing to the device at the Linux level – doing this will destroy all data on a disk. These disks must not be formatted by the host OS. |
"/dev/disk/by-*" | Mapping to physical disk.
Be careful not to destroy all the information from the disk dedicated to CHARON-VAX by mistake. These disks must not be formatted by the host OS. |
"/dev/sr<N>" |
© Stromasys, 1999-2025 - 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.
Need fast, reliable migration? We have done it countless times. Talk to an expert