G06F9/50
1.一种云桌面动态分配内存的方法,其特征在于:云桌面系统中包含一个内存泄漏检查模块,云桌面系统向内存分配器申请内存时,内存泄漏检查模块获取云桌面系统堆内存申请信息,并根据所述堆内存申请信息,启动内存分配器为云桌面系统分配和释放堆内存;内存泄漏检查模块根据内存分配器对使用完毕的堆内存的释放情况,进行内存泄漏的检查;
堆内存使用完毕且内存分配器未释放该内存时,将未释放的堆内存对应的堆内存申请信息反馈到内存泄漏检查模块,由内存泄漏检查模块输出到显示文件中,由显示装置调用;
堆内存使用完毕且内存分配器已释放该内存时,将该已释放的堆内存对应的堆内存申请信息反馈到内存泄漏检查模块,由该模块进行删除。
2.根据权利要求1所述的一种云桌面动态分配内存的方法,其特征在于:所述内存分配器,接收来自内存泄漏模块的云桌面系统的堆内存申请信息,为云桌面系统分配和释放堆内存。
3.根据权利要求1所述的一种云桌面动态分配内存的方法,其特征在于:所述内存泄漏检查模块,包含一个信息管理链表,记录、保存堆内存申请信息;
内存泄漏检查模块与内存分配器之间的工作过程为:
A1接收内存分配器反馈的未释放的堆内存对应的堆内存申请信息,并在信息管理链表中将其标记为M;
A2接收内存分配器反馈的已释放的堆内存对应的堆内存申请信息,将信息管理链表中对应已保存的堆内存申请信息进行删除;
内存泄漏检查模块与云桌面系统之间的工作过程为:
B1获取云桌面系统的堆内存申请信息,查看信息管理链表是否为空;信息管理链表为空,则保存该堆内存申请信息,并用该堆内存申请信息调用内存分配器;信息管理链表不为空,则进行下一步;
B2在信息管理链表中查携带M的堆内存申请信息;发现存在携带M的堆内存申请信息,则输出与M相同部分的堆内存申请信息到设定的显示文件中,待被显示装置调用。
4.一种云桌面动态分配内存的装置,其特征在于:所述显示装置包括接口、指示灯、LED显示屏,所述接口用于连接服务器与显示装置;所述指示灯,系统发生内存泄漏时显示红灯并持续闪烁,系统正常时显示绿灯常亮;所述LED显示屏,将发生内存泄漏的对应堆内存申请信息显示在LED显示屏上。
一种云桌面动态分配内存的方法及装置
技术领域
本发明涉及云计算领域,具体涉及一种云桌面动态分配内存的方法及装置。
背景技术
云桌面又称桌面虚拟化、云电脑,是替代传统电脑的一种新模式;采用云桌面后,用户无需再购买电脑主机,主机所包含的CPU、内存、硬盘等组件全部在后端的服务器中虚拟出来,单台高性能服务器可以虚拟1-50台不等的虚拟主机。
动态内存分配是指在程序执行的过程中动态地分配或者回收存储空间的分配内存的方法。与静态内存分配方法相比,动态内存分配并不需要预先分配储存空间,而是由系统根据程序需要的大小即时分配。对动态内存的操作与系统当前的动态内存状态有关,在使用动态内存之前,需要向自由存储区申请内存,由于自由存储区的容量是有限的,所以在程序结束前,要进行动态内存的释放操作,防止内存发生泄露。
内存泄漏一般是指堆内存的泄漏,程序在申请获得动态内存并使用完毕后,不释放动态内存就将保存动态内存信息的变量用于其他用途,使得这些动态内存不可能再被程序使用,也无法被操作系统回收。内存泄漏具有隐蔽性、积累性的特点,对规模较大的程序,如果存在内存泄露,轻则会降低系统的性能,甚至导致所有堆内存被分配,程序无法再次从堆内存中申请到程序执行所需要的内存,从而导致全部或者部分程序、设备无法正常工作,造成系统瘫痪甚至崩溃。随着计算机应用需求的日益增加,应用程序的设计与开发也相应的日趋复杂,开发人员在程序实现的过程中处理的变量也大量增加,如何有效进行内存分配和释放,防止内存泄漏的问题变得越来越突出。
发明内容
本发明的目的在于,针对云桌面系统内存分配效率不高的问题,提供了一种云桌面动态分配内存的方法及装置,利用内存分配器将动态分配内存的方式应用于云桌面系统中,提高内存的使用效率,并针对在运行过程中容易产生细微、不易发现的内存泄漏的问题,设置一个内存泄漏检查模块,根据内存分配器对堆内存的释放情况,有效地检测出内存泄漏的问题,并通过显示装置进行提示,从而避免造成程序、设备无法正常工作的情况。
本发明采用的技术方案如下:
一种云桌面动态分配内存的方法,其云桌面系统中包含一个内存泄漏检查模块,云桌面系统向内存分配器申请内存时,内存泄漏检查模块获取云桌面系统堆内存申请信息,并根据所述堆内存申请信息,启动内存分配器为云桌面系统分配和释放堆内存;内存泄漏检查模块根据内存分配器对使用完毕的堆内存的释放情况,进行内存泄漏的检查;
堆内存使用完毕且内存分配器未释放该内存时,将未释放的堆内存对应的堆内存申请信息反馈到内存泄漏检查模块,由内存泄漏检查模块输出到显示文件中,由显示装置调用;
堆内存使用完毕且内存分配器已释放该内存时,将该已释放的堆内存对应的堆内存申请信息反馈到内存泄漏检查模块,由该模块进行删除。
进一步的,所述内存分配器,接收来自内存泄漏模块的云桌面系统的堆内存申请信息,为云桌面系统分配和释放堆内存。
进一步的,所述内存泄漏检查模块,包含一个信息管理链表,记录、保存堆内存申请信息;
内存泄漏检查模块与内存分配器之间的工作过程为:
A1接收内存分配器反馈的未释放的堆内存对应的堆内存申请信息,并在信息管理链表中将其标记为M;
A2接收内存分配器反馈的已释放的堆内存对应的堆内存申请信息,将信息管理链表中对应已保存的堆内存申请信息进行删除;
内存泄漏检查模块与云桌面系统之间的工作过程为:
B1获取云桌面系统的堆内存申请信息,查看信息管理链表是否为空;信息管理链表为空,则保存该堆内存申请信息,并用该堆内存申请信息调用内存分配器;信息管理链表不为空,则进行下一步;
B2在信息管理链表中查携带M的堆内存申请信息;发现存在携带M的堆内存申请信息,则输出与M相同部分的堆内存申请信息到设定的显示文件中,待被显示装置调用。
一种云桌面动态分配内存的装置,通过显示装置调用显示文件夹中的堆内存申请信息对内存泄漏的问题进行提示,包括:接口、指示灯、LED显示屏,所述接口用于连接服务器与显示装置;所述指示灯,系统发生内存泄漏时显示红灯并持续闪烁,系统正常时显示绿灯常亮;所述LED显示屏,将发生内存泄漏的对应堆内存申请信息显示在LED显示屏上。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1.本发明所提出的一种云桌面动态分配内存的方法及装置,根据程序的需要进行动态内存分配,提高了内存的利用率;
2.本发明所设置的内存泄漏检查模块,通过对结点的跟踪,有效地检测出内存泄漏的问题,并通过显示装置进行及时的提示,从而避免造成程序、设备无法正常工作的情况。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,其中:
图1是云桌面动态分配内存方法的流程图;
图2是内存泄漏检查模块与内存分配器之间的工作流程图;
图3是内存泄漏检查模块与云桌面系统之间的工作流程图。
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,即所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
下面结合附图对本发明作详细说明。
实施例1
针对云桌面系统内存分配效率不高的问题,提供了一种云桌面动态分配内存的方法,利用内存分配器将动态分配内存的方式应用于云桌面系统中,提高内存的使用效率,并针对在运行过程中容易产生细微、不易发现的内存泄漏的问题,设置一个内存泄漏检查模块,云桌面系统向内存分配器申请内存时,内存泄漏检查模块获取云桌面系统堆内存申请信息,并根据所述堆内存申请信息,启动内存分配器为云桌面系统分配和释放堆内存;内存泄漏检查模块根据内存分配器对使用完毕的堆内存的释放情况,进行内存泄漏的检查;
堆内存使用完毕且内存分配器未释放该内存时,将未释放的堆内存对应的堆内存申请信息反馈到内存泄漏检查模块,由内存泄漏检查模块输出到显示文件中,由显示装置调用;
堆内存使用完毕且内存分配器已释放该内存时,将该已释放的堆内存对应的堆内存申请信息反馈到内存泄漏检查模块,由该模块进行删除。
实施例2
本实施例是在实施例1的基础上,对本发明进行进一步地实施说明。
如图1所示,内存泄漏检查模块与内存分配器之间的工作过程为:内存泄漏检查模块接收到内存分配器反馈的堆内存申请信息,查看是否为已释放的堆内存对应的堆内存申请信息;若不为已释放的堆内存对应的堆内存申请信息,则在信息管理链表中将其标记为M;若为已释放的堆内存对应的堆内存申请信息,则将信息管理链表中对应已保存的堆内存申请信息进行删除。
实施例3
本实施例是在实施例1的基础上,对本发明进行进一步地实施说明。
如图2所示,内存泄漏检查模块与云桌面系统之间的工作过程为:内存泄漏检查模块接收云桌面系统的堆内存申请信息,查看信息管理链表是否为空;信息管理链表为空,则保存该堆内存申请信息,并用该堆内存申请信息调用内存分配器;信息管理链表不为空,则进行下一步;进一步的,在信息管理链表中查携带M的堆内存申请信息;发现存在携带M的堆内存申请信息,则输出与M相同部分的堆内存申请信息到设定的显示文件中,待被显示装置调用。
实施例4
本实施例是在实施例1的基础上,对本发明进行进一步地实施说明。
一种云桌面动态分配内存的装置,通过显示装置调用显示文件夹中的堆内存申请信息对内存泄漏的问题进行提示,包括:接口、指示灯、LED显示屏,所述接口用于连接服务器与显示装置;所述指示灯,系统发生内存泄漏时显示红灯并持续闪烁,系统正常时显示绿灯常亮;所述LED显示屏,将发生内存泄漏的对应堆内存申请信息显示在LED显示屏上;通过对堆内存申请信息的跟踪,有效地检测出内存泄漏的问题,从而避免造成程序、设备无法正常工作的情况。
以上实施例仅用以说明本发明的技术方案而非限制,尽管通过参照本发明的优选实施例已经对本发明进行了描述,但本领域的普通技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离所附权利要求书所限定的本发明的精神和范围。
本文发布于:2023-04-14 00:37:58,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/3/86315.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |