Konfiguration
Die gesamte Konfiguration der TwinCAT 3 Usermode Runtime wird in dem \3.1-Verzeichnis vorgenommen. Der Aufbau der Verzeichnisse ist unter Dateiablage beschrieben.
Hier befinden sich die üblichen Dateien, die auch für die Echtzeit-Runtime verwendet werden. Dieses betrifft zum einen das Boot-Verzeichnis, welches durch das Aktivieren einer Konfiguration das auszuführende Programm besitzt. Zum anderen auch das Target-Verzeichnis, welches beispielsweise auch die Routeninformationen durch die StaticRoutes.xml für die Usermode Runtime besitzt.
Unter Windows speichert TwinCAT eine Reihe von Einstellungen in der systemweiten Windows Registry. Da die Usermode-Runtime ggf. andere Einstellungen besitzen soll als die Echtzeit-Runtime, ist hierfür die Datei TcRegistry.xml lokal im \3.1-Verzeichnis vorgesehen.

Für die TwinCAT 3 Usermode Runtime sind insbesondere folgende XML-Einträge in der TcRegistry.xml von Interesse:
- Die verwendete Struktur gleicht der Windows Registry, sodass Adaptionen auch für weitere Komponenten abgeleitet werden können.
- HeapMemSizeMB (siehe Beispiel unten): Größe des genutzten Speichers insgesamt.
Er entspricht im In der Realtime-Runtime dem Non-Pagedpool von Windows, wird in der Usermode-Runtime aber komplett beim Aufstarten allokiert. Der Speicher muss ausreichen für - Routerspeicher: Wird definiert über das Engineering Realtime-Tab->Settings->Router Memory. Dieser Wert wird als
LockedMemSize
(in Bytes) in der TcRegistry.xml hinterlegt. - Anwendungsspeicher: Speicher, der durch die Runtime selbst, die SPS, TMX Module oder auch dynamisch durch die Anwendung allokiert wird.
<?xml version="1.0"?>
<TcRegistry>
<Key Name="HKLM">
<Key Name="Software">
<Key Name="Beckhoff">
<Key Name="TwinCAT3">
<Value Name="CurrentVersion" Type="SZ">3.1</Value>
<Key Name="System">
<Value Name="RunAsDevice" Type="DW">1</Value>
<Value Name="AmsNetId" Type="BIN">C0A804010101</Value>
<Value Name="HeapMemSizeMB" Type="DW">512</Value>
</Key>
[…]