Release Notes for RTX64 4.0

 


Key Features

Memory

RTX64 4.0 implements a completely new local memory allocation architecture. The local memory configuration now contains multiple allocation spaces. See Allocation Spaces in Local Memory for more information. (4509)

Key memory changes and improvements:

Network and Drivers

Tools and Utilities

 


Improvements

RTX64 Runtime

Licensing

Network and Drivers

Tools and Utilities

RTX64 SDK

Application Development

Application Debugging

!rtims / !rtems Displays summary and statistical information for the internal memory allocation space (MSpace) of a process.
!rtimspool / !rtemspool Displays local pool information for the process internal/external memory allocation space (MSpace) of a process.
!rtimspoolfg / !rtemspoolfg Displays fragmentation information within the local pool of an internal/external memory allocation space (MSpace) of a process.
!rtimspoolcache /!rtemspoolcache Displays chunk information within the pool cache of an internal memory allocation space (MSpace) of a process.
Real-Time APIs
Native Framework APIs

NOTE: This enumeration replaces the RTFW_SUBSYSTEM_STATUS enumeration from versions previous to RTX64 4.0.

NOTE: This structure replaces the RTFW_NETWORK_CONFIGURATION structure from versions previous to RTX64 4.0.

NOTE: This structure replaces the RTFW_NETWORK_CONFIGURATION structure from versions previous to RTX64 4.0.

Managed Framework APIs
  • Added new properties to Managed Framework class IntervalZero.RTX64.Config.ScheduledProcess (8307):
  • MSpaceInitialSize gets/sets the size, in kilobytes, by which to allocate Non-Paged memory from Windows into the Local Pool of the MSpace at process startup.
  • MSpaceExpandSize gets/sets the size, in kilobytes, by which to expand an RTSS processes' internal/external MSpaces.
  • Added new APIs to Managed Framework class IntervalZero.RTX64.RTAPI.RtssEnvironment (8320):
  • Method GetProcessMSpace retrieves a descriptor of the external and internal memory allocation space (MSpace) for the specified RTSS process or system process.
  • Method QueryProcessMSpace queries memory allocation space information for the specified process MSpace, including various summary statistics of its local pool and pool cache.
  • Structure MSPACE_INFO contains information for a single memory allocation space (MSpace).
  • Added new local memory configuration properties to Managed Framework class IntervalZero.RTX64.Config.Subsystem (8303, 8493):
  • EnableLocalMemory accesses the configuration parameter that specifies whether the RTX64 Subsystem uses Local memory (MSpaces) or Windows memory. If true, the real-time Subsystem memory allocation uses Local memory MSpaces. If false, the Subsystem allocates memory by requesting it from Windows.
  • NALExtMSpacePoolMinimumSize accesses the configuration parameter that specifies the minimum size, in kilobytes, of the local pool within the Network Abstraction Layer (NAL) external MSpace.
  • NALMSpacesPoolExpandable accesses the configuration parameter that specifies whether the local pool within the Network Abstraction Layer (NAL) MSpaces is expandable. If true, the local pool within the NAL MSpace is expandable by the amount specified by NALMSpacesPoolExpandSize when depleted.
  • NALMSpacesPoolExpandSize accesses the configuration parameter that specifies the size, in kilobytes, by which to expand the local pool within the Network Abstraction Layer (NAL) MSpaces when NALMSpacesPoolExpandable is set to true.
  • ProcessExtMSpacePoolMinimumSize accesses the configuration parameter that specifies the minimum size, in kilobytes, of the local pool within the RTSS process external MSpace.
  • ProcessIntMSpacePoolMinimumSize accesses the configuration parameter that specifies the minimum size, in kilobytes, of the local pool within the RTSS process internal MSpace.
  • ProcessMSpacesPoolExpandable accesses the configuration parameter that specifies whether the local pool within the RTSS process MSpace is expandable. If true, the local pool within the RTSS process MSpace is expandable by the amount specified by ProcessMSpacesPoolExpandSize when depleted.
  • ProcessMSpacesPoolExpandSize accesses the configuration parameter that specifies the size, in kilobytes, by which to expand the local pool within the RTSS process MSpace when ProcessMSpacesPoolExpandable is set to true.
  • ProcessMSpacesPoolShrinkable accesses the configuration parameter that specifies whether the local pool within the RTSS process MSpace is shrinkable.
  • SystemExtMSpacePoolMinimumSize accesses the configuration parameter that specifies the minimum size, in kilobytes, of the local pool within the system process external MSpace.
  • SystemIntMSpacePoolMinimumSize accesses the configuration parameter that specifies the minimum size, in kilobytes, of the local pool within the system process internal MSpace.
  • SystemExtMSpacePoolCommit accesses the configuration parameter that specifies whether the local pool within the system process external MSpace is committed at startup.
  • SystemMSpacesPoolExpandable accesses the configuration parameter that specifies whether the local pool within the system process MSpace is expandable by the amount specified by SystemMSpacePoolExpandSize when depleted.
  • SystemMSpacesPoolExpandSize accesses the configuration parameter that specifies the size, in kilobytes, by which to expand the local pool within the system process MSpace when SystemMSpacePoolExpandable is set to true.
  • SystemMSpacesPoolShrinkable accesses the configuration parameter that specifies whether the local pool within the system process MSpace is shrinkable.
  • TCPIPExtMSpacePoolMinimumSize accesses the configuration parameter that specifies the minimum size, in kilobytes, of the local pool within the RT-TCP-IP Stack external MSpace.
  • TCPIPMSpacesPoolExpandable accesses the configuration parameter that specifies whether the local pool within the RT-TCP/IP Stack MSpace is expandable. If true, the local pool within the RT-TCP/IP Stack MSpace is expandable by the amount specified by TCPIPMSpacesPoolExpandSize when depleted.
  • TCPIPMSpacesPoolExpandSize accesses the configuration parameter that specifies the size, in kilobytes, by which to expand the local pool within the RT-TCP/IP Stack MSpace when TCPIPMSpacesPoolExpandable is set to true.
  • ZeroMemoryAtAllocation accesses the configuration parameter that specifies whether the memory allocated by malloc or similar C-Runtime functions is initialized to zero (according to the C99 specification).
  • Added new method SetHALTimerPeriod to Managed Framework class IntervalZero.RTX64.Config.Subsystem, which sets the HAL timer period (in microseconds) for the RTX64 Subsystem.
  • Added new method ResetToStart to Managed Framework class IntervalZero.RTX64.Monitor, which resets the event reader so the next call to EventReader.ReadEvents returns event(s) from the start of the monitoring session. (8725)
  • Added new methods to Managed Framework class IntervalZero.RTX64.Control.Subsystem:
  • GetNALStatus queries the status of the Network Abstraction Layer (NAL).
  • GetTCPIPStatus queries the status of the RT-TCP/IP Stack.
  • Added a new class to Managed Framework namespace IntervalZero.RTX64.Control, NetworkInterfaceStatus, which contains these new properties:
  • Name indicates the name of the network interface.
  • NALInterfaceStatus indicates the status of the NAL interface.
  • TCPIPInterfaceStatus indicates the status of the TCP/IP interface.
  • ErrorCode holds the native Windows or RTX64 custom error code, if either NALInterfaceStatus or TCPIPInterfaceStatus is ComponentStatus.Error.
  • Changed RT-TCP/IP Stack-specific error codes to include the prefix RT_ERROR_STACK. (8161)

 


Issues Resolved

RTX64 Runtime

Help

Licensing

Subsystem

Network and Drivers

Tools and Utilities

RTX64 SDK

Application Development and Debugging

SDK

Real-Time
Native Framework
Managed Framework

Samples

 


Notes

RTX64 Runtime

Compatibility

Licensing

General

Subsystem

Network and Drivers

Tools and Utilities

Application Development

Visual Studio version Tested Windows SDK versions
2019 10.0.18362.x
2017

10.0.14393.x

10.0.17763.x

2015

10.0.10240.x

8.1

RTX64 SDK

See API Changes Between RTX64 3.x and RTX64 4.x for a list of the APIs that were enhanced, underwent breaking changes, or were deprecated in or removed from RTX64 4.0.

 


Known Issues

RTX64 Runtime

General

Network and Drivers

Tools and Utilities

RTX64 SDK

Application Development

Samples