CN110837416A - 内存管理方法、智能投影仪及相关产品 - Google Patents

内存管理方法、智能投影仪及相关产品 Download PDF

Info

Publication number
CN110837416A
CN110837416A CN201910905497.4A CN201910905497A CN110837416A CN 110837416 A CN110837416 A CN 110837416A CN 201910905497 A CN201910905497 A CN 201910905497A CN 110837416 A CN110837416 A CN 110837416A
Authority
CN
China
Prior art keywords
memory
processes
determining
target
fragments
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910905497.4A
Other languages
English (en)
Other versions
CN110837416B (zh
Inventor
钟威
庾波
冯军军
胡震宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Huole Science and Technology Development Co Ltd
Original Assignee
Shenzhen Huole Science and Technology Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Huole Science and Technology Development Co Ltd filed Critical Shenzhen Huole Science and Technology Development Co Ltd
Priority to CN201910905497.4A priority Critical patent/CN110837416B/zh
Publication of CN110837416A publication Critical patent/CN110837416A/zh
Application granted granted Critical
Publication of CN110837416B publication Critical patent/CN110837416B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/12Picture reproducers
    • H04N9/31Projection devices for colour picture display, e.g. using electronic spatial light modulators [ESLM]
    • H04N9/3141Constructional details thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Controls And Circuits For Display Device (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请实施例公开了一种内存管理方法、智能投影仪及相关产品,应用于智能投影仪,所述方法包括:系统运行过程中,获取内存碎片;确定所述系统的运行参数;依据所述运行参数对所述内存碎片进行分配。采用本申请实施例能够实现内存碎片动态分配,有助于提升存碎片利用率以及系统性能。

Description

内存管理方法、智能投影仪及相关产品
技术领域
本申请涉及电子技术领域,具体涉及一种内存管理方法、智能投影仪及相关产品。
背景技术
投影技术在人们日常生活中得到普遍的应用。无论在会议、教学或是娱乐场所都随处可见投影系统的使用。
生活中,家庭、教育用的中小型投影仪,在使用中,由于内存碎片较为零散,没有得到较好利用,降低了系统性能。
发明内容
本申请实施例提供了一种内存管理方法、智能投影仪及相关产品,能够实现内存碎片动态分配,提升了内存碎片利用率,提升了系统性能。
第一方面,本申请实施例提供一种内存管理方法,应用于智能投影仪,所述方法包括:
系统运行过程中,获取内存碎片;
确定所述系统的运行参数;
依据所述运行参数对所述内存碎片进行分配。
第二方面,本申请实施例提供一种内存管理装置,应用于智能投影仪,所述装置包括:
第一获取单元,用于系统运行过程中,获取内存碎片;
确定单元,用于确定所述系统的目标运行参数;
分配单元,用于依据所述目标运行参数对所述内存碎片进行分配。
第三方面,本申请实施例提供了一种智能投影仪,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本申请实施例第一方面中的步骤的指令。
第四方面,本申请实施例提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。
第五方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
实施本申请实施例,具备如下有益效果:
可以看出,本申请实施例中所描述的内存管理方法、智能投影仪及相关产品,应用于智能投影仪,系统运行过程中,获取内存碎片,确定系统的目标运行参数,依据目标运行参数对所述内存碎片进行分配,如此,能够依据运行参数实现内存碎片动态分配,提升了内存碎片利用率,提升了系统性能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A是本申请实施例提供的一种智能投影仪的结构示意图;
图1B是本申请实施例提供的一种内存管理方法的流程示意图;
图2是本申请实施例提供的另一种内存管理方法的流程示意图;
图3是本申请实施例提供的另一种智能投影仪的结构示意图;
图4A是本申请实施例提供的一种内存管理装置的功能单元组成框图;
图4B是本申请实施例提供的一种内存管理装置的功能单元组成框图。
具体实施方式
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例中,内存碎片可以包括内部碎片和外部碎片。其中,内部碎片就是已经被分配出去(能明确指出属于哪个进程)却不能被利用的内存空间,具体地,内部碎片是处于区域内部或页面内部的存储块。占有这些区域或页面的进程并不使用这个存储块。而在进程占有这块存储块时,系统无法利用它。直到进程释放它,或进程结束时,系统才有可能利用这个存储块。
外部碎片指的是还没有被分配出去(不属于任何进程),但由于太小了无法分配给申请内存空间的新进程的内存空闲区域,外部碎片是出于任何已分配区域或页面外部的空闲存储块。这些存储块的总和可以满足当前申请的长度要求,但是由于它们的地址不连续或其他原因,使得系统无法满足当前申请。
如图1A所示,图1A是本申请实施例提供的一种智能投影仪的结构示意图。该智能投影仪可以包括处理器、存储器、数字信号处理器(digital signal processor,DSP)、收发器、扬声器、麦克风、随机存取存储器(Random Access Memory,RAM)、摄像头、传感器和网络模块等等。其中,存储器、DSP、投影装置、扬声器、麦克风、RAM、摄像头、传感器、网络模块与处理器连接,收发器与信号处理器连接。
其中,处理器是智能投影仪的控制中心,利用各种接口和线路连接整个智能投影仪的各个部分,通过运行或执行存储在存储器内的软体程序和/或模块,以及调用存储在存储器内的数据,执行智能投影仪的各种功能和处理数据,从而对智能投影仪进行整体监控,处理器可以为中央处理器(Central Processing Unit/Processor,CPU)、图形处理器(Graphics Processing Unit,GPU)或者网络处理器(Neural-network Processing Unit,NPU)。
进一步地,处理器可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器中。
其中,存储器用于存储软体程序和/或模块,处理器通过运行存储在存储器的软件程序和/或模块,从而执行智能投影仪的各种功能应用以及数据处理。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的软体程序等;存储数据区可存储根据智能投影仪的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,传感器包括以下至少一种:光感传感器、陀螺仪、红外接近传感器、振动检测传感器,压力传感器等等。其中,光感传感器,也称为环境光传感器,用于检测环境光亮度。光线传感器可以包括光敏元件和模数转换器。其中,光敏元件用于将采集的光信号转换为电信号,模数转换器用于将上述电信号转换为数字信号。可选的,光线传感器还可以包括信号放大器,信号放大器可以将光敏元件转换的电信号进行放大后输出至模数转换器。上述光敏元件可以包括光电二极管、光电三极管、光敏电阻、硅光电池中的至少一种。
其中,该摄像头可以是可见光摄像头(一般视角摄像头、广角摄像头)、也可以是红外摄像头,还可以为双摄像头(具备测距功能),在此不作限定。
网络模块可以为以下至少一种:蓝牙模块、无线保真(wireless fidelity,Wi-Fi)等等,在此不做限定,上述投影装置能够实现投影功能。
基于上述图1A所描述的智能投影仪,能够执行如下功能:
系统运行过程中,获取内存碎片;
确定所述系统的目标运行参数;
依据所述目标运行参数对所述内存碎片进行分配。
可以看出,本申请实施例中所描述的智能投影仪,应用于智能投影仪,系统运行过程中,获取内存碎片,确定系统的目标运行参数,依据目标运行参数对所述内存碎片进行分配,如此,能够依据运行参数实现内存碎片动态分配,提升了内存碎片利用率,提升了系统性能。
下面对本申请实施例进行详细介绍。
请参阅图1B,图1B是本申请实施例提供的一种内存管理方法的流程示意图,如图所示,应用于如图1A所示的智能投影仪,本内存管理方法包括:
101、系统运行过程中,获取内存碎片。
其中,本申请实施例中,智能投影仪可以为以下至少一种系统:安卓系统(Android)、苹果系统、Windows系统、鸿蒙系统等等,在此不做限定。内核可以基于Linux系统实现。
具体实现中,本申请实施例中,智能投影仪可以接收目标指令,相应目标指令执行步骤101。该目标指令可以由用户通过该智能投影仪输入,或者,可以接收由与该智能投影仪连接的电子设备发送。该电子设备可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备(智能手表、智能手环、无线耳机、增强现实/虚拟现实设备、智能眼镜)、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(userequipment,UE),移动台(mobile station,MS),终端设备(terminal device)等等。
在一个可能的示例中,上述步骤101,获取内存碎片,可以包括如下步骤:
11、对所述系统运行的多个进程进行内存监控;
12、获取所述多个进程中每一进程对应的内存碎片。
其中,智能投影仪可以对系统运行的多个进行内存监控,进而,可以获取该多个进程中每一进程对应的内存碎片。当然,也可以仅仅获取多个进程中的部分进程的内存碎片。
102、确定所述系统的运行参数。
其中,本申请实施例中,运行参数可以为以下至少一种:进程数量、温度、CPU资源利用率、GPU资源利用率、内存消耗、前台应用等等,在此不做限定。具体实现中,电子设备可以通过后台进程监控确定系统的运行参数。
103、依据所述目标运行参数对所述内存碎片进行分配。
其中,具体实现中,智能投影仪可以设置运行参数与内存碎片方案之间的映射关系,进而,依据该映射关系确定目标运行参数对应的内存碎片分配方案,即可以依据该内存碎片分配方案对内存碎片进行分配。
具体实现中,基于上述本申请实施例所提供的方法,可以使用linux的内核内存管理技术,添加深度定制的内存碎片化管理代码,实现实时管理内存,保证系统的流畅运行。
在一个可能的示例中,上述步骤101,依据所述运行参数对所述内存碎片进行分配,可以包括如下步骤:
11、确定正在运行的N个进程,所述N为大于1的正整数;
12、确定所述N个进程的优先级;
13、依据所述N个进程的优先级从所述N个进程中选取高于预设优先级的进程,得到M个进程,所述M为小于或者等于N的正整数;
14、依据所述运行参数确定所述M个进程中每一进程的内存需求,得到M个内存需求值;
15、从所述内存碎片中确定出可用内存空间;
16、依据所述可用内存空间、所述M个内存需求值为所述M个进程进行内存碎片分配。
具体实现中,预设优先级可以由用户自行设置或者系统默认。智能投影仪可以确定正在运行的N个进程,并确定N个进程的优先级,其中,优先级可以预先设置,或者,前台应用的进程的优先级最高,针对其他进程可以依据用户的使用频率来确定优先级,使用频率高,则优先级高。进而,可以依据N个进程的优先级从N个进程中选取高于预先优先级的进程,得到M个进程,M为小于或等于N的正整数。
进一步地,智能投影仪可以确定M个进程中每一进程的内存需求,进而,可以得到M个内存需求值,本申请实施例中,内存需求可以理解为进程在当前所拥有的基础上,另外还所需要的内存大小。进而,可以从内存碎片中确定出可用内存空间,即这部分内存能够用于实现内存碎片分配。依据M个内存需求值,则可以计算出每一内存需求值的占比,即内存需求值与M个内存需求值之间的比值,依据每一内存需求值的占比,则可以将可用内存空间分成M份,如此,实现对M个进程进行内存碎片分配。
在一个可能的示例中,上述步骤14,依据所述运行参数确定所述M个进程中每一进程的内存需求,可以包括如下步骤:
141、确定预设时间段内进程i对应的运行参数,所述运行参数包括内存资源利用率和内存空间大小,所述进程i为所述M个进程中的任一进程;
142、依据所述运行参数确定所述进程i的平均内存资源利用率和平均内存空间大小;
143、按照预设的内存资源利用率与第一权重值之间的映射关系,确定所述平均内存资源利用率对应的目标第一权重值;
144、按照预设的内存空间大小与第二权重值之间的映射关系,确定所述平均内存空间大小对应的目标第二权重值,所述第一权重值与所述第二权重值之间为1;
145、获取所述进程i对应的预设内存需求值;
146、依据所述第一权重值、所述第二权重值和所述预设内存需求值确定所述进程i的内存需求值。
其中,上述预设时间段可以由用户自行设置或者系统默认。本申请实施例中,智能投影仪中可以预先存储预设的内存资源利用率与第一权重值之间的映射关系,以及预设的内存空间大小与第二权重值之间的映射关系。上述预设内存需求值可以由用户自行设置或者系统默认。
进一步地,以进程i为例,该进程i为M个进程中的任一进程,智能投影仪可以确定预设时间段内的进程i对应的运行参数,运行参数包括内存资源利用率和内存空间大小,进而,依据该进程i的运行参数可以进程i的平均内存资源利用率和平均内存才能空间大小,进而,可以按照预设的内存资源利用率与第一权重值之间的映射关系,确定平均内存资源利用率对应的目标第一权重值,按照预设的内存空间大小与第二权重值之间的映射关系,确定平均内存空间大小对应的目标第二权重值,第一权重值与第二权重值之间为1,获取进程i对应的预设内存需求值,进而,可以依据第一权重值、第二权重值和预设内存需求值确定进程i的内存需求值,进程i的内存需求值=(第一权重值+第二权重值)*预设内存需求值。
在一个可能的示例中,上述步骤101之前,还可以包括如下步骤:
A1、获取所述智能投影仪的目标前台应用;
A2、在所述目标前台应用不属于预设应用集时,不执行所述获取内存碎片的步骤;
A3、在所述目标前台应用属于所述预设应用集时,执行所述获取内存碎片的步骤。
其中,预设应用集可以包括至少一个应用。预设应用集可以由用户自行设置或者系统默认。
具体实现中,智能投影仪可以获取该智能投影仪的目标前台应用,在该目标前台应用属于预设应用集时,可以执行步骤101,反之,在目标前台应用不属于预设应用集时,可以不执行步骤101。
举例说明下,可根据使用场景,在对GPU有较高性能要求时则不对GPU内存进行管理,如在大型3D游戏,4k/8k视频,在一般应用场景中则动态减少内存,提供更多的内存给到系统。
在一个可能的示例中,上述步骤101-步骤102之间,还可以包括如下步骤:
B1、接收由控制设备发送的目标身份信息;
B2、对所述目标身份信息进行验证;
B4、在所述目标身份信息被验证成功时,执行所述确定所述系统的运行参数的步骤。
其中,目标身份信息可以为以下至少一种:人脸图像、声纹信息、虹膜图像、字符串、触控轨迹等等,在此不做限定。具体实现中,智能投影仪可以接收由控制设备发送的目标身份信息,并对该目标身份信息进行验证,在该目标身份信息被验证成功时,可以执行步骤102,否则,则可以不执行步骤102。
在一个可能的示例中,在所述目标身份信息包括目标虹膜图像时,上述步骤B2,对所述目标身份信息进行验证,可以包括如下步骤:
B21、将所述目标虹膜图像划分为K个区域,所述K为大于1的整数;
B22、确定所述K个区域中每一区域的清晰度,得到K个清晰度;
B23、从所述K个清晰度中选取大于第一预设阈值的清晰度,得到P个清晰度,所述P为大于1的整数;
B24、将所述P个区域中每一区域划分为Q个子区域,所述Q为大于1的整数;
B25、确定所述P个区域中每一区域对应的Q个子区域的特征点分布密度;
B26、依据所述P个区域中每一区域对应的Q个子区域的特征点分布密度确定所述P个区域中每一区域对应的特征点分布密度的均方差,得到P个均方差;
B27、从所述P个均方差中选取小于第二预设阈值的均方差,得到L个目标均方差,所述L为小于或等于所述P的正整数;
B28、获取所述L个目标均方差对应的特征点,得到A个特征点;
B29、将所述A个特征点与预设虹膜图像进行匹配,得到与所述A个特征点匹配成功的B个特征点;
B210、在所述B与所述A之间的比值大于第三预设阈值时,确认所述目标虹膜图像被验证成功。
其中,上述第一预设阈值、第二预设阈值、第三预设阈值可以由用户自行设置。预设虹膜图像可以预先保存在智能投影仪中。
具体实现中,本申请实施例中,智能投影仪可以将目标虹膜图像划分为K个区域,K为大于1的整数,并且可以确定K个区域中每一区域的清晰度,得到K个清晰度,并且可以从K个清晰度中选取大于第一预设阈值的清晰度,得到P个清晰度,P为大于1的整数,如此,可以得到清晰度高的区域。
进一步地,智能投影仪可以将P个区域中每一区域划分为Q个子区域,Q为大于1的整数,并且确定P个区域中每一区域对应的Q个子区域的特征点分布密度,其中,特征点分布密度可以为每一子区域的特征点总数量与该子区域对应的总面积之间的比值得到,本申请实施例中,特征点总数量可以通过对每一子区域进行特征点提取,并统计该子区域对应的特征点总数量得到,特征点提取对应的算法可以为以下至少一种:harris角点检测、尺度不变特征变换(scale invariant feature transform,SIFT)、SURF算法等等,在此不做限定。
进一步地,智能投影仪可以依据P个区域中每一区域对应的Q个子区域的特征点分布密度确定P个区域中每一区域对应的特征点分布密度的均方差,得到P个均方差,均方差在一定程度上反映了区域之间的关联性,均方差越小,则说明区域之间的关联性越强。进而,可以从P个均方差中选取小于第二预设阈值的均方差,得到L个目标均方差,L为小于或等于P的正整数,如此,可以更为精准地选取整个虹膜图像中最清晰的区域,进而,可以获取L个目标均方差对应的特征点,得到A个特征点,将A个特征点与预设虹膜图像进行匹配,得到与A个特征点匹配成功的B个特征点,在B与A之间的比值大于第三预设阈值时,确认目标虹膜图像被验证成功,反之,在B与A之间的比值小于或等于第三预设阈值时,则可以确认目标虹膜图像被验证失败,通过该方式,一方面,可以找到虹膜图像中的最清晰区域,有助于提升虹膜识别速度,另一方面,不用对虹膜图像进行增强,避免了特征点失真,以及直接从虹膜图像中选取清晰且区域关联紧密的一些特征进行匹配,有助于提升虹膜识别精度。
可以看出,本申请实施例中所描述的内存管理方法,应用于智能投影仪,系统运行过程中,获取内存碎片,确定系统的目标运行参数,依据目标运行参数对所述内存碎片进行分配,如此,能够依据运行参数实现内存碎片动态分配,提升了内存碎片利用率,提升了系统性能。
与上述图1B所示的实施例一致地,请参阅图2,图2是本申请实施例提供的一种内存管理方法的流程示意图,如图所示,应用于如图1A所示的智能投影仪,本内存管理方法包括:
201、系统运行过程中,获取所述智能投影仪的目标前台应用;
202、在所述目标前台应用不属于预设应用集时,结束进程;
203、在所述目标前台应用属于所述预设应用集时,获取内存碎片;
204、确定所述系统的目标运行参数;
205、依据所述目标运行参数对所述内存碎片进行分配。
其中,上述步骤201-步骤205的具体描述可以参照上述图1B所描述的内存管理方法的相应步骤,在此不再赘述。
可以看出,本申请实施例中所描述的内存管理方法,应用于智能投影仪,系统运行过程中,获取智能投影仪的目标前台应用,在目标前台应用不属于预设应用集时,结束进程,在目标前台应用属于预设应用集时,获取内存碎片,确定系统的目标运行参数,依据目标运行参数对所述内存碎片进行分配,如此,针对指定应用场景,可以能够依据运行参数实现内存碎片动态分配,提升了内存碎片利用率,提升了系统性能。例如,如在大型3D游戏,4k/8k视频,在一般应用场景中则动态减少内存,提供更多的内存给到系统。
与上述实施例一致地,请参阅图3,图3是本申请实施例提供的一种智能投影仪的结构示意图,如图所示,该智能投影仪包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,本申请实施例中,上述程序包括用于执行以下步骤的指令:
系统运行过程中,获取内存碎片;
确定所述系统的目标运行参数;
依据所述目标运行参数对所述内存碎片进行分配。
可以看出,本申请实施例中所描述的智能投影仪,应用于智能投影仪,系统运行过程中,获取内存碎片,确定系统的目标运行参数,依据目标运行参数对所述内存碎片进行分配,如此,能够依据运行参数实现内存碎片动态分配,提升了内存碎片利用率,提升了系统性能。
在一个可能的示例中,在所述获取内存碎片方面,上述程序包括用于执行以下步骤的指令:
对所述系统运行的多个进程进行内存监控;
获取所述多个进程中每一进程对应的内存碎片。
在一个可能的示例中,在所述依据所述目标运行参数对所述内存碎片进行分配方面,上述程序包括用于执行以下步骤的指令:
确定正在运行的N个进程,所述N为大于1的正整数;
确定所述N个进程的优先级;
依据所述N个进程的优先级从所述N个进程中选取高于预设优先级的进程,得到M个进程,所述M为小于或者等于N的正整数;
依据所述目标运行参数确定所述M个进程中每一进程的内存需求,得到M个内存需求值;
从所述内存碎片中确定出可用内存空间;
依据所述可用内存空间、所述M个内存需求值为所述M个进程进行内存碎片分配。
在一个可能的示例中,在所述依据所述目标运行参数确定所述M个进程中每一进程的内存需求值方面,上述程序包括用于执行以下步骤的指令:
确定预设时间段内进程i对应的目标运行参数,所述目标运行参数包括内存资源利用率和内存空间大小,所述进程i为所述M个进程中的任一进程;
依据所述目标运行参数确定所述进程i的平均内存资源利用率和平均内存空间大小;
按照预设的内存资源利用率与第一权重值之间的映射关系,确定所述平均内存资源利用率对应的目标第一权重值;
按照预设的内存空间大小与第二权重值之间的映射关系,确定所述平均内存空间大小对应的目标第二权重值,所述第一权重值与所述第二权重值之间为1;
获取所述进程i对应的预设内存需求值;
依据所述第一权重值、所述第二权重值和所述预设内存需求值确定所述进程i的内存需求。
在一个可能的示例中,上述程序还包括用于执行以下步骤的指令:
获取所述智能投影仪的目标前台应用;
在所述目标前台应用不属于预设应用集时,不执行所述获取内存碎片的步骤;
在所述目标前台应用属于所述预设应用集时,执行所述获取内存碎片的步骤。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,智能投影仪为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对智能投影仪进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图4A是本申请实施例中所涉及的内存管理装置400的功能单元组成框图。该内存管理装置400,应用于智能投影仪,所述装置400包括:第一获取单元401、确定单元402和分配单元403,其中,
第一获取单元401,用于系统运行过程中,获取内存碎片;
确定单元402,用于确定所述系统的目标运行参数;
分配单元403,用于依据所述目标运行参数对所述内存碎片进行分配。
可以看出,本申请实施例中所描述的内存管理装置,应用于智能投影仪,系统运行过程中,获取内存碎片,确定系统的目标运行参数,依据目标运行参数对所述内存碎片进行分配,如此,能够依据运行参数实现内存碎片动态分配,提升了内存碎片利用率,提升了系统性能。
在一个可能的示例中,在所述获取内存碎片方面,所述第一获取单元401具体用于:
对所述系统运行的多个进程进行内存监控;
获取所述多个进程中每一进程对应的内存碎片。
在一个可能的示例中,在依据所述目标运行参数对所述内存碎片进行分配方面,所述分配单元403具体用于:
确定正在运行的N个进程,所述N为大于1的正整数;
确定所述N个进程的优先级;
依据所述N个进程的优先级从所述N个进程中选取高于预设优先级的进程,得到M个进程,所述M为小于或者等于N的正整数;
依据所述目标运行参数确定所述M个进程中每一进程的内存需求,得到M个内存需求值;
从所述内存碎片中确定出可用内存空间;
依据所述可用内存空间、所述M个内存需求值为所述M个进程进行内存碎片分配。
在一个可能的示例中,在所述依据所述目标运行参数确定所述M个进程中每一进程的内存需求值方面,所述分配单元403具体用于:
确定预设时间段内进程i对应的目标运行参数,所述目标运行参数包括内存资源利用率和内存空间大小,所述进程i为所述M个进程中的任一进程;
依据所述目标运行参数确定所述进程i的平均内存资源利用率和平均内存空间大小;
按照预设的内存资源利用率与第一权重值之间的映射关系,确定所述平均内存资源利用率对应的目标第一权重值;
按照预设的内存空间大小与第二权重值之间的映射关系,确定所述平均内存空间大小对应的目标第二权重值,所述第一权重值与所述第二权重值之间为1;
获取所述进程i对应的预设内存需求值;
依据所述第一权重值、所述第二权重值和所述预设内存需求值确定所述进程i的内存需求。
在一个可能的示例中,所述智能投影仪还包括摄像头,如图4B所示,图4B为图4A所示的内存管理装置的又一变型结构,其与图4A相比较,还可以包括:第二获取单元404,具体如下:
第二获取单元404,用于获取所述智能投影仪的目标前台应用;
由所述分配单元403在所述目标前台应用不属于预设应用集时,不执行所述获取内存碎片的步骤;以及在所述目标前台应用属于所述预设应用集时,执行所述获取内存碎片的步骤。
可以理解的是,本实施例的内存管理装置的各程序模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括智能投影仪。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括智能投影仪。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种内存管理方法,其特征在于,应用于智能投影仪,所述方法包括:
系统运行过程中,获取内存碎片;
确定所述系统的目标运行参数;
依据所述目标运行参数对所述内存碎片进行分配。
2.根据权利要求1所述的方法,其特征在于,所述获取内存碎片,包括:
对所述系统运行的多个进程进行内存监控;
获取所述多个进程中每一进程对应的内存碎片。
3.根据权利要求1或2所述的方法,其特征在于,所述依据所述目标运行参数对所述内存碎片进行分配,包括:
确定正在运行的N个进程,所述N为大于1的正整数;
确定所述N个进程的优先级;
依据所述N个进程的优先级从所述N个进程中选取高于预设优先级的进程,得到M个进程,所述M为小于或者等于N的正整数;
依据所述目标运行参数确定所述M个进程中每一进程的内存需求,得到M个内存需求值;
从所述内存碎片中确定出可用内存空间;
依据所述可用内存空间、所述M个内存需求值为所述M个进程进行内存碎片分配。
4.根据权利要求3所述的方法,其特征在于,所述依据所述目标运行参数确定所述M个进程中每一进程的内存需求值,包括:
确定预设时间段内进程i对应的目标运行参数,所述目标运行参数包括内存资源利用率和内存空间大小,所述进程i为所述M个进程中的任一进程;
依据所述目标运行参数确定所述进程i的平均内存资源利用率和平均内存空间大小;
按照预设的内存资源利用率与第一权重值之间的映射关系,确定所述平均内存资源利用率对应的目标第一权重值;
按照预设的内存空间大小与第二权重值之间的映射关系,确定所述平均内存空间大小对应的目标第二权重值,所述第一权重值与所述第二权重值之间为1;
获取所述进程i对应的预设内存需求值;
依据所述第一权重值、所述第二权重值和所述预设内存需求值确定所述进程i的内存需求。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
获取所述智能投影仪的目标前台应用;
在所述目标前台应用不属于预设应用集时,不执行所述获取内存碎片的步骤;
执行所述获取内存碎片的步骤。
6.一种内存管理装置,其特征在于,应用于智能投影仪,所述装置包括:
第一获取单元,用于系统运行过程中,获取内存碎片;
确定单元,用于确定所述系统的目标运行参数;
分配单元,用于依据所述目标运行参数对所述内存碎片进行分配。
7.根据权利要求6所述的装置,其特征在于,在所述获取内存碎片方面,所述第一获取单元具体用于:
对所述系统运行的多个进程进行内存监控;
获取所述多个进程中每一进程对应的内存碎片。
8.根据权利要求6或7所述的装置,其特征在于,在所述依据所述目标运行参数对所述内存碎片进行分配方面,所述分配单元具体用于:
确定正在运行的N个进程,所述N为大于1的正整数;
确定所述N个进程的优先级;
依据所述N个进程的优先级从所述N个进程中选取高于预设优先级的进程,得到M个进程,所述M为小于或者等于N的正整数;
依据所述目标运行参数确定所述M个进程中每一进程的内存需求,得到M个内存需求值;
从所述内存碎片中确定出可用内存空间;
依据所述可用内存空间、所述M个内存需求值为所述M个进程进行内存碎片分配。
9.一种智能投影仪,其特征在于,包括处理器、存储器,所述存储器用于存储一个或多个程序,并且被配置由所述处理器执行,所述程序包括用于执行如权利要求1-5任一项所述的方法中的步骤的指令。
10.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-5任一项所述的方法。
CN201910905497.4A 2019-09-24 2019-09-24 内存管理方法、智能投影仪及相关产品 Active CN110837416B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910905497.4A CN110837416B (zh) 2019-09-24 2019-09-24 内存管理方法、智能投影仪及相关产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910905497.4A CN110837416B (zh) 2019-09-24 2019-09-24 内存管理方法、智能投影仪及相关产品

Publications (2)

Publication Number Publication Date
CN110837416A true CN110837416A (zh) 2020-02-25
CN110837416B CN110837416B (zh) 2021-04-30

Family

ID=69575105

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910905497.4A Active CN110837416B (zh) 2019-09-24 2019-09-24 内存管理方法、智能投影仪及相关产品

Country Status (1)

Country Link
CN (1) CN110837416B (zh)

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101320351A (zh) * 2008-06-27 2008-12-10 华中科技大学 内存的分配、清理和释放方法及内存管理的装置
CN103049328A (zh) * 2012-11-06 2013-04-17 苏州懿源宏达知识产权代理有限公司 计算机系统中内存资源分配方法
CN104182350A (zh) * 2013-05-28 2014-12-03 中国银联股份有限公司 一种针对包括多个进程的应用的内存管理方法和装置
CN104951372A (zh) * 2015-06-16 2015-09-30 北京工业大学 一种基于预测的Map/Reduce数据处理平台内存资源动态分配方法
CN105487930A (zh) * 2015-12-01 2016-04-13 中国电子科技集团公司第二十八研究所 一种基于Hadoop的任务优化调度方法
US20160275009A1 (en) * 2015-03-20 2016-09-22 Electronics And Telecommunications Research Institute Method for allocating storage space using buddy allocator
CN107844372A (zh) * 2017-10-17 2018-03-27 广东睿江云计算股份有限公司 一种内存分配的方法、系统
CN107862265A (zh) * 2017-10-30 2018-03-30 广东欧珀移动通信有限公司 图像处理方法及相关产品
CN107992797A (zh) * 2017-11-02 2018-05-04 中控智慧科技股份有限公司 人脸识别方法及相关装置
US20180267892A1 (en) * 2018-05-21 2018-09-20 Williams Ludwell Harrison, III Process for buddy allocation
JP2018156544A (ja) * 2017-03-21 2018-10-04 Kddi株式会社 情報処理装置及びプログラム
CN109165546A (zh) * 2018-07-06 2019-01-08 深圳市科脉技术股份有限公司 人脸识别方法及装置
CN109376700A (zh) * 2018-11-30 2019-02-22 Oppo广东移动通信有限公司 指纹识别方法及相关产品
CN109785439A (zh) * 2018-12-27 2019-05-21 深圳云天励飞技术有限公司 人脸素描图像生成方法及相关产品
US20190158784A1 (en) * 2017-11-17 2019-05-23 Hyperconnect Inc. Server and operating method thereof

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109543570B (zh) * 2018-11-06 2023-04-18 Oppo广东移动通信有限公司 指纹识别方法及相关产品
CN110210395B (zh) * 2019-05-31 2021-04-13 Oppo广东移动通信有限公司 静脉图像采集方法及相关产品
CN110191303B (zh) * 2019-06-21 2021-04-13 Oppo广东移动通信有限公司 基于屏幕发声的视频通话方法、设备、装置及计算机可读存储介质

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101320351A (zh) * 2008-06-27 2008-12-10 华中科技大学 内存的分配、清理和释放方法及内存管理的装置
CN103049328A (zh) * 2012-11-06 2013-04-17 苏州懿源宏达知识产权代理有限公司 计算机系统中内存资源分配方法
CN104182350A (zh) * 2013-05-28 2014-12-03 中国银联股份有限公司 一种针对包括多个进程的应用的内存管理方法和装置
US20160275009A1 (en) * 2015-03-20 2016-09-22 Electronics And Telecommunications Research Institute Method for allocating storage space using buddy allocator
CN104951372A (zh) * 2015-06-16 2015-09-30 北京工业大学 一种基于预测的Map/Reduce数据处理平台内存资源动态分配方法
CN105487930A (zh) * 2015-12-01 2016-04-13 中国电子科技集团公司第二十八研究所 一种基于Hadoop的任务优化调度方法
JP2018156544A (ja) * 2017-03-21 2018-10-04 Kddi株式会社 情報処理装置及びプログラム
CN107844372A (zh) * 2017-10-17 2018-03-27 广东睿江云计算股份有限公司 一种内存分配的方法、系统
CN107862265A (zh) * 2017-10-30 2018-03-30 广东欧珀移动通信有限公司 图像处理方法及相关产品
CN107992797A (zh) * 2017-11-02 2018-05-04 中控智慧科技股份有限公司 人脸识别方法及相关装置
US20190158784A1 (en) * 2017-11-17 2019-05-23 Hyperconnect Inc. Server and operating method thereof
US20180267892A1 (en) * 2018-05-21 2018-09-20 Williams Ludwell Harrison, III Process for buddy allocation
CN109165546A (zh) * 2018-07-06 2019-01-08 深圳市科脉技术股份有限公司 人脸识别方法及装置
CN109376700A (zh) * 2018-11-30 2019-02-22 Oppo广东移动通信有限公司 指纹识别方法及相关产品
CN109785439A (zh) * 2018-12-27 2019-05-21 深圳云天励飞技术有限公司 人脸素描图像生成方法及相关产品

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CHIEN-CHENG LEE 等: "Feature point based text detection in signboard images", 《2016 INTERNATIONAL CONFERENCE ON APPLIED SYSTEM INNOVATION (ICASI)》 *
王冬慧 等: "基于线段树的高效内存管理算法及其空间优化", 《计算机应用》 *
王铮 等: "一种适用嵌入式系统的自适应动态内存管理方案", 《计算机技术与发展》 *
陈冰红 等: "基于图像分块模板匹配的高速运动目标跟踪技术", 《国外电子测量技术》 *

Also Published As

Publication number Publication date
CN110837416B (zh) 2021-04-30

Similar Documents

Publication Publication Date Title
CN109191410B (zh) 一种人脸图像融合方法、装置及存储介质
CN110059685B (zh) 文字区域检测方法、装置及存储介质
CN108932124A (zh) 神经网络模型压缩方法、装置、终端设备及存储介质
CN110808041B (zh) 语音识别方法、智能投影仪及相关产品
CN109062715B (zh) 内存时钟频率的确定方法、装置及终端
CN108961267B (zh) 图片处理方法、图片处理装置及终端设备
WO2021008116A1 (zh) 一种身份识别预处理、身份识别方法及系统
CN109445527B (zh) 平板电脑数据转存系统
CN111603772B (zh) 区域检测方法、装置、设备及存储介质
CN110806936B (zh) 资源管理方法、智能投影仪及相关产品
CN113038165B (zh) 确定编码参数组的方法、设备及存储介质
WO2022228157A1 (zh) 一种二维码编码、解码方法及电子设备
CN109005314B (zh) 一种图像处理方法及终端
CN111126594A (zh) 基于边缘计算的神经网络模型动态切分方法及装置
WO2019072180A1 (zh) 应用程序的资源配置方法及设备
CN111338745A (zh) 一种虚拟机的部署方法、装置及智能设备
WO2021042799A1 (zh) 一种身份识别预处理、身份识别方法及设备
CN110798505B (zh) 插件式物联网设备的管理方法及相关装置
US20160029027A1 (en) Device and method for processing image
CN112400147A (zh) 算法配置方法、设备、系统及可移动平台
CN110837416B (zh) 内存管理方法、智能投影仪及相关产品
CN113411725A (zh) 音频播放方法、装置、移动终端及存储介质
US11800453B2 (en) Electronic device for reducing power consumption in network on basis of Wi-Fi direct protocol, and method related thereto
CN110839151A (zh) 游戏投影优化方法及相关装置
CN108765503B (zh) 一种肤色检测方法、装置及终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant