VxWin - Real-time Hypervisor: Windows + VxWorks

Manuals

VxWin

Version Description HTML PDF
8.1 VxWin Manual - PDF
8.0 VxWin Manual - PDF
7.1 VxWin Manual - PDF

General

Version Description HTML PDF
8.1 RtosVM-UserManual
(System Configuration, Communication, …)
- PDF
8.0 RtosVM-UserManual
(System Configuration, Communication, …)
- PDF
7.1 RtosVM-UserManual
(System Configuration, Communication, …)
- PDF
1.0.1 Windows Update Handling
How to keep the configuration valid after Windows updates.
HTML ZIP
1.0.0 Cache-Allocation-Technology Guide
How to optimize CAT configuration.
HTML -

FAQ1019: how to build yocto RT image with atemsys

The following FAQ describes how to build yocto real time Linux image with Acontis atemsys kernel module inside. The Kernel is also optimized for real time usage and could be used together with Acontis EtherCAT Master.

You need Ubuntu PC or virtual machine. We have tested it for the Ubuntu 20.04.

Create working folder and clone yocto repo:

cd ~/build_yocto_nativ_rt
git clone -b kirkstone git://git.yoctoproject.org/poky

Download the package into ~/build_yocto_nativ_rt

Extract it:

tar -xf ~/build_yocto_nativ_rt/acontis_rt.tar.xz -C ~/build_yocto_nativ_rt

Run yocto build:

cd ~/build_yocto_nativ_rt/poky/
source oe-init-build-env
bitbake-layers add-layer ../../acontis_rt
bitbake core-image-rt

Last command can take several hours. When the build is ready you can copy the image to your USB drive.

Image should be copied using bmaptool tool. To download please use:

curl -Lo bmaptool https://github.com/01org/bmaptools/releases/download/v3.4/bmaptool && chmod +x bmaptool

Image copy command:

sudo bmaptool copy --bmap ~/build_yocto_nativ_rt/poky/build/tmp/deploy/images/intel-x86-64/core-image-rt-intel-x86-64.wic.bmap ~/build_yocto_nativ_rt/poky/build/tmp/deploy/images/intel-x86-64/core-image-rt-intel-x86-64.wic /dev/sdb

On you PC USB stick could different name from /dev/sdb

 

Last update on 2023-10-19 by Realtime Support Team.

FAQ1018: How can I adjust the Windows System Manager Lights settings (enable checks, set threshold values)

  • Copy the settings.xml file located in C:\Program Files\acontis_technologies\RteRuntime into a temporary folder
  • Adjust the Property Key "RtAnalyzeThresholds"
  • CT_CHK=1: enablle the clock throttling check
  • CT_GOOD: clock throttling below this value in microsecond will lead to green lights
  • CT_BAD: clock throttling above this value in microsecond will lead to red lights
  • TL_CHK=1: enable task latency check
  • TL_GOOD: maximum task latency below this value in microsecond will lead to green lights
  • TL_BAD: maximum task latency above this value in microsecond will lead to red lights
  • SMI_CHK=1: enable System Management Interrupt check

Last update on 2023-05-11 by Realtime Support Team.

FAQ1017: Is it possible to use DMA protection, Virtualization Based Security or Core Isolation with LxWin, VxWin and RTOS32Win?

No, you must not use these features. The Hypervisor products do not support to run when they are enabled.

Last update on 2023-05-11 by Realtime Support Team.

FAQ1016: Is it possible to use Bitlocker with LxWin, VxWin and RTOS32Win?

On Windows 11 Pro as well as Windows 10 IOT Enterprise BitLocker can be used.
All settings 1(Full Disc Encryption, Partial Encryption, New Encryption Standard, Compatibly Encryption Standard) are supported.
There is no restriction regarding the installation order, you may enable BitLocker before or after installing the acontis Hypervisor products.

Last update on 2023-05-11 by Realtime Support Team.

FAQ1015: How to delete a CodeMeter (CmAct) virtual Dongle

Sometimes a virtual dongle is not required but already installed.
It can be removed using the CodeMeter Control-Center (cc icon in task bar) but on default the delete button is disabled.

This registry setting (use regedit.exe) will enable the delete button:
[HKEY_CURRENT_USER\Software\WIBU-SYSTEMS\CodeMeterCC]
"AllowCmActDelete"=dword:00000001

After changing registry a reboot is required to activate the new setting.
It might be a good idea to remove the setting afterwards to prevent accidental deletions.

Last update on 2023-02-28 by Realtime Support Team.

FAQ1014: Why does Windows use (or not use) "Realtime OS Devices" driver for a new device?

When several compatible driver packages for a new device are found the ranking will decide which one is used. Detailed information about the ranking score can be found searching for "How Windows Ranks Driver Packages".

Our driver does not pursuit a top rank because the OS could decide to prefer it on some vital devices replacing their typical driver. The rank of our driver is lowered by providing a valid 'compatible-id' but an invalid 'hw-id' (search "INF Models section" for details).

Avoid our driver:

  • Before adding a new device its driver package should already be installed. The package has a matching 'hw-id' so it will outrank our driver.
  • Instead of using our universal PCI driver "RTOS_PCI.inf" an individual .INF could be created supporting only specific device(s). This could be useful for companies having a specific set of devices to be used by RTOS.
    Be aware that such an .INF file represents a driver package which has to be signed by Microsoft. Setting up a singing process requires a registration at Microsoft and a "EV code signing certificate" but has no further costs - except it is absolute non-trivial. Each change to the .INF or one of its mentioned files requires a new signing.

Prefer our driver:

  • Install our driver package and remove other matching packages before installing the device.
  • Use an individual .INF outranking other drivers. Required singing process is mentioned above.

Last update on 2022-10-27 by Realtime Support Team.

FAQ1013: Firmware settings regarding realtime optimization

WARNING:
You are changing firmware settings on your own risk.
Every system is different and changing a setting might work for one system but prevent another from starting or even cause physical damage.
Please ensure you know how to clear settings in case the system does not start any more.

It is a wise strategy is to note every change and modify only one setting at a time. Some will require a power cycle to make them effective.
Generally said it is always "power saving" versus "latency" so disabling power savings typically reduces latency.

List of settings known to influence latency behaviour:

Disable when available:

  • Intel Turbo Boost Technology
  • Enhanced Intel Speed Step (EIST)
  • Intel Hyper-Threading Technology (HT)
  • C-States
  • Intel Speed Shift Technology (SST)
  • PCI Express Link ASPM Control
  • DMI Link ASPM Control
  • Aggressive LPM Support
  • Render Standby (RC6)
  • GT PM Support
  • PCI Clock Gating
  • Throttling (Thermal, PCH, ...)

Enable when available:

  • Legacy IO Low Latency

Set when available:

  • 0 for offset of Thermal Control Circuit (TCC) activation temperature
  • Fixed (high) for SA Speed Enhanced Speed Steps (SA-GV)

You know other firmware settings optimizing realtime behaviour? Let us know and we can add them here.

Last update on 2022-04-26 by Realtime Support Team.

FAQ1012: Why is it important to configure the system properly before creating a virtual dongle (CmAct) license request?

The virtual dongle locks to the hardware found. Assigning processors or devices to RTOS will change this configuration from the virtual dongles point of view.

We use the recommended medium tolerance level for our licenses so not every change has to break the license but it is strongly recommended to create the license not before the system is configured properly - meaning:

  • Configure the correct number of CPUs for Windows and RTOS.
  • The devices designated for RTOS should already be assigned (especially network cards).
  • Remove all optional or temporary installed device from the system (especially network cards).

This will ensure the license can bind to the proper hardware.

Last update on 2022-04-26 by Realtime Support Team.

FAQ1011: The network card uses an address different from the one manually configured.

Our "Realtime OS Virtual Network Adapter" network address on Windows is typically "192.168.157.1". In rare cases the configured value is ignored by the card.
The TCP/IP dialog setting should be verified against the output of the shell command "ipconfig /all".
 
The reason is most likely a corrupted network stack where the (index based) configurations and cards got out of sync.
We observed such behaviour in the context of updating network driver and adding/removing network adapter.
 
There are several solutions:
- Use "192.168.157.3" instead of "192.168.157.1". It is an easy workaround when "192.168.157.1" is not a requirement.
- "reset network stack" is also possible. Searching the web for this brings up several articles describing the process.
- Another option is to uninstall all network card drivers (do not remove the driver packages), reboot and let Windows find and install the driver again.
Warning: All manual network settings will be lost with the later two options and have to be restored.

Last update on 2022-04-26 by Realtime Support Team.

FAQ1010: How to gather information required to analyze software dongle (CmAct) license problems

To analyze CmAct problems the following information might be required:

  1. CmDust-Result.log - instruction below
  2. Logs
    Windows: C:\ProgramData\CodeMeter\Logs
    Linux: /var/logs/CodeMeter
  3. License files
    Windows: C:\ProgramData\CodeMeter\CmAct
    Linux: /var/lib/CodeMeter/CmAct

CmDust-Result.log instructions

  • Windows
    Open Start -> CodeMeter -> CmDust
    Program will close immediately and open file explorer at created "CmDust-Result.log".
  • Linux
    Run "cmu --cmdust --file CmDust-Result.log" to create the file.

Last update on 2022-04-26 by Realtime Support Team.

FAQ1009: How to solve an interrupt conflict

There is an interrupt conflict when at least two devices, one from RTOS and one not, are sharing the same physical wire for signaling an interrupt. This way a non RTOS device could interrupt RTOS resulting in the loss of realtime capability.
 
A possible solution is
  • to assign the device without an interrupt. This requires specialized software and driver for the device on RTOS side like our Ethercat-LinkLayer. This solution does not work for any standard driver because they always expect the interrupt to be available.
  • to use Message-Signaled-Interrupts (MSI) instead of the legacy line interrupt. This must be supported by the device and driver but will avoid any conflict.
  • to put the device into another slot. Typically the interrupt lines are swapped between the slots so another line should be used.
  • to disable the conflicting non-RTOS device or also assign it to RTOS.
    In very rare cases host configuration allows the non-RTOS devices to be configured without an interrupt (like LPT for example).
  • to use a more recent or alternative version of the device supporting MSI.
 
If the conflict can't be solved this device can't be used for realtime on this platform due to the shared interrupt.
 

Last update on 2021-09-07 by Realtime Support Team.

FAQ1008: How to enable VT-x support only (without enabling VT-d)

Enabling VT-x without enabling VT-d is only useful for test purposes as no physical devices which need DMA support will work then. This may be usedful for example to determine if SMIs can be suppressed.

VT-x only can be enabled using the following config file entry:

[Vmf]
"VtAllowed"=dword:5

Last update on 2021-03-15 by Realtime Support Team.

FAQ1007: How to get an update for the RTOS32Win, RT-Win and EC-Win(RTOS-32) products?

Request an update from acontis through the following site: https://developer.acontis.com/ethercat-latest-versions.html

You will get the latest version then from acontis.

Check the On Time RTOS-32 version which is required for the update.

If necessary, update your On Time RTOS-32 version to this version. Do not use a different version, this is not supported by acontis.

Last update on 2020-12-17 by Realtime Support Team.

FAQ1006: How can I create my own setup?

Please checkout chapter 15 Appendix C - "Installation" of RtosVM-UserManual.pdf.

Last update on 2020-12-17 by Realtime Support Team.

FAQ1004: How can I generate an Error Report using the System Manager?

The following steps have to be executed to generate the error report:

  1. Start System Manager
  2. Load the Virtual Machine
    Start VMF
  3. Ignore the error message (e.g. cancel), do not stop the System Manager or shutdown Windows
  4. Generate the error report
    Generate Report

Last update on 2020-12-17 by Realtime Support Team.

FAQ1003: How can I get a virtual dongle to unlock my target?

Please checkout the following document RtosVM-UserManual-Licensing.pdf.

Last update on 2020-12-17 by Realtime Support Team.

FAQ1002: Can I use hyperthreading?

It can be enabled, but it is not recommended as the jitter will be significant higher and real-time behavior in most cases is not acceptable.

Last update on 2020-12-17 by Realtime Support Team.

FAQ1001: How can I determine, if my hardware is capable to run Real-time applications?

Please checkout our PC-Hardware and Real-time Optimization section.

Last update on 2020-12-17 by Realtime Support Team.

FAQ1000: Error 0x0022270B - Timer frequency measurement delay limit reached

The measuring periods to determine the timer input frequency varied above a minimum.

In case of problems regarding timer period (e.g. clock drift between master and slaves) this message indicates a possible reason. It can be ignored in other cases.

The message can be disabled using the following config file entry:

[Vmf]
"TimerMeasureDelayLimit"=dword:0

Disabling the message as no negative side effects.

Last update on 2021-03-15 by Realtime Support Team.

E-Mail Support

Real-time products: rtsupport@acontis.com
Japanese support: jpsupport@acontis.com