CN106708752A - 内存预留方法及装置 - Google Patents

内存预留方法及装置 Download PDF

Info

Publication number
CN106708752A
CN106708752A CN201611035635.0A CN201611035635A CN106708752A CN 106708752 A CN106708752 A CN 106708752A CN 201611035635 A CN201611035635 A CN 201611035635A CN 106708752 A CN106708752 A CN 106708752A
Authority
CN
China
Prior art keywords
memory block
physical address
memory
address
application program
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
CN201611035635.0A
Other languages
English (en)
Other versions
CN106708752B (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.)
Maipu Communication Technology Co Ltd
Original Assignee
Maipu Communication Technology 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 Maipu Communication Technology Co Ltd filed Critical Maipu Communication Technology Co Ltd
Priority to CN201611035635.0A priority Critical patent/CN106708752B/zh
Publication of CN106708752A publication Critical patent/CN106708752A/zh
Application granted granted Critical
Publication of CN106708752B publication Critical patent/CN106708752B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明提供了一种内存预留方法及装置,所述方法包括:在应用程序启动之前,获取用于预留给应用程序的多个内存块的物理地址,将所述多个内存块按照其对应的物理地址的大小关系进行排序;将排序后的所述多个内存块按照其对应的物理地址从大到小的顺序逐一释放;将释放后的所述多个内存块逐一重新申请,并记录重新申请后的所述多个内存块的物理地址与虚拟地址的对应关系。如此,可以有效减少内存块合并过程中的内存碎片,提高内存性能,减小CPU的负载。

Description

内存预留方法及装置
技术领域
本发明涉及内存管理技术领域,具体而言,涉及一种内存预留方法及装置。
背景技术
通信技术的迅速发展对通信设备的功能提出了更高更多的要求,为了满足这些要求,对通信设备上内存的存储容量要求也随之变得越来越大。传统的4KB的普通内存页管理方式已经不能满足用户对设备性能的需求,于是产生了hugepage(大页面内存)的概念,hugepage是一种内存管理方式,与传统的4KB的普通内存页管理方式相比,该种机制管理的内存页尺寸更大,TLB(Translation Lookaside Buffer,翻译后备缓冲)的条目更少,大大提高内存的性能,降低CPU负载。
然而,在现有技术hugepage机制的内存预留方法中,分配给用户态应用程序的内存块在申请以后其物理地址可能不连续,在进行内存块调用时不方便,造成导致内存性能下降,CPU负载过大。
发明内容
为了克服现有技术中的上述不足,本发的目的在于提供一种内存预留方法,所述方法包括:
在应用程序启动之前,获取用于预留给应用程序的多个内存块的物理地址,将所述多个内存块按照其对应的物理地址的大小关系进行排序;
将排序后的所述多个内存块按照其对应的物理地址从大到小的顺序逐一释放;
将释放后的所述多个内存块逐一重新申请,并记录重新申请后的所述多个内存块的物理地址与虚拟地址的对应关系。
进一步地,在上述方法中,所述获取用于预留给应用程序的多个内存块的物理地址的方式,包括:
根据预设配置信息获取需要预留给应用程序的内存块的数量以及每个内存块的大小;
根据所述内存块的数量及内存块的大小进行内存块申请,获取申请到的多个内存块的物理地址。
进一步地,在上述方法中,所述内存块为按照大页hugepage机制申请的物理内存块。
进一步地,在上述方法中,所述方法还包括:
遍历记录有所述多个内存块的物理地址与对应虚拟地址的内存块信息表,将所述多个内存块中所述物理地址与对应虚拟地址均连续的内存块合并为新的内存块,在所述内存块信息表中记录合并后的新的内存块的物理地址及虚拟地址。
进一步地,在上述方法中,所述将所述物理地址与对应虚拟地址均连续的内存块合并为新的内存块,记录合并后的新的内存块的物理地址及虚拟地址的步骤之后,所述方法还包括:
将所述内存块信息表中的内存块的信息发送给系统的内存管理单元,进行应用程序对所述内存块的调用。
本发明的另一目的在于提供一种内存预留装置,所述装置包括:
内存块排序模块,用于在应用程序启动之前,获取用于预留给应用程序的多个内存块的物理地址,将所述多个内存块按照其对应的物理地址的大小关系进行排序;
内存块释放模块,用于将排序后的所述多个内存块按照其对应的物理地址从大到小的顺序逐一释放;
内存块重申请模块,用于将释放后的所述多个内存块逐一重新申请,并记录重新申请后的所述多个内存块的物理地址与虚拟地址的对应关系。
进一步地,在上述装置中,所述内存块排序模块获取用于预留给应用程序的多个内存块的物理地址的方式,包括:
根据预设配置信息获取需要预留给应用程序的内存块的数量以及每个内存块的大小;
根据所述内存块的数量及内存块的大小进行内存块申请,获取申请到的多个内存块的物理地址。
进一步地,在上述装置中,所述内存块为按照hugepage机制申请的物理内存块。
进一步地,在上述装置中,所述装置还包括:
内存块合并模块,用于遍历记录有所述多个内存块的物理地址与对应虚拟地址的内存块信息表,将所述多个内存块中所述物理地址与对应虚拟地址均连续的内存块合并为新的内存块,在所述内存块信息表中记录合并后的新的内存块的物理地址及虚拟地址。
进一步地,在上述装置中,所述装置还包括:
内存块信息发送模块,用于将所述内存块信息表中的内存块的信息发送给系统的内存管理单元,进行应用程序对所述内存块的调用。
相对于现有技术而言,本发明具有以下有益效果:
本发明提供的内存预留方法及装置,通过在用户态应用程序运行之前,对系统为用户态应用程序申请的多个内存块按照其对应的物理地址从大到小的顺序逐一释放后重新申请,使得重新申请后的所述多个内存块的物理地址与虚拟地址均连续。如此,可以有效减少内存块合并过程中的内存碎片,提高内存性能,减小CPU的负载。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的通信设备的示意图;
图2为本发明实施例提供的内存预留方法的流程示意图之一;
图3为本发明实施例提供的内存块地址示意图之一;
图4为本发明实施例提供的内存块地址示意图之二;
图5为本发明实施例提供的内存块地址示意图之三;
图6为本发明实施例提供的内存预留方法的流程示意图之二;
图7为本发明实施例提供的内存块地址示意图之四;
图8为本发明实施例提供的内存预留装置示意图之一;
图9为本发明实施例提供的内存预留装置示意图之二。
图标:100-通信设备;120-存储器;130-处理器;110-内存预留装置;111-内存块排序模块;112-内存块释放模块;113-重申请模块;114-内存块合并模块;115-内存块信息发送模块。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
本实施例提供的内存预留的方法应用于基于Linux系统的通信设备。请参照图1,图1为本实施例提供的所述基于Linux系统的通信设备100的方框示意图。所述通信设备100包括内存预留装置110、存储器120及处理器130。
所述存储器120、处理器130及各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述内存预留装置110包括至少一个可以应用程序或固件(firmware)的形式存储于所述存储器120中或固化在所述通信设备100的操作系统(operating system,OS)中的应用程序功能模块。所述处理器130用于执行所述存储器120中存储的可执行模块,例如所述内存预留装置110所包括的应用程序功能模块及计算机程序等。
其中,所述存储器120可以是,但不限于,随机存取存储器(Random AccessMemory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(ProgrammableRead-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-OnlyMemory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-OnlyMemory,EEPROM)等。其中,存储器120用于存储程序,所述处理器130在接收到执行指令后,执行所述程序。
所述处理器130可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(DSP))、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
请参照图2,图2为应用于图1所示的通信设备100的内存预留方法,所述方法包括以下步骤。
步骤S110,在应用程序启动之前,获取用于预留给应用程序的多个内存块的物理地址,将所述多个内存块按照其对应的物理地址的大小关系进行排序。
在本实施例中,采用hugepage内存机制进行内存块的申请。具体地,所述通信设备100在系统启动时,在所有用户态应用程序启动之前,获取一配置文件中的预设配置信息,所述预设配置信息中包括需要预留给应用程序的内存块的预设数量及每个内存块的预设大小。
所述通信设备100根据所述内存块的数量及内存块的大小进行内存块申请,并获得申请到的所述多个内存块的物理地址。在本实施例中,所述预设内存块大小可以设置为32M。
请参照图3,所述通信设备100预申请出的内存块信息如图3所示,申请出的所述多个内存块的虚拟地址是线性增长的,但物理地址可能不是线性增长的或可能不是连续的。
所述通信设备100获取申请到的所述多个内存块的物理地址后,将所述多个内存块按照其对应的物理地址的大小关系进行排序。如图4所示,在本实施例中,可以按照所述多个内存块物理地址从小到大的顺序进行排序。
步骤S120,将排序后的所述多个内存块按照其对应的物理地址从大到小的顺序逐一释放。
步骤S130,将释放后的所述多个内存块逐一重新申请,并记录重新申请后的所述多个内存块的物理地址与虚拟地址的对应关系。
具体地,Linux系统在进行内存块申请时,较后释放的内存块在重新申请时会较先被申请,故在本实施例中,由于所述通信设备100在步骤S120中释放时是按照所述多个内存块时按照其对应的物理地址从大到小的顺序逐一释放的,在进行重新申请时所述通信设备100会按照物理地址从小到大的顺序对所述多个内存块进行重新申请。
如此,由于重新申请时所述多个内存块的虚拟地址必然是从小到大递增的,且申请时所述多个内存块的物理地址也是从小到大递增的,故所述多个内存块在经过重新申请后,其虚拟地址与物理地址的对应关系如图5所示。
进一步地,请参照图6,所述方法还可包括步骤S140。
步骤S140,遍历记录有所述多个内存块的物理地址与对应虚拟地址的内存块信息表,将所述多个内存块中所述物理地址与对应虚拟地址均连续的内存块合并为新的内存块,在所述内存块信息表中记录合并后的新的内存块的物理地址及虚拟地址。
具体地,所述通信设备100中有一内存块信息表,所述内存块信息表中记录有经步骤S130后所述多个内存块的物理地址与虚拟地址的内存块信息表。
所述通信设备100遍历所述内存块信息表,查找出其中物理地址与第二虚拟地址均连续的内存块,将所述物理地址与所述第二虚拟地址均连续的内存块合并为新的内存块,并在所述内存块信息表中记录合并后的新的内存块的物理地址及虚拟地址,如图7所示。由于经步骤S130重新申请后的内存块的物理地址与第二虚拟地址均是线性增长的,所以在本步骤的合并过程中可以有效避免因地址不连续造成的合并错误或产生内存碎片。合并后减少了内存块数量,使得TLB条目更少,可以进一步提高内存的性能,降低CPU的负载。
进一步地,所述通信设备100在步骤S150之后,所述通信设备100将所述内存块信息表中的内存块信息发送给系统的内存管理单元,以用于用户态应用程序对所述多个内存块的调用。
值得说明的是,本实施例中步骤S110至步骤S140均为所述通信设备100在用户态应用程序启动前执行,用户态应用程序调用经步骤S110至步骤S140处理后的内存块时,可以最大限度地保证调用到的内存块的物理地址与虚拟地址均是连续的,有效减少内存碎片,提高所述通信设备100的整体性能。
请参照图8,本实施例还提供一种内存预留装置110,所述装置包括:内存块排序模块111、内存块释放模块112及内存块重申请模块113。
所述内存块排序模块111用于在应用程序启动之前,获取用于预留给应用程序的多个内存块的物理地址,将所述多个内存块按照其对应的物理地址的大小关系进行排序。
具体地,所述内存块排序模块111获取用于预留给应用程序的多个内存块的物理地址的方式,包括:
根据预设配置信息获取需要预留给应用程序的内存块的数量以及每个内存块的大小;
根据所述内存块的数量及内存块的大小进行内存块申请,获取申请到的多个内存块的物理地址。
所述内存块释放模块112用于将排序后的所述多个内存块按照其对应的物理地址从大到小的顺序逐一释放。
所述内存块重申请模块113用于将释放后的所述多个内存块逐一重新申请,并记录重新申请后的所述多个内存块的物理地址与虚拟地址的对应关系。
具体地,所述内存块为按照大页hugepage机制申请的物理内存块。
进一步地,请参照图9,所述装置还包括内存块合并模块114.
所述内存块合并模块114用于遍历记录有所述多个内存块的物理地址与虚拟地址的内存块信息表,将所述多个内存块中所述物理地址与对应虚拟地址均连续的内存块合并为新的内存块,在所述内存块信息表中记录合并后的新的内存块的物理地址及虚拟地址。
进一步地,请再次参照图9,所述装置还包括内存块信息发送模块115。
所述内存块信息发送模块115用于将所述内存块信息表中的内存块的信息发送给系统的内存管理单元,进行应用程序对所述内存块的调用。
综上所述,本发明提供的内存预留方法及装置,通过在用户态应用程序运行之前,对系统为用户态应用程序申请的多个内存块按照递增或递减的顺序逐一释放后重新申请,使得重新申请后的所述多个内存块的物理地址与虚拟地址均连续。如此,可以有效减少内存块合并过程中的内存碎片,提高内存性能,减小CPU的负载。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以应用程序功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以应用程序产品的形式体现出来,该计算机应用程序产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种内存预留方法,其特征在于,所述方法包括:
在应用程序启动之前,获取用于预留给应用程序的多个内存块的物理地址,将所述多个内存块按照其对应的物理地址的大小关系进行排序;
将排序后的所述多个内存块按照其对应的物理地址从大到小的顺序逐一释放;
将释放后的所述多个内存块逐一重新申请,并记录重新申请后的所述多个内存块的物理地址与虚拟地址的对应关系。
2.根据权利要求1所述的方法,其特征在于,所述获取用于预留给应用程序的多个内存块的物理地址的方式,包括:
根据预设配置信息获取需要预留给应用程序的内存块的预设数量以及每个内存块的预设大小;
根据所述内存块的预设数量及内存块的预设大小进行内存块申请,获取申请到的多个内存块的物理地址。
3.根据权利要求1或2所述的方法,其特征在于,所述内存块为按照大页hugepage机制申请的物理内存块。
4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
遍历记录有所述多个内存块的物理地址与对应虚拟地址的内存块信息表,将所述多个内存块中所述物理地址与对应虚拟地址均连续的内存块合并为新的内存块,在所述内存块信息表中记录合并后的新的内存块的物理地址及虚拟地址。
5.根据权利要求4所述的方法,其特征在于,所述将所述物理地址与对应虚拟地址均连续的内存块合并为新的内存块,记录合并后的新的内存块的物理地址及虚拟地址的步骤之后,所述方法还包括:
将所述内存块信息表中的内存块的信息发送给系统的内存管理单元,进行应用程序对所述内存块的调用。
6.一种内存预留装置,其特征在于,所述装置包括:
内存块排序模块,用于在应用程序启动之前,获取用于预留给应用程序的多个内存块的物理地址,将所述多个内存块按照其对应的物理地址的大小关系进行排序;
内存块释放模块,用于将排序后的所述多个内存块按照其对应的物理地址从大到小的顺序逐一释放;
内存块重申请模块,用于将释放后的所述多个内存块逐一重新申请,并记录重新申请后的所述多个内存块的物理地址与虚拟地址的对应关系。
7.根据权利要求6所述的装置,其特征在于,所述内存块排序模块获取用于预留给应用程序的多个内存块的物理地址的方式,包括:
根据预设配置信息获取需要预留给应用程序的内存块的数量以及每个内存块的大小;
根据所述内存块的数量及内存块的大小进行内存块申请,获取申请到的多个内存块的物理地址。
8.根据权利要求6或7所述的装置,其特征在于,所述内存块为按照大页hugepage机制申请的物理内存块。
9.根据权利要求6或7所述的装置,其特征在于,所述装置还包括:
内存块合并模块,用于遍历记录有所述多个内存块的物理地址与对应虚拟地址的内存块信息表,将所述多个内存块中所述物理地址与对应虚拟地址均连续的内存块合并为新的内存块,在所述内存块信息表中记录合并后的新的内存块的物理地址及虚拟地址。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
内存块信息发送模块,用于将所述内存块信息表中的内存块的信息发送给系统的内存管理单元,进行应用程序对所述内存块的调用。
CN201611035635.0A 2016-11-22 2016-11-22 内存预留方法及装置 Active CN106708752B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611035635.0A CN106708752B (zh) 2016-11-22 2016-11-22 内存预留方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611035635.0A CN106708752B (zh) 2016-11-22 2016-11-22 内存预留方法及装置

Publications (2)

Publication Number Publication Date
CN106708752A true CN106708752A (zh) 2017-05-24
CN106708752B CN106708752B (zh) 2019-09-13

Family

ID=58941283

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611035635.0A Active CN106708752B (zh) 2016-11-22 2016-11-22 内存预留方法及装置

Country Status (1)

Country Link
CN (1) CN106708752B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108446178A (zh) * 2018-03-05 2018-08-24 北京小米移动软件有限公司 优化卡顿的方法及装置
CN108491334A (zh) * 2018-03-08 2018-09-04 北京东土科技股份有限公司 一种嵌入式实时系统的物理内存管理方法及装置
CN108829523A (zh) * 2018-06-26 2018-11-16 迈普通信技术股份有限公司 内存资源分配方法、装置、电子设备及可读存储介质
CN109542798A (zh) * 2018-10-30 2019-03-29 歌尔股份有限公司 一种动态分配物理地址的方法、装置及电子设备
CN112905497A (zh) * 2021-02-20 2021-06-04 迈普通信技术股份有限公司 内存管理方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7478119B2 (en) * 2006-07-03 2009-01-13 Sun Microsystems, Inc. System and method for transposing memory patterns within the physical memory space
CN101546292A (zh) * 2008-03-25 2009-09-30 北京恒光创新科技股份有限公司 一种内存存取方法及装置
CN101853210A (zh) * 2010-05-25 2010-10-06 惠州华阳通用电子有限公司 一种内存管理方法及装置
CN103970680A (zh) * 2014-04-28 2014-08-06 上海华为技术有限公司 内存管理方法、装置及嵌入式系统
CN105893269A (zh) * 2016-03-31 2016-08-24 武汉虹信技术服务有限责任公司 一种Linux系统下内存管理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7478119B2 (en) * 2006-07-03 2009-01-13 Sun Microsystems, Inc. System and method for transposing memory patterns within the physical memory space
CN101546292A (zh) * 2008-03-25 2009-09-30 北京恒光创新科技股份有限公司 一种内存存取方法及装置
CN101853210A (zh) * 2010-05-25 2010-10-06 惠州华阳通用电子有限公司 一种内存管理方法及装置
CN103970680A (zh) * 2014-04-28 2014-08-06 上海华为技术有限公司 内存管理方法、装置及嵌入式系统
CN105893269A (zh) * 2016-03-31 2016-08-24 武汉虹信技术服务有限责任公司 一种Linux系统下内存管理方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108446178A (zh) * 2018-03-05 2018-08-24 北京小米移动软件有限公司 优化卡顿的方法及装置
CN108491334A (zh) * 2018-03-08 2018-09-04 北京东土科技股份有限公司 一种嵌入式实时系统的物理内存管理方法及装置
CN108491334B (zh) * 2018-03-08 2020-10-23 北京东土科技股份有限公司 一种嵌入式实时系统的物理内存管理方法及装置
CN108829523A (zh) * 2018-06-26 2018-11-16 迈普通信技术股份有限公司 内存资源分配方法、装置、电子设备及可读存储介质
CN109542798A (zh) * 2018-10-30 2019-03-29 歌尔股份有限公司 一种动态分配物理地址的方法、装置及电子设备
CN109542798B (zh) * 2018-10-30 2020-11-24 潍坊歌尔微电子有限公司 一种动态分配物理地址的方法、装置及电子设备
CN112905497A (zh) * 2021-02-20 2021-06-04 迈普通信技术股份有限公司 内存管理方法、装置、电子设备及存储介质
CN112905497B (zh) * 2021-02-20 2022-04-22 迈普通信技术股份有限公司 内存管理方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN106708752B (zh) 2019-09-13

Similar Documents

Publication Publication Date Title
CN106708752A (zh) 内存预留方法及装置
US10013364B1 (en) Securing data using per tenant encryption keys
ES2642218T3 (es) Controlador, aparato de memoria flash y procedimiento para escribir datos en aparato de memoria flash
US10120751B2 (en) Techniques to recover data using exclusive OR (XOR) parity information
CN101465164B (zh) 一种擦除数据的方法、装置及系统
DE102015205396A1 (de) Speichersystem und Verfahren zum Durchführen und Authentifizieren eines Schreibschutzes für dieses
DE112016004330T5 (de) Prozessoren, Verfahren, Systeme und Befehle zum Zulassen sicherer Kommunikationen zwischen einem geschützten Containerspeicher und Eingabe-/Ausgabegeräten
DE102018125747A1 (de) Unterstützung für eine höhere anzahl von gleichzeitigenschlüsseln in einer kryptografie-engine mit mehrerenschlüsseln
DE102018129976A1 (de) System und Verfahren zur Überprüfung einer sicheren Löschoperation an einer Speichervorrichtung
WO2016048599A1 (en) Caching technologies employing data compression
CN104503708A (zh) 数据散列存储的方法及装置
CN104571956A (zh) 一种数据写入方法及拆分装置
WO2024113726A1 (zh) 一种磁盘阵列重构任务加速方法、系统、存储介质及设备
EP2919120A1 (en) Memory monitoring method and related device
CN104461737A (zh) 一种内存管理方法和装置
CN104468240A (zh) 云终端管理方法、装置
JP4308152B2 (ja) メモリを予約するための方法、システム、および製品
CN107003882B (zh) 用于转换高速缓存闭包和持久快照的方法、系统和装置
CN104767761A (zh) 一种云存储平台访问控制方法及装置
CN114327917A (zh) 内存管理方法、计算设备及可读存储介质
DE112013001108B4 (de) Ein verfahren, eine vorrichtung, ein controller, ein computerprogramm und ein computerprogrammprodukt zum schreiben von neuen daten einer ersten blockgrösse in eine zweite blockgrösse, wobei ein write-write-modus verwendet wird
DE112005002372T5 (de) Implementieren von pufferlosen DMA Controllern unter Verwendung von aufgeteilten Transaktionen
CN108304222A (zh) 设备管控系统及方法
CN108628761B (zh) 原子命令执行方法与装置
CN105205409A (zh) 一种防止内存复用中数据泄露的方法及计算机系统

Legal Events

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