一种控制系统的内存管理方法、装置、设备及存储介质与流程

文档序号:25088464发布日期:2021-05-18 19:07阅读:152来源:国知局
一种控制系统的内存管理方法、装置、设备及存储介质与流程

1.本发明涉及内存管理领域,特别涉及一种控制系统的内存管理方法、装置、设备及计算机可读存储介质。


背景技术:

2.目前,由于控制系统的系统资源有限,因此如何使用有限的系统资源,使控制系统在运行效率满足控制程序的使用需求的情况下,尽量减少控制程序占用系统资源,成为一门重要的课题。对于存储资源来说,一般通过内存管理技术来尽量减少内存碎片,以尽量降低对存储资源的浪费。
3.如图1为现有技术提供的一种控制系统的内存管理方法的过程示意图,现有技术中,首先将各数据区的所有变量按照对齐方式顺序排布,此时各数据区分别只有一个空闲块;当有变量回收时,各回收的变量对应的内存空间将成为空闲块;如果有新增变量,则遍历各空闲块,在空闲块中找到能够容纳该新增变量的空闲块,并在该空闲块中按照对应的对齐方式存储该新增变量;由于新增变量在空闲块中的实际占位为该新增变量的对齐方式的占位,因此现有技术在利用空闲块存储新增变量时,仍将由于空闲块的大小大于新增变量的大小而产生内存碎片,进而造成存储资源的浪费。
4.因此,如何在进行内存管理时,降低对控制系统的存储资源的浪费,是本领域技术人员目前需要解决的技术问题。


技术实现要素:

5.有鉴于此,本发明的目的在于提供一种控制系统的内存管理方法,能够在进行内存管理时,降低对控制系统的存储资源的浪费;本发明的另一目的是提供一种控制系统的内存管理装置、设备及计算机可读存储介质,均具有上述有益效果。
6.为解决上述技术问题,本发明提供一种控制系统的内存管理方法,包括:
7.在控制系统的各数据区分别为不同的对齐方式设置对应的预分配存储空间;
8.当接收到新增变量时,根据所述新增变量的对齐方式将所述新增变量存储至对应对齐方式的所述预分配存储空间中。
9.优选地,所述在控制系统的各数据区分别为不同的对齐方式设置对应的预分配存储空间的过程,具体包括:
10.获取所述控制系统的各所述数据区分别对应的总存储空间;
11.确定出不同的所述对齐方式的类型数;
12.将各所述总存储空间分别均分出与所述类型数相同数量的存储空间,将各所述存储空间分别设置为与各不同的所述对齐方式对应的预分配存储空间。
13.优选地,所述在控制系统的各数据区分别为不同的对齐方式设置对应的预分配存储空间的过程,具体包括:
14.获取所述控制系统的各所述数据区分别对应的总存储空间;
15.根据历史存储记录确定各不同的所述对齐方式分别对应的存储需求量;
16.根据所述总存储空间和各所述存储需求量为各所述对齐方式按需设置对应的预分配存储空间。
17.优选地,进一步包括:
18.获取各所述预分配存储空间的已使用量,并在所述已使用量达到预设阈值时,发出对应的提示信息。
19.优选地,所述当接收到新增变量时,根据所述新增变量的对齐方式将所述新增变量存储至对应对齐方式的所述预分配存储空间中的过程,具体包括:
20.当接收到所述新增变量时,对所述新增变量进行校验,并在校验通过的情况下根据所述新增变量的对齐方式将所述新增变量存储至对应对齐方式的所述预分配存储空间中。
21.优选地,进一步包括:
22.为各所述预分配存储空间分别设置对应的标签信息。
23.优选地,进一步包括:
24.显示各所述预分配存储空间的空闲区的内存空间大小。
25.为解决上述技术问题,本发明还提供一种控制系统的内存管理装置,包括:
26.预设模块,用于在控制系统的各数据区分别为不同的对齐方式设置对应的预分配存储空间;
27.存储模块,用于当接收到新增变量时,根据所述新增变量的对齐方式将所述新增变量存储至对应对齐方式的所述预分配存储空间中。
28.为解决上述技术问题,本发明还提供一种控制系统的内存管理设备,包括:
29.存储器,用于存储计算机程序;
30.处理器,用于执行所述计算机程序时实现上述任一种控制系统的内存管理方法的步骤。
31.为解决上述技术问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种控制系统的内存管理方法的步骤。
32.本发明提供的一种控制系统的内存管理方法,通过在控制系统的各数据区分别为不同的对齐方式设置对应的预分配存储空间;当接收到新增变量时,根据新增变量的对齐方式将新增变量存储至对应对齐方式的预分配存储空间中;可见,由于本方法中是将新增变量按照对齐方式存储于对应对齐方式的预分配存储空间中,在进行变量回收时,回收的变量对应的空闲块仍位于对应的对齐方式的预分配存储空间中;且由于同一预分配存储空间中存储的新增变量的对齐方式均相同,因此每次存储新增变量时都能够利用空闲块或者根据空闲块接续内存空间进行存储,因此不会产生内存碎片;因此,本方法将避免造成存储资源的浪费。
33.为解决上述技术问题,本发明还提供了一种控制系统的内存管理装置、设备及计算机可读存储介质,均具有上述有益效果。
附图说明
34.为了更清楚地说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
35.图1为现有技术提供的一种控制系统的内存管理方法的过程示意图
36.图2为本发明实施例提供的一种控制系统的内存管理方法的流程图;
37.图3为本发明实施例提供的一种控制系统的内存管理方法的过程示意图;
38.图4为本发明实施例提供的一种控制系统的内存管理装置的结构图;
39.图5为本发明实施例提供的一种控制系统的内存管理设备的结构图。
具体实施方式
40.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
41.本发明实施例的核心是提供一种控制系统的内存管理方法,能够在进行内存管理时,降低对控制系统的存储资源的浪费;本发明的另一核心是提供一种控制系统的内存管理装置、设备及计算机可读存储介质,均具有上述有益效果。
42.为了使本领域技术人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
43.图2为本发明实施例提供的一种控制系统的内存管理方法的流程图;图3为本发明实施例提供的一种控制系统的内存管理方法的过程示意图。如图2和图3所示,一种控制系统的内存管理方法包括:
44.s10:在控制系统的各数据区分别为不同的对齐方式设置对应的预分配存储空间;
45.s20:当接收到新增变量时,根据新增变量的对齐方式将新增变量存储至对应对齐方式的预分配存储空间中。
46.在本实施例中,首先需要在控制系统的各数据区分别设置预分配存储空间;各数据区中的预分配存储空间的数量与对齐方式的类型数相同。为不同的对齐方式分别设置对应的预分配存储空间,不同的预分配存储空间用于存储对应的对齐方式的变量。请参考图3,数据区包括g区和其他区,在各数据区分别设置对应的预分配存储空间,如1字节对齐变量区、2字节对齐变量区分别是用于存储1字节对齐方式的变量的预分配存储空间和用于存储2字节对齐方式的变量的预分配存储空间。
47.当数据区中预先存储有变量时,需要在设置预分配存储空间之后,将各变量存储至对应的预分配存储空间中;对应的,在进行变量回收时,回收的变量对应的内存空间被释放,即预分配存储空间中的变量对应的内存空间被释放,得出对应的空闲块。结合附图3,在将数据区中预先存储的各变量存储至对应的预分配存储空间之后,各预分配存储空间分别对应有空闲块;当4字节对齐变量区(预分配存储空间)中存在变量回收并得出对应的空闲块a时;当接收到一个4字节对齐方式的新增变量时,可以直接将该新增变量存储至空闲块a
中,直接利用该空闲块a进行数据存储,且不会产生新的内存碎片。
48.本发明实施例提供的一种控制系统的内存管理方法,通过在控制系统的各数据区分别为不同的对齐方式设置对应的预分配存储空间;当接收到新增变量时,根据新增变量的对齐方式将新增变量存储至对应对齐方式的预分配存储空间中;可见,由于本方法中是将新增变量按照对齐方式存储于对应对齐方式的预分配存储空间中,在进行变量回收时,回收的变量对应的空闲块仍位于对应的对齐方式的预分配存储空间中;且由于同一预分配存储空间中存储的新增变量的对齐方式均相同,因此每次存储新增变量时都能够利用空闲块或者根据空闲块接续内存空间进行存储,因此不会产生内存碎片;因此,本方法将避免造成存储资源的浪费。
49.在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,在本实施例中,在控制系统的各数据区分别为不同的对齐方式设置对应的预分配存储空间的过程,具体包括:
50.获取控制系统的各数据区分别对应的总存储空间;
51.确定出不同的对齐方式的类型数;
52.将各总存储空间分别均分出与类型数相同数量的存储空间,将各存储空间分别设置为与各不同的对齐方式对应的预分配存储空间。
53.本实施例主要是按照均分数据区的总存储空间的方式设置预分配存储空间的大小。具体的,首先需要获取控制系统的各数据区分别对应的总存储空间,然后确定出不同的对齐方式的类型数;类型数即需要将总存储空间进行分割的等分数;假设有3种对齐方式,即类型数为3,即每个数据区需要设置3个预分配存储空间;将各总存储空间分别均分出与类型数相同数量的存储空间,将各存储空间分别设置为与各不同的对齐方式对应的预分配存储空间;如将总存储空间等分出三个存储空间,则每个存储空间对应设置为与对齐方式对应的预分配存储空间。
54.可见,本实施例按照均分数据区的总存储空间的方式设置预分配存储空间,操作过程便捷。
55.作为另一种优选的实施方式,在控制系统的各数据区分别为不同的对齐方式设置对应的预分配存储空间的过程,具体包括:
56.获取控制系统的各数据区分别对应的总存储空间;
57.根据历史存储记录确定各不同的对齐方式分别对应的存储需求量;
58.根据总存储空间和各存储需求量为各对齐方式按需设置对应的预分配存储空间。
59.本实施例主要是按照各不同的对齐方式分别对应的存储需求量按需分配的方式设置预分配存储空间的大小。具体的,首先获取控制系统的各数据区分别对应的总存储空间,然后根据历史存储记录确定各不同的对齐方式分别对应的存储需求量;根据各存储需求量所占总存储需求量的比例确定出各对齐方式对应的预分配存储空间的大小比例,再根据各大小比例和总存储空间的大小确定出各对齐方式对应的预分配存储空间的内存空间大小,即确定出与各对齐方式对应的预分配存储空间。
60.可见,本实施例通过按照各不同的对齐方式分别对应的存储需求量按需分配的方式设置预分配存储空间,能够根据实际需求设置各预分配存储空间的大小,能够进一步提高存储性能。
61.在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,本实施例进一步包括:
62.获取各预分配存储空间的已使用量,并在已使用量达到预设阈值时,发出对应的提示信息。
63.具体的,在本实施例中,是在内存管理的过程中实时获取各预分配存储空间的已使用量,已使用量即预分配存储空间中存储有变量的内存空间的大小,然后将获取到的已使用量与各对应的预设阈值进行比较,并在已使用量达到预设阈值时,发出对应的提示信息。
64.需要说明的是,预设阈值可以是预分配存储空间的总内存空间的大小,也可以是预分配存储空间的总内存空间的预设比例对应的内存空间的大小,本实施例对此不做限定。例如,当某一预分配存储空间的已使用量已经达到该预分配存储空间的总内存空间的80%对应的内存空间大小时,则触发预设的提示装置发出对应的提示信息,以提示用户当前预分配存储空间的已使用量较大的情况。另外需要说明的是,本实施例对提示装置的类型和提示信息的类型也不做限定,只要是能够起到提示效果即可。
65.可见,按照本实施例的方法,能够对预分配存储空间的使用情况进行及时提醒,从而能够进一步提升用户的使用体验。
66.在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,在本实施例中,当接收到新增变量时,根据新增变量的对齐方式将新增变量存储至对应对齐方式的预分配存储空间中的过程,具体包括:
67.当接收到新增变量时,对新增变量进行校验,并在校验通过的情况下根据新增变量的对齐方式将新增变量存储至对应对齐方式的预分配存储空间中。
68.具体的,在本实施例中,在接收到新增变量之后,先对新增变量进行校验,校验包括校验该新增变量的完整性和一致性,具体的校验方式可以是先根据新增变量计算出对应的校验值,再判断该计算出的校验值与预设校验值是否相同,若相同,则表示校验通过,否则表示校验未通过;在校验通过的情况下,根据新增变量的对齐方式将新增变量存储至对应对齐方式的预分配存储空间中;若校验未通过,则不存储该新增变量。
69.可见,本实施例通过进一步对新增变量进行校验,能进一步保障存储的新增变量的准确度,进一步提升内存管理的可靠性。
70.在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,本实施例进一步包括:
71.为各预分配存储空间分别设置对应的标签信息。
72.需要说明的是,标签信息用于分别唯一标识各不同的预分配存储空间;在实际操作中,可以利用数值、文字或者符号等类型的信息为各预分配存储空间分别设置对应的标签信息;本实施例对标签信息的具体类型不做限定。
73.可见,本实施例通过为各预分配存储空间分别设置对应的标签信息,以便用户能够根据标签信息区分各不同的预分配存储空间,能够更便捷地查看各预分配存储空间的存储内存管理情况,从而进一步提升用户的使用体验。
74.在上述实施例的基础上,本实施例对技术方案作了进一步的说明和优化,具体的,本实施例进一步包括:
75.显示各预分配存储空间的空闲区的内存空间大小。
76.具体的,在本实施例中,是进一步获取各预分配存储空间的空闲区的内存空间大小,并利用预设的显示装置显示获取到的参数信息,即空闲区的内存空间大小。本实施例中,对显示参数信息的具体形式不做限定,另外需要说明的是,在本实施例中,对显示装置的具体类型也不做限定,例如可以是液晶显示屏或者触摸屏等。
77.可见,本实施例通过进一步显示各预分配存储空间的空闲区的内存空间大小,因此能够便于用户更直观地查看预分配存储空间的内存管理情况,从而进一步提升用户的使用体验。
78.上文对于本发明提供的一种控制系统的内存管理方法的实施例进行了详细的描述,本发明还提供了一种与该方法对应的控制系统的内存管理装置、设备及计算机可读存储介质,由于装置、设备及计算机可读存储介质部分的实施例与方法部分的实施例相互照应,因此装置、设备及计算机可读存储介质部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
79.图4为本发明实施例提供的一种控制系统的内存管理装置的结构图,如图4所示,一种控制系统的内存管理装置包括:
80.预设模块41,用于在控制系统的各数据区分别为不同的对齐方式设置对应的预分配存储空间;
81.存储模块42,用于当接收到新增变量时,根据新增变量的对齐方式将新增变量存储至对应对齐方式的预分配存储空间中。
82.本发明实施例提供的控制系统的内存管理装置,具有上述控制系统的内存管理方法的有益效果。
83.作为优选的实施方式,预设模块具体包括:
84.第一获取子模块,用于获取控制系统的各数据区分别对应的总存储空间;
85.第一确定子模块,用于模块,用于确定出不同的对齐方式的类型数;
86.第一分配子模块,用于将各总存储空间分别均分出与类型数相同数量的存储空间,将各存储空间分别设置为与各不同的对齐方式对应的预分配存储空间。
87.作为优选的实施方式,预设模块具体包括:
88.第二获取子模块,用于获取控制系统的各数据区分别对应的总存储空间;
89.第二确定子模块,用于根据历史存储记录确定各不同的对齐方式分别对应的存储需求量;
90.第二分配子模块,用于根据总存储空间和各存储需求量为各对齐方式按需设置对应的预分配存储空间。
91.作为优选的实施方式,进一步包括:
92.提示模块,用于获取各预分配存储空间的已使用量,并在已使用量达到预设阈值时,发出对应的提示信息。
93.作为优选的实施方式,存储模块具体包括:
94.存储子模块,用于当接收到新增变量时,对新增变量进行校验,并在校验通过的情况下根据新增变量的对齐方式将新增变量存储至对应对齐方式的预分配存储空间中。
95.作为优选的实施方式,进一步包括:
96.标签设置模块,用于为各预分配存储空间分别设置对应的标签信息。
97.作为优选的实施方式,进一步包括:
98.显示模块,用于显示各预分配存储空间的空闲区的内存空间大小。
99.图5为本发明实施例提供的一种控制系统的内存管理设备的结构图,如图5所示,一种控制系统的内存管理设备包括:
100.存储器51,用于存储计算机程序;
101.处理器52,用于执行计算机程序时实现如上述控制系统的内存管理方法的步骤。
102.本发明实施例提供的控制系统的内存管理设备,具有上述控制系统的内存管理方法的有益效果。
103.为解决上述技术问题,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述控制系统的内存管理方法的步骤。
104.本发明实施例提供的计算机可读存储介质,具有上述控制系统的内存管理方法的有益效果。
105.以上对本发明所提供的控制系统的内存管理方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
106.说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
107.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1