天天看点

CODESYS 消息窗口中的内存占用数据是什么意思?消息窗口中的内存占用数据是什么意思?

消息窗口中的内存占用数据是什么意思?

每次生成代码时,都会在消息窗口中显示内存占用的数据。 下面解释使用的术语。

CODESYS 消息窗口中的内存占用数据是什么意思?消息窗口中的内存占用数据是什么意思?

Size of generated code

所有代码段的总和。

Size of global data

全局数据的大小指示全局变量占用的整个内存。 除非在全局变量区域中映射了输入或输出,否则不考虑输入和输出。

Total allocated memory size

包含整个分配的内存,包括增量编译或在线更改引起的间隙。 此外,该区域还包含为在线更改保留的内存,暂时仍未使用,即它不包含代码和数据。占用的内存对应于Highest used address。

Highest used address

这是存储器范围内的最高占用地址。 首次编译时,考虑到对齐方式(通常为8个字节),内存地址以升序分配给变量。 已使用的最高地址大约对应于已使用的内存。

Largest contiguous memory gap

在线更改时,内存仅用于新变量和新代码。先前已删除的变量和代码占用的内存被释放。这可能会导致内存不足。 在进行许多在线更改之后,内存可能会变得碎片化,即,创建了许多无法再使用的小间隙。

最大的连续存储间隙是在任何情况下仍可用于其他数据的保证大小。当然,会使用内存间隙。 例如,如果添加了字节类型的全局变量,则将其放在内存中的第一个空闲字节中。 FB实例,类型结构或数组的变量或POU的代码必须连续保存,因此会占用更多内存。因此,只能保证最大的连续可用内存。