CN107506237A - 一种网络摄像机及其内存整理方法和装置 - Google Patents
一种网络摄像机及其内存整理方法和装置 Download PDFInfo
- Publication number
- CN107506237A CN107506237A CN201710552388.XA CN201710552388A CN107506237A CN 107506237 A CN107506237 A CN 107506237A CN 201710552388 A CN201710552388 A CN 201710552388A CN 107506237 A CN107506237 A CN 107506237A
- Authority
- CN
- China
- Prior art keywords
- memory
- threshold value
- predetermined threshold
- free
- free memory
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation 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/5016—Allocation 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/50—Constructional details
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)
- Memory System (AREA)
Abstract
一种网络摄像机的内存整理方法包括:获取系统的可用内存,和/或,获取只用于音视频功能的可用内存;将系统的可用内存与第一预设阈值进行比较,和/或,将只用于音视频功能的可用内存与第二预设阈值进行比较,所述第二预设阈值为系统不能正常工作时所对应的系统剩余内存的阈值;如果系统的可用内存小于第一预设阈值时,或只用于音视频功能的可用内存大于第二预设阈值时,进行内存移动。从而在不需要增加网络摄像机成本且不需要减少系统功能和应用的前提下,大大的提高了系统运行的稳定性。
Description
技术领域
本发明属于网络摄像机领域,尤其涉及一种网络摄像机及其内存整理方法和装置。
背景技术
网络摄像机又叫IP CAMERA(简称IPC),是由网络编码模块和模拟摄像机组合而成。网络编码模块将模拟摄像机采集到的模拟视频信号编码压缩成数字信号,从而可以直接接入网络交换及路由设备。网络上用户可以直接观看到摄像机图像,授权用户还可以控制摄像机云台镜头的动作或对嵌入式操作系统进行配置操作。
网络摄像机在进行视频传输时,为了保证码流正常生成,嵌入式系统在启动时一般会预留一部分内存专门用于视频图像,设备在长时间运行后,内核的可用内存减少,造成设备中内核的运行内存不足,使得设备运行不正常,出现如系统重启或进程异常退出等故障。而为了解决该问题,目前一般通过提高系统的内存量,或者降低系统运行的程序或功能的方法,来提高系统运行的可靠度,但是这样会导致产品的成本增加,或者导致产品所运行的功能或者应用减少。
发明内容
有鉴于此,本发明实施例提供了一种网络摄像机的内存整理方法,以解决现有技术中为解决内存故障导致产品成本增加,或者卖到产品运行的程度或功能减少的问题。
本发明实施例的第一方面提供了一种网络摄像机的内存整理方法,所述内存整理方法包括:
获取系统的可用内存,和/或,获取只用于音视频功能的可用内存;
将系统的可用内存与第一预设阈值进行比较,和/或,将只用于音视频功能的可用内存与第二预设阈值进行比较,所述第二预设阈值为系统不能正常工作时所对应的系统剩余内存的阈值;
如果系统的可用内存小于第一预设阈值时,或只用于音视频功能的可用内存大于第二预设阈值时,进行内存移动。
结合第一方面,在第一方面的第一种可能实现方式中,所述获取系统的可用内存的步骤包括:
读取内存块记录文件,获取不同类型的内存块的大小和数量,计算得到系统的可用内存;
或者,通过读取内存查看工具中的指定字段的数据获取系统的可用内存;
或者,通过查看系统的内存状态信息文件的指定字段的内容获取系统的可用内存;
或者,通过系统内存状态查看指令获取系统的可用内存。
结合第一方面,在第一方面的第二种可能实现方式中,所述获取只用于音视频功能的可用内存的步骤包括:
通过读取指定目录下的页面类型信息文件,获取所述只用于音视频功能的可用内存。
结合第一方面,在第一方面的第三种可能实现方式中,所述如果系统的可用内存小于第一预设阈值时,或只用于音视频功能的可用内存大于第二预设阈值时,进行内存移动的步骤包括:
如果系统的可用内存小于第一预设阈值时,通过内存碎片整理指令将系统内存碎片整理为连续内存块;
如果只用于音视频功能的可用内存大于第二预设阈值时,将只用于音视频功能的内存整理为其它内存分区,和/或通过内存碎片整理指令将系统内存碎片整理为连续内存块。
结合第一方面、第一方面的第一种可能实现方式、第一方面的第二种可能实现方式或第一方面的第三种可能实现方式,在第一方面的第四种可能实现方式中,所述第二预设阈值为系统触发内存溢出指令所对应的系统剩余内存值。
本发明实施例的第二方面提供了一种网络摄像机的内存整理装置,所述内存整理装置包括:
可用内存获取单元,用于获取系统的可用内存,和/或,获取只用于音视频功能的可用内存;
内存比较单元,用于将系统的可用内存与第一预设阈值进行比较,和/或,将只用于音视频功能的可用内存与第二预设阈值进行比较,所述第二预设阈值为系统不能正常工作时所对应的系统剩余内存的阈值;
内存移动单元,用于如果系统的可用内存小于第一预设阈值时,或只用于音视频功能的可用内存大于第二预设阈值时,进行内存移动。
结合第二方面,在第二方面的第一种可能实现方式中,所述可用内存获取单元包括:
第一获取子单元,用于读取内存块记录文件,获取不同类型的内存块的大小和数量,计算得到系统的可用内存;
或者,第二获取子单元,用于通过读取内存查看工具中的指定字段的数据获取系统的可用内存;
或者,第三获取子单元,用于通过查看系统的内存状态信息文件的指定字段的内容获取系统的可用内存;
或者,第四获取子单元,用于通过系统内存状态查看指令获取系统的可用内存。
结合第二方面,在第二方面的第二种可能实现方式中,所述内存移动单元包括:
第一移动子单元,用于如果系统的可用内存小于第一预设阈值时,通过内存碎片整理指令将系统内存碎片整理为连续内存块;
第二移动子单元,用于如果只用于音视频功能的可用内存大于第二预设阈值时,将只用于音视频功能的内存整理为其它内存分区,和/或通过内存碎片整理指令将系统内存碎片整理为连续内存块。
本发明实施例的第三方面提供了一种网络摄像机,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述网络摄像机的内存整理方法的步骤。
本发明实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一项所述网络摄像机的内存整理方法的步骤。
本发明实施例与现有技术相比存在的有益效果是:通过获取系统可用内存,和/或音视频功能的可用内存,将其分别与第二预设阈值进行比较,如果系统的可用内存小于第一预设阈值时,或只用于音视频功能的可用内存大于第二预设阈值时,进行内存移动,从而可以在系统可用内存不足或只用于音视频功能的可用内存剩余较多时,及时的进行内存移动,从而在不需要增加网络摄像机成本且不需要减少系统功能和应用的前提下,大大的提高了系统运行的稳定性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的网络摄像机的内存整理方法的实现流程示意图;
图2是本发明实施例提供的进行内存移动方法的实现流程示意图;
图3是本发明实施例提供的网络摄像机的内存整理装置的结构示意图;
图4是本发明实施例提供的网络摄像机的系统结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
如图1所示,本发明实施例所述网络摄像机的内存整理方法,包括:
在步骤S101中,获取系统的可用内存,和/或,获取只用于音视频功能的可用内存。
具体的,所述系统的可用内存,是指网络摄像机的嵌入式系统在启动后,系统内核以及其它应用程序会消耗一定的内存,系统总的内存与所消耗的内存的差值,即为系统的可用内存。所述系统的可用内存会随着应用程序的运行而动态的发生变化。并且在系统启动时,会触发一个预先设定的内存溢出值(out of memory),当系统可用内存低于内存溢出值时,则会出现系统卡顿、应用程序意外退出或者系统自动重启等故障。
在系统启动时,系统会专门分配一段内存作为音视频功能独占使用,并且在音视频功能的内存不够时,可以从其它类型的内存中申请使用空间。所述音视频功能的可用内存,与系统分配的音视频功能独占使用的内存空间的大小相关,也和音视频功能实际使用的内存大小相关。在获取所述音视频功能的可用内存时,可以通过读取指定目录下的页面类型信息文件,获取所述只用于音视频功能的可用内存。具体可以获取内存的类型以及每种类型所对应的内存的大小,然后,计算得到用于特定功能的内存的大小。
比如,对于linux系统,可以通过在控制台通过根目录下的proc/pagetypeinfo文件,查看不同类型的内存的可用大小。其中的CMA类型的内存就属于只用于音视频功能的内存。CMA类型的内存是一些音视频设备所特有的,是可以移动的内存。但是这部分内存不能被内核所使用,因此,可以根据内存的类型,选择相应的整理方式。比如,对于CMA类型的内存,可以通过移动该分区的内存,进行内存整理。
对于系统的可用内存的获取方式,可以包括多种,分别介绍下:
1.1读取内存块记录文件,获取不同类型的内存块的大小和数量,计算得到系统的可用内存。
在所述内存块记录文件中记录有不同类型的内存块的大小和数量,将不同类型的可用内存块大小和数量进行求和,即可得到系统的可用内存。比如,可以查看linux系统根目录下的proc/buddyinfo文件,文件中表明了各种类型的内存块的可用块数以及内存块的大小。将内存块的大小乘以块数,再进行相加,就可以得到系统可用内存。
1.2通过读取内存查看工具中的指定字段的数据获取系统的可用内存。
所述内存查看工具,可以为第三方开发出的与内存相关的工具,比如可以为TOP监控工具,它能够提供运行在系统上的与CPU关系最密切的进程列表,以及许多意义的统计值,例如负载平均、进程数量、使用的存储器和页面空间数量。通过Top工具可以实现动态显示,即可以通过周期性的打印和显示当前状态。从而能够实时的得到系统的可用内存。所述TOP监控工具中的特定字段,比如mem free字段,可以表示系统的可用内存。
1.3通过查看系统的内存状态信息文件的指定字段的内容获取系统的可用内存。
所述内存状态信息文件,可以查看系统根目录下的proc/meminfo文件,文件中的MemFree字段,可以得到系统可用内存。
1.4通过系统内存状态查看指令获取系统的可用内存。
通过运行系统内存状态查看指令,可以通过指定字段查看到系统中可用内存的大小。比如,可以利用linux系统自带的free指令,运行free指令,结果中的free字段即为系统可用内存。
可以采用上述系统可用内存获取方式中的一个或者多个,进行系统可用内存的获取。当采用两个或者两个以上的方式时,可以通过对比或求均值的方式,提高系统可用内存的准确度。
在步骤S102中,将系统的可用内存与第一预设阈值进行比较,和/或,将只用于音视频功能的可用内存与第二预设阈值进行比较,所述第二预设阈值为系统不能正常工作时所对应的系统剩余内存的阈值。
具体的,本发明实施例所述的第二预设阈值,即系统出现或触发内存溢出(out ofmemory)时所对应的系统剩余内存的阈值。所述第二预设阈值的大小,与以下因素相关:
1.1系统总的内存的大小。所述第二预设阈值随着系统总的内存的增加,也相应的增加,并且,系统总的内存增加,系统出现内存溢出的机率也越小。
1.2系统设定的触发内存溢出(out of memory)的临界值相关。该临界值由内核指定,指定的值越大,所述第二预设阈值也相应的增加。
1.3与运行的平台相关。比如,对于MSTAR平台(台湾晨星公司开发的嵌入式平台)。系统正常工作时的可用内存一般为10M-20M的区间,可以根据比例确定第二预设阈值,比如可以设置第二预设阈值为4M。
所述第一预设阈值,优选的实施方式为第二预设阈值的1.2倍至2.0倍,比如可以选用1.5倍、1.8倍等。通过设定预定倍数,可以使得系统可用内存在减小的过程中,一旦等于或小于预定倍数的第二预设阈值,则进行内存移动操作,使得系统可以整理更多的内存空间,或者腾出更大块的内存空间,减少系统出现异常的可能性。
所述第二预设阈值还与音视频功能的可用内存进行比较,如果音视频可用内存大于预设的第二预设阈值,则可以将音视频功能的可用内存进行移动,将其用于其它类型的应用或功能使用,从而减少系统内核或其它应用出现内存不足的机率,提高系统运行的可靠度。
在步骤S103中,如果系统的可用内存小于第一预设阈值时,或只用于音视频功能的可用内存大于第二预设阈值时,进行内存移动。
具体的,系统中不同类型的内存,具有不同的特性,比如,Linux系统的内存可以大致分为以下三种类型的内存:
1.1不可移动页:在内存中的位置固定,不能移动到其他地方。内核分配的内存都属于这种类型。
1.2可回收页:不能直接移动,但可以删除,因为其内容可从某些源重新生成,如文件映射产生的页。
1.3可移动页:在内存中的位置可随便移动,只要修改其对应的页表即可。用户态应用程序使用的页属于这种类型。
本发明实施例中所述内存移动,主要针对可移动页的内存整理,具体可以包括如图2所示:
在步骤S201中,如果系统的可用内存小于第一预设阈值时,通过内存碎片整理指令将系统内存碎片整理为连续内存块。
比如,可以通过执行echo 1>/proc/sys/vm/compact_memory命令,对内存进行移动,整理系统内存。
在步骤S202中,如果只用于音视频功能的可用内存大于第二预设阈值时,将只用于音视频功能的内存整理为其它内存分区,和/或通过内存碎片整理指令将系统内存碎片整理为连续内存块。
如果只用于音视频功能的可用内存过多,可以将部分只用于音视频功能的内存作为其它应用或功能的内存使用。将只用于音视频功能的内存进行移动时,可以根据只用于音视频功能的内存与第二预设阈值的比较结果确定移动的内存量,比如只用于音视频功能的可用内存大于第二预设阈值,且两者的差值为X,则可以设定将大小为X的内存量移动至其它应用或功能使用,从而能够保护音视频功能正常时,也能提高系统运行的可靠度。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图3为本发明实施例提供的一种网络摄像机的内存整理装置的结构示意图,包括:
可用内存获取单元301,用于获取系统的可用内存,和/或,获取只用于音视频功能的可用内存;
内存比较单元302,用于将系统的可用内存与第一预设阈值进行比较,和/或,将只用于音视频功能的可用内存与第二预设阈值进行比较,所述第二预设阈值为系统不能正常工作时所对应的系统剩余内存的阈值;
内存移动单元303,用于如果系统的可用内存小于第一预设阈值时,或只用于音视频功能的可用内存大于第二预设阈值时,进行内存移动。
优选的,所述可用内存获取单元包括:
第一获取子单元,用于读取内存块记录文件,获取不同类型的内存块的大小和数量,计算得到系统的可用内存;
或者,第二获取子单元,用于通过读取内存查看工具中的指定字段的数据获取系统的可用内存;
或者,第三获取子单元,用于通过查看系统的内存状态信息文件的指定字段的内容获取系统的可用内存;
或者,第四获取子单元,用于通过系统内存状态查看指令获取系统的可用内存。
优选的,所述内存移动单元包括:
第一移动子单元,用于如果系统的可用内存小于第一预设阈值时,通过内存碎片整理指令将系统内存碎片整理为连续内存块;
第二移动子单元,用于如果只用于音视频功能的可用内存大于第二预设阈值时,将只用于音视频功能的内存整理为其它内存分区,和/或通过内存碎片整理指令将系统内存碎片整理为连续内存块。
所述网络摄像机的内存整理装置,与上述网络摄像机的内存整理方法对应。
图4是本发明一实施例提供的网络摄像机的示意图。如图4所示,该实施例的网络摄像机4包括:处理器40、存储器41以及存储在所述存储器41中并可在所述处理器40上运行的计算机程序42,例如网络摄像机的内存整理程序。所述处理器40执行所述计算机程序42时实现上述各个网络摄像机的内存整理方法实施例中的步骤,例如图1所示的步骤101至103。或者,所述处理器40执行所述计算机程序42时实现上述各装置实施例中各模块/单元的功能,例如图3所示模块301至303的功能。
示例性的,所述计算机程序42可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器41中,并由所述处理器40执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序42在所述网络摄像机4中的执行过程。例如,所述计算机程序42可以被分割成可用内存获取单元、内存比较单元、内存移动单元,各模块具体功能如下:
可用内存获取单元,用于获取系统的可用内存,和/或,获取只用于音视频功能的可用内存;
内存比较单元,用于将系统的可用内存与第一预设阈值进行比较,和/或,将只用于音视频功能的可用内存与第二预设阈值进行比较,所述第二预设阈值为系统不能正常工作时所对应的系统剩余内存的阈值;
内存移动单元,用于如果系统的可用内存小于第一预设阈值时,或只用于音视频功能的可用内存大于第二预设阈值时,进行内存移动。
所述网络摄像机4可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述网络摄像机可包括,但不仅限于,处理器40、存储器41。本领域技术人员可以理解,图4仅仅是网络摄像机4的示例,并不构成对网络摄像机4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述网络摄像机还可以包括输入输出设备、网络接入设备、总线等。
所称处理器40可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器41可以是所述网络摄像机4的内部存储单元,例如网络摄像机4的硬盘或内存。所述存储器41也可以是所述网络摄像机4的外部存储设备,例如所述网络摄像机4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器41还可以既包括所述网络摄像机4的内部存储单元也包括外部存储设备。所述存储器41用于存储所述计算机程序以及所述网络摄像机所需的其他程序和数据。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (11)
1.一种网络摄像机的内存整理方法,其特征在于,所述内存整理方法包括:
获取系统的可用内存,和/或,获取只用于音视频功能的可用内存;
将系统的可用内存与第一预设阈值进行比较,和/或,将只用于音视频功能的可用内存与第二预设阈值进行比较,所述第二预设阈值为系统不能正常工作时所对应的系统剩余内存的阈值;
如果系统的可用内存小于第一预设阈值时,或只用于音视频功能的可用内存大于第二预设阈值时,进行内存移动。
2.根据权利要求1所述的网络摄像机的内存整理方法,其特征在于,所述获取系统的可用内存的步骤包括:
读取内存块记录文件,获取不同类型的内存块的大小和数量,计算得到系统的可用内存;
或者,通过读取内存查看工具中的指定字段的数据获取系统的可用内存;
或者,通过查看系统的内存状态信息文件的指定字段的内容获取系统的可用内存;
或者,通过系统内存状态查看指令获取系统的可用内存。
3.根据权利要求1所述的网络摄像机的内存整理方法,其特征在于,所述获取只用于音视频功能的可用内存的步骤包括:
通过读取指定目录下的页面类型信息文件,获取所述只用于音视频功能的可用内存。
4.根据权利要求1所述的网络摄像机的内存整理方法,其特征在于,所述如果系统的可用内存小于第一预设阈值时,或只用于音视频功能的可用内存大于第二预设阈值时,进行内存移动的步骤包括:
如果系统的可用内存小于第一预设阈值时,通过内存碎片整理指令将系统内存碎片整理连续内存块;
如果只用于音视频功能的可用内存大于第二预设阈值时,将只用于音视频功能的内存整理为其它内存分区,和/或通过内存碎片整理指令将系统内存碎片整理为连续内存块。
5.根据权利要求1-4任一项所述的网络摄像机的内存整理方法,其特征在于,所述第二预设阈值为系统触发内存溢出指令所对应的系统剩余内存值。
6.根据权利要求1-4任一项所述的网摄像机的内存整理方法,其特征在于,打飞机这第二预设阈值为第一预设阈值的预定倍数,所述预定倍数大于1且小于2。
7.一种网络摄像机的内存整理装置,其特征在于,所述内存整理装置包括:
可用内存获取单元,用于获取系统的可用内存,和/或,获取只用于音视频功能的可用内存;
内存比较单元,用于将系统的可用内存与第一预设阈值进行比较,和/或,将只用于音视频功能的可用内存与第二预设阈值进行比较,所述第二预设阈值为系统不能正常工作时所对应的系统剩余内存的阈值;
内存移动单元,用于如果系统的可用内存小于第一预设阈值时,或只用于音视频功能的可用内存大于第二预设阈值时,进行内存移动。
8.根据权利要求7所述的网络摄像机的内存整理装置,其特征在于,所述可用内存获取单元包括:
第一获取子单元,用于读取内存块记录文件,获取不同类型的内存块的大小和数量,计算得到系统的可用内存;
或者,第二获取子单元,用于通过读取内存查看工具中的指定字段的数据获取系统的可用内存;
或者,第三获取子单元,用于通过查看系统的内存状态信息文件的指定字段的内容获取系统的可用内存;
或者,第四获取子单元,用于通过系统内存状态查看指令获取系统的可用内存。
9.根据权利要求7所述的网络摄像机的内存整理装置,其特征在于,所述内存移动单元包括:
第一移动子单元,用于如果系统的可用内存小于第一预设阈值时,通过内存碎片整理指令将系统内存碎片整理为连续内存块;
第二移动子单元,用于如果只用于音视频功能的可用内存大于第二预设阈值时,将只用于音视频功能的内存整理为其它内存分区,和/或通过内存碎片整理指令将系统内存碎片整理为连续内存块。
10.一种网络摄像机,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述网络摄像机的内存整理方法的步骤。
11.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述网络摄像机的内存整理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710552388.XA CN107506237A (zh) | 2017-07-07 | 2017-07-07 | 一种网络摄像机及其内存整理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710552388.XA CN107506237A (zh) | 2017-07-07 | 2017-07-07 | 一种网络摄像机及其内存整理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107506237A true CN107506237A (zh) | 2017-12-22 |
Family
ID=60679605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710552388.XA Pending CN107506237A (zh) | 2017-07-07 | 2017-07-07 | 一种网络摄像机及其内存整理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107506237A (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101833512A (zh) * | 2010-04-22 | 2010-09-15 | 中兴通讯股份有限公司 | 一种内存回收方法及其装置 |
CN102156675A (zh) * | 2010-02-12 | 2011-08-17 | 中兴通讯股份有限公司 | 一种内存分配方法及装置 |
CN102521139A (zh) * | 2011-11-28 | 2012-06-27 | 华为技术有限公司 | 一种内存管理的方法和装置 |
CN103365721A (zh) * | 2012-04-06 | 2013-10-23 | 腾讯科技(深圳)有限公司 | 调整移动终端内存的方法及该移动终端 |
CN103377142A (zh) * | 2012-04-17 | 2013-10-30 | 安凯(广州)微电子技术有限公司 | 一种存储方法及一种摄像系统 |
CN103885569A (zh) * | 2014-04-11 | 2014-06-25 | 珠海全志科技股份有限公司 | 内存的管理方法及装置 |
CN104394319A (zh) * | 2014-11-24 | 2015-03-04 | 广州市浩云安防科技股份有限公司 | 一种嵌入式的高清网络视频录像机 |
CN104461737A (zh) * | 2014-12-10 | 2015-03-25 | 广东欧珀移动通信有限公司 | 一种内存管理方法和装置 |
CN105512050A (zh) * | 2015-11-25 | 2016-04-20 | 小米科技有限责任公司 | 内存管理方法及装置 |
CN105589812A (zh) * | 2015-12-16 | 2016-05-18 | 成都华为技术有限公司 | 磁盘碎片整理方法、装置及主机 |
CN106201717A (zh) * | 2016-07-01 | 2016-12-07 | 珠海市魅族科技有限公司 | 一种管理系统内存的方法及终端 |
CN106250216A (zh) * | 2016-07-21 | 2016-12-21 | 宇龙计算机通信科技(深圳)有限公司 | 一种清理内存的方法及终端 |
CN106557436A (zh) * | 2016-11-17 | 2017-04-05 | 乐视控股(北京)有限公司 | 终端的内存压缩功能使能方法及装置 |
CN106708746A (zh) * | 2016-12-30 | 2017-05-24 | 郑州云海信息技术有限公司 | 一种在线内存碎片整理方法和装置 |
CN106815078A (zh) * | 2016-12-30 | 2017-06-09 | 广东欧珀移动通信有限公司 | 一种内存控制方法及设备 |
-
2017
- 2017-07-07 CN CN201710552388.XA patent/CN107506237A/zh active Pending
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156675A (zh) * | 2010-02-12 | 2011-08-17 | 中兴通讯股份有限公司 | 一种内存分配方法及装置 |
CN101833512A (zh) * | 2010-04-22 | 2010-09-15 | 中兴通讯股份有限公司 | 一种内存回收方法及其装置 |
CN102521139A (zh) * | 2011-11-28 | 2012-06-27 | 华为技术有限公司 | 一种内存管理的方法和装置 |
CN103365721A (zh) * | 2012-04-06 | 2013-10-23 | 腾讯科技(深圳)有限公司 | 调整移动终端内存的方法及该移动终端 |
CN103377142A (zh) * | 2012-04-17 | 2013-10-30 | 安凯(广州)微电子技术有限公司 | 一种存储方法及一种摄像系统 |
CN103885569A (zh) * | 2014-04-11 | 2014-06-25 | 珠海全志科技股份有限公司 | 内存的管理方法及装置 |
CN104394319A (zh) * | 2014-11-24 | 2015-03-04 | 广州市浩云安防科技股份有限公司 | 一种嵌入式的高清网络视频录像机 |
CN104461737A (zh) * | 2014-12-10 | 2015-03-25 | 广东欧珀移动通信有限公司 | 一种内存管理方法和装置 |
CN105512050A (zh) * | 2015-11-25 | 2016-04-20 | 小米科技有限责任公司 | 内存管理方法及装置 |
CN105589812A (zh) * | 2015-12-16 | 2016-05-18 | 成都华为技术有限公司 | 磁盘碎片整理方法、装置及主机 |
CN106201717A (zh) * | 2016-07-01 | 2016-12-07 | 珠海市魅族科技有限公司 | 一种管理系统内存的方法及终端 |
CN106250216A (zh) * | 2016-07-21 | 2016-12-21 | 宇龙计算机通信科技(深圳)有限公司 | 一种清理内存的方法及终端 |
CN106557436A (zh) * | 2016-11-17 | 2017-04-05 | 乐视控股(北京)有限公司 | 终端的内存压缩功能使能方法及装置 |
CN106708746A (zh) * | 2016-12-30 | 2017-05-24 | 郑州云海信息技术有限公司 | 一种在线内存碎片整理方法和装置 |
CN106815078A (zh) * | 2016-12-30 | 2017-06-09 | 广东欧珀移动通信有限公司 | 一种内存控制方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10523580B2 (en) | Automatic cloud provisioning based on related internet news and social network trends | |
CN109740732B (zh) | 神经网络处理器、卷积神经网络数据复用方法及相关设备 | |
CN109445861A (zh) | 系统启动方法、装置、计算机装置及存储介质 | |
CN104364758A (zh) | 用于有限能力操作系统的api重定向 | |
CN113377348A (zh) | 应用于任务引擎的任务调整方法、相关装置和存储介质 | |
CN102834806A (zh) | 系统结构管理设备、系统结构管理方法和程序 | |
CN111324471A (zh) | 服务调整方法、装置、设备及存储介质 | |
CN112667405B (zh) | 信息处理方法、装置、设备及存储介质 | |
CN108255989A (zh) | 图片存储方法、装置、终端设备及计算机存储介质 | |
CN113687949B (zh) | 服务器部署方法、装置、部署设备及存储介质 | |
CN107506494A (zh) | 文件处理方法、移动终端及计算机可读存储介质 | |
CN113407254B (zh) | 表单生成方法、装置、电子设备及存储介质 | |
CN113272785B (zh) | 一种挂载文件系统的方法、终端设备及存储介质 | |
CN110569114B (zh) | 一种业务处理方法、装置、设备及存储介质 | |
CN107463638A (zh) | 离线虚拟机间文件共享方法和设备 | |
CN109324867A (zh) | 一种虚拟机暂存方法、恢复方法及装置 | |
CN112199042A (zh) | 存储空间管理方法、装置、芯片、设备及存储介质 | |
CN115619486A (zh) | 订单处理方法、装置、电子设备和存储介质 | |
CN112269665B (zh) | 内存的处理方法和装置、电子设备和存储介质 | |
CN107506237A (zh) | 一种网络摄像机及其内存整理方法和装置 | |
CN112764729B (zh) | 应用软件开发方法、装置、计算机设备及可读存储介质 | |
US20170090820A1 (en) | Method and device for operating a many-core system | |
CN113656046A (zh) | 一种应用部署方法和装置 | |
CN110865901B (zh) | 组建ec条带的方法和装置 | |
CN111709210A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171222 |
|
RJ01 | Rejection of invention patent application after publication |