CN105103138A - 用于实时应用的嵌入式存储器管理方案 - Google Patents
用于实时应用的嵌入式存储器管理方案 Download PDFInfo
- Publication number
- CN105103138A CN105103138A CN201480019761.XA CN201480019761A CN105103138A CN 105103138 A CN105103138 A CN 105103138A CN 201480019761 A CN201480019761 A CN 201480019761A CN 105103138 A CN105103138 A CN 105103138A
- Authority
- CN
- China
- Prior art keywords
- memory devices
- memory
- program
- type
- processor
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Memory System (AREA)
- Stored Programmes (AREA)
- Multi Processors (AREA)
Abstract
存储器在嵌入式计算机系统中被动态地共享或分配。首先确定作为该系统的一部分的存储器的类型。其后,确定可用于供使用的存储器的量。根据所需要的空间的量来确定由程序或应用所需要的存储器的类型。如果在第一类型的所请求的存储器中可以被分配给程序的存储器空间的量大于或至少等于由计算机程序所需要的存储器空间的量,那么该程序被加载到可用存储器中。如果所请求类型的储器不可用或者没有足够的所请求的存储器可用,如果在其他类型的存储器设备中的一个或多个中存在充足的空间,则考虑和使用该其他类型的存储器设备。
Description
背景技术
如本文中所使用的,术语“嵌入式系统”指的是计算机系统,其被设计为在另一个且通常更大的系统内或为该另一个且通常更大的系统执行控制功能。因为这样的计算机系统通常是更大的系统的组成部分,因此它被称为被“嵌入”该更大的系统中。例如,控制车辆“信息娱乐(infotainment)”系统的各种部件的计算机系统在本文被认为是嵌入式系统。控制手机的部件的计算机系统在本文被认为是嵌入式系统。另一方面,诸如个人计算机或“PC”之类的并且没有连接到更大的系统或形成更大的系统的一部分的通用计算机并不是嵌入式系统。
需要许多嵌入式系统能够同时或本质上同时运行许多不同类型的应用或程序。许多嵌入式系统也采用不同类型的物理存储器设备来降低成本却优化具有相应不同的重要性水平的不同程序的执行。这样的系统可能使用的存储器设备的类型可以包括IRAM(内部RAM,其位于与处理器相同的半导体管芯上)和外部RAM设备(诸如DDR1、DDR2、SDRAM、闪存(FLASH)或甚至硬盘驱动器)。
每种类型的RAM将具有不同的访问时间,即可以将数据写入到设备中的位置以及从设备中的位置读取数据的速率。IRAM经常是最快的,这是由于其中的位置是在与CPU相同的时钟速率下可访问的。另一方面,闪速RAM经常是最慢的。
需要将数据写入到不同类型的RAM设备以及从不同类型的RAM设备读取数据的CPU时钟周期的数量可以变成对将运行在嵌入式计算机系统上的程序(即嵌入式应用)将实际上如何在该系统上执行的关键贡献因素(contributor)。因为相对快的RAM设备经常是比相对慢速的RAM设备更昂贵的,很多嵌入式计算机系统被设计为通过使用相对小量的快速RAM与更大量的慢速RAM相结合来降低成本,其示例包括SDRAM和闪速存储器。
在不得不运行不同程序的嵌入式系统中,需要被快速执行的程序经常一直分配数据到快速存储器设备中,该快速存储器设备的示例是在与CPU或处理器相同的半导体管芯上的存储器设备和位置。不太重要的程序或不需要被快速执行的那些程序通常一直分配数据到相对慢速的存储器设备中,该相对慢速的存储器设备通常是CPU或处理器外部的存储器设备或者是使用固有更慢的技术所制成的。所谓的DDR-2存储器设备具有更短的访问时间以及因此比SDRAM设备更快。SDRAM设备可以具有更短的访问时间以及因此可以比配置和操作为随机访问存储器的磁盘(即硬盘驱动器)更快。
对可用于存储用于具有不同执行优先级的不同程序的程序数据的不同类型的存储器设备进行最优共享可能是对于嵌入式计算机系统而言至关重要的任务。随着嵌入式计算机系统必须执行的任务的数量增加,存储器空间的最优使用变得更为关键。
图1是现有技术嵌入式计算机系统100的简化的框图。使用对于半导体领域中的普通技术人员众所周知的技术来将半导体基板102形成为具有中央处理单元或CPU104和若干可单独寻址的随机访问存储器(RAM)位置106。为了说明的目的,芯片上RAM106位置的地址被示出从零到一千(十进制)编号。DDR-2随机访问存储器(RAM)设备108和SDRAM设备110在管芯102的外部但经由相同的常规总线112来访问。总线112也将CPU104耦合到需要CPU104来控制的各种不同外围设备114。
因为芯片上RAM位置106处于与CPU104相同的半导体管芯102上以及当然地比其他外部存储器设备108、110更接近于CPU104,CPU104能够在比CPU104访问CPU104外部的存储器设备(即DDR2108和SRAM110)所花费的时间明显更少的时间内访问芯片上存储器位置106。需要被快速访问的程序因此优选地被存储在芯片上RAM位置106中以及从芯片上RAM位置106执行。
本领域普通技术人员知道由CPU104控制的不同外围设备114可能需要来自CPU104的不同响应度。在现有技术中,当写入计算机程序以控制特定外围设备114时,该程序可以被写入为包括编译器命令或“编译指示(pragma)”,其在被编译时将实施存储器映射,该存储器映射将指导存储器管理器114在存储器中在何处加载数据段。这样的编译器命令通常被称为存储器分配函数或(malloc(arg)),其中变元(argument)指定存储器设备的大小和类型两者,其中随后的程序指令将由存储器管理器114来加载。
在以下语句(1)、(2)和(3)中,性能关键存储器和性能非关键存储器由编译器通过使用相同的存储器分配(malloc)函数但改变函数的变元来分配。对应的数据分配将被加载到相应不同的物理存储器设备中。
pSlow=malloc(sizeof(rtSlowArray));(l)
pFast=malloc(sizeof(rtFastArray));(2)
pSlow2=malloc(sizeof(nrtSlowArray));(3)
其中pSlow、pFast和pSlow2是在存储器设备中的地址或指向位置的指针。为了说明的目的,“rtSlowArray”生成存储器的相对慢速或非实时的块的分配,其将适合于不需要CPU密集计算的程序。变元“rtFastArray”生成快速存储器的分配,其将适合于需要CPU密集计算的程序。变元“nrtSlowArray”将生成慢速存储器的分配,其将适合于非实时应用。遗憾的是,当编译器命令需要特定程序被加载到特定类型的存储器设备中时,用于该程序的空间必须在编译器指导的存储器设备中是可用的,否则被该程序请求的数据段将不被系统的存储器管理器114加载。
图2是现有技术方法的流程图,通过该方法,用于嵌入式计算机系统100的现有技术存储器管理器114响应于存储器函数malloc来为程序分配存储器空间。在图2中示出的方法200是十分简单的。当由malloc函数生成的指令被执行时,在步骤202处这些指令有效地询问存储器管理器114以确定所需大小的存储器块是否可用于供默认存储器设备(通常是SDRAM)中的特定程序所使用。如果所需存储器大小是可用的,在步骤204处该存储器被分配以及在步骤206处返回指向开始位置的指针。如果所需的空间大小在所需的默认存储器设备中不是可用的,则由程序请求的数据段将不会被加载;它将不会被运行。
为了保证程序将被加载,因此必须提供充足量的存储器。明智的系统设计者或集成者必须因此提供足够的各种类型的存储器以便能够适应理论上可能被同时运行的所有程序,即使这样的要求也许从来不会发生。
如果有可能在嵌入式系统的不同物理设备中动态地分配存储器,可以避免对于提供也许从不会被需要的高速存储器的成本。下述方法和装置因此将是相比现有技术的改进:通过该方法和装置,快速存储器可以被需要快速响应的可执行程序有效地共享。
发明内容
依照本发明实施例,在嵌入式计算机系统中动态地共享或分配存储器。首先确定作为该系统的一部分的存储器的类型。其后,确定可用于供使用的存储器的量。根据所需要的空间的量来确定由程序或应用所需要的存储器的类型。如果在第一类型的所请求的存储器中可以被分配给程序的存储器空间的量大于或至少等于由计算机程序所需要的存储器空间的量,那么该程序被加载到可用存储器中。如果所请求类型的储器不可用或者没有足够的所请求的存储器可用,如果在其他类型的存储器设备中的一个或多个中存在充足的空间,则考虑和使用该其他类型的存储器设备。
附图说明
图1是表示具有不同类型的存储器设备的嵌入式计算机系统的框图,所述不同类型的存储器设备具有相应不同的访问时间,所述不同类型的存储器设备存储控制耦合到计算机系统的不同外围设备的程序;
图2是图示了现有技术存储器分配方法的流程图;
图3是图示了动态存储器分配方法的步骤的流程图;
图4是具有动态存储器管理器的嵌入式计算机系统的框图;以及
图5是动态存储器管理器的框图。
具体实施方式
当高速存储器变得可用时,在高速存储器设备中的高速存储器位置可以被重新使用并且在不同嵌入式应用之间共享。用于实时应用程序的嵌入式存储器管理方案是使用动态存储器分配来完成的。动态存储器分配是通过以下来是实现的:使用动态存储器管理器以及控制该管理器首先确定对于分配到程序的可用的存储器设备的类型和对于在每个类型的存储器设备中分配可用的空间的量。当实时程序被调用或者被嵌入式系统或不同的外围设备所需要时,动态存储器管理器确定将由特定计算机程序所需要的存储器设备的类型和由该程序需要的存储器空间的量。还确定在该程序所需要的特定类型的存储器设备中实际上可用且可以被分配给用于供计算机程序所使用的程序的空间。如果在特定类型的存储器设备中可以被分配给特定程序的存储器空间的量大于或等于由计算机程序所需要的存储器空间的量,则动态存储器管理器将由程序所请求的计算机数据加载到所需要类型的存储器设备中以及使计算机或CPU能够使用来自该存储器设备的数据来执行该程序。
和在现有技术嵌入式系统中使用的静态存储器分配不同,本文公开的装置和方法可以动态地将数据段分配给最佳存储器设备以便向系统或外围设备提供服务来最好地服务于基于程序的关键程度的需求。
如果由特定程序所需要的特定类型的存储器设备中可用的存储器空间的量小于由计算机程序所需要的存储器空间的量,则动态存储器管理器继续确定在更慢的或第二类型的存储器设备中可用的空间。如果在更慢的第二类型的存储器设备中可用的存储器空间的量大于或等于在更快类型的存储器设备中由计算机程序所需要的存储器空间的量,则动态存储器管理器加载程序或允许程序使用来自第二类型存储器设备的数据。然后可以至少使用稍微更慢的第二类型的存储器设备来执行该程序。
图3是描绘了在嵌入式计算机系统中管理存储器以使得实时应用(程序)能够共享它们需要的存储器设备的类型以及可能消除或降低实际需求的高速存储器的量的方案或方法的流程图。在图3中描绘的“emalloc”函数301的语法与现有技术malloc函数的语法略有不同。和在图2中描绘的malloc方法步骤不同,在步骤302处,动态存储器管理器(诸如在图4中示出的那一个)首先确定构成嵌入式系统的各种类型的存储器设备。在步骤302处执行的确定优选地被实现为简单地读取(典型地存储在存储器中的)表格中的条目。
在步骤302处确定可用存储器设备的类型之后,在步骤304处,确定在emalloc变元中请求的特定类型的设备中的未被使用且因此可用于供程序所使用的位置,并且将其与在emalloc变元(即在emalloc变元中的“大小”参数)中所需要的存储器的量相比较。
如果在emalloc变元中指定的存储器的量是在emalloc变元中指定的存储器设备的类型中可用的,则依靠emalloc编译器命令由程序所请求的存储器分配由动态存储器管理器来分配。在步骤308处,在特定类型的设备中程序请求存储块的地址被返回。然后加载该程序并且从该存储器设备执行该程序。
仍然参考图3,存储器管理方案与现有技术不同的是,如果在步骤304处执行的测试失败,即在所请求类型的设备中可用的存储器是不充足的或者所请求的存储器类型在系统中不存在,则该方法继续进行到步骤310,在那里做出是否可能存在可用的其他类型存储器的确定,程序可以被加载到所述可用的其他类型存储器中并且在其中被执行。如果存在其他类型的存储器,步骤312、302和304确定所请求的存储器的量是否可以被加载到次最佳类型的存储器设备(通常是次最快类型的存储器)中。如果不存在其他存储器设备,方法300在步骤314处失败并且返回空指针,其指示程序不能够被加载到任何存储器中。
图4是配置有动态存储器管理器402的嵌入式计算机系统400的框图,所述动态存储器管理器402被配置成执行在图3中所描绘且在以上所描述的步骤。
可以以软件或硬件来实现的动态存储器管理器402经由常规总线412操作地耦合到CPU404和存储器设备406、408和410。各种外围设备414也经由总线412耦合到CPU404。
图5是动态存储器管理器500的框图。处理器或CPU502耦合到一个或多个非临时性存储器设备504,诸如是上文所描述的存储器设备并且其存储可以被处理器/CPU502执行的程序指令506、508。当执行指令时,这些指令使处理器/CPU502来实行图3中描绘的且在上文描述的步骤。
如本文中所使用的,总线被认为是在计算机系统中电气并联的导线的集合,其形成用于控制信号、地址信息和数据的传输路径。在图5中,常规的地址/数据/控制总线502。总线510使处理器/CPU能够与各种外围设备进行通信,各种外围设备为了简洁起见在图5中被省略。
前述描述是为了说明目的。本发明的真实范围在随附的权利要求中被阐述。
Claims (9)
1.一种将要由处理器执行的计算机程序的数据段分配给从位于耦合到处理器的多个不同类型的可用存储器设备中的多个区域中选择的存储器区域的方法,该方法包括:
确定要由计算机程序使用的第一类型的存储器设备;
确定由计算机程序所需要的存储器空间的量;
确定在第一类型的存储器设备中可用的空间,所述空间能够被分配以供计算机程序所使用;
如果在第一类型的存储器设备中能够被分配给第一程序的存储器空间的量大于或等于由计算机程序所需要的存储器空间的量,则将计算机程序加载到第一类型的存储器设备中;以及
使用来自第一类型的存储器设备的数据段来执行所述计算机程序。
2.根据权利要求1所述的方法,进一步包括:确定耦合到处理器的不同类型的存储器设备。
3.根据权利要求2所述的方法,其中多个不同类型的存储器设备耦合到处理器,该方法进一步包括:
如果在第一类型的存储器设备中可用的存储器空间的量小于由计算机程序所需要的存储器空间的量,则确定在第二类型的存储器设备中可用的空间以供程序使用;
如果在第二类型的存储器设备中可用的存储器空间的量大于或等于由计算机程序所需要的存储器空间的量,则将该程序加载到第二类型的存储器设备中;以及
使用来自第二类型的存储器设备的数据段来执行该程序。
4.根据权利要求3所述的方法,其中第一类型的存储器设备比第二类型的存储器设备更快。
5.一种用于动态地将存储器分配给非临时性存储器设备的存储器管理器,该存储器管理器包括:
存储器类型确定器,其耦合到第一和第二不同类型的存储器设备,该存储器类型确定器被配置成确定其所耦合到的存储器设备的类型并且确定在每个类型的存储器设备中的程序可使用空间;以及
存储器大小分配器,其被配置成响应于由程序进行的用以在特定类型的存储器设备中分配第一程序可使用空间的请求来在所述特定类型的存储器设备中分配所述第一程序可使用空间。
6.根据权利要求1所述的存储器管理器,其中所述存储器类型确定器和存储器大小分配器包括:
处理器;以及
存储器设备,其耦合到该处理器并且存储程序指令,所述程序指令当被执行时使该处理器:
确定处理器所耦合到的存储器设备的类型;以及
响应于由在处理器上运行的程序进行的请求来在耦合到处理器的特定类型的存储器设备中分配程序可使用空间。
7.根据权利要求2所述的存储器管理器,其中该处理器包括实时控制系统。
8.根据权利要求3所述的存储器管理器,其中该处理器操作地耦合到由处理器控制的多个外围设备。
9.根据权利要求1所述的存储器管理器,其中第一类型的存储器设备比第二类型的存储器设备更快。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361809031P | 2013-04-05 | 2013-04-05 | |
US61/809031 | 2013-04-05 | ||
PCT/US2014/032529 WO2014165514A1 (en) | 2013-04-05 | 2014-04-01 | Embedded memory management scheme for real-time applications |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105103138A true CN105103138A (zh) | 2015-11-25 |
CN105103138B CN105103138B (zh) | 2018-11-16 |
Family
ID=49119031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480019761.XA Active CN105103138B (zh) | 2013-04-05 | 2014-04-01 | 用于实时应用的嵌入式存储器管理方案 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10901883B2 (zh) |
CN (1) | CN105103138B (zh) |
DE (1) | DE112014001815T5 (zh) |
GB (1) | GB2516435A (zh) |
WO (1) | WO2014165514A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107302505A (zh) * | 2017-06-22 | 2017-10-27 | 迈普通信技术股份有限公司 | 管理缓存的方法及装置 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10599353B2 (en) | 2017-05-16 | 2020-03-24 | Apple Inc. | Techniques for managing storage space allocation within a storage device |
US10368128B2 (en) * | 2017-08-11 | 2019-07-30 | Microsoft Technology Licensing, Llc | Memory allocation type for media buffer |
CN118284881A (zh) * | 2021-11-24 | 2024-07-02 | 大众汽车股份公司 | 用于组织对车辆的共享内存的访问的计算机实现的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070180203A1 (en) * | 2006-02-01 | 2007-08-02 | Madhusudhan Ramgarajan | Optimizing system performance in flexible interleaving memory mode |
CN101174245A (zh) * | 2006-11-02 | 2008-05-07 | 国际商业机器公司 | 混合数据存储的方法和装置 |
CN101611387A (zh) * | 2007-01-10 | 2009-12-23 | 移动半导体公司 | 用于增强外部计算设备的性能的自适应存储系统 |
CN101739273A (zh) * | 2008-11-24 | 2010-06-16 | 联发科技股份有限公司 | 存储器共享方法 |
CN102508787A (zh) * | 2011-11-29 | 2012-06-20 | 清华大学 | 混合结构内存的内存分配系统及方法 |
CN102667739A (zh) * | 2010-01-13 | 2012-09-12 | 株式会社东芝 | 存储装置管理装置及用于管理存储装置的方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5008805A (en) * | 1989-08-03 | 1991-04-16 | International Business Machines Corporation | Real time, fail safe process control system and method |
US5875464A (en) * | 1991-12-10 | 1999-02-23 | International Business Machines Corporation | Computer system with private and shared partitions in cache |
US7007049B2 (en) * | 2002-11-18 | 2006-02-28 | Innopath Software, Inc. | Device memory management during electronic file updating |
US7222224B2 (en) * | 2004-05-21 | 2007-05-22 | Rambus Inc. | System and method for improving performance in computer memory systems supporting multiple memory access latencies |
JP2006127028A (ja) | 2004-10-27 | 2006-05-18 | Hitachi Ltd | 記憶システム及び記憶制御装置 |
US7529903B2 (en) * | 2005-07-05 | 2009-05-05 | International Business Machines Corporation | Systems and methods for memory migration |
US7707379B2 (en) * | 2006-07-13 | 2010-04-27 | International Business Machines Corporation | Dynamic latency map for memory optimization |
US7681201B2 (en) * | 2006-08-04 | 2010-03-16 | Lectronix | Method and system for integrating and controlling components and subsystems |
US8718087B1 (en) * | 2006-10-24 | 2014-05-06 | Marvell International Ltd. | Processing architecture for passive optical network |
US20080196030A1 (en) * | 2007-02-13 | 2008-08-14 | Buros William M | Optimizing memory accesses for multi-threaded programs in a non-uniform memory access (numa) system |
US7685409B2 (en) * | 2007-02-21 | 2010-03-23 | Qualcomm Incorporated | On-demand multi-thread multimedia processor |
WO2011054884A1 (en) * | 2009-11-04 | 2011-05-12 | St-Ericsson (France) Sas | Dynamic management of random access memory |
US8321703B2 (en) * | 2009-12-12 | 2012-11-27 | Microsoft Corporation | Power aware memory allocation |
US20110161597A1 (en) * | 2009-12-30 | 2011-06-30 | International Business Machines Corporation | Combined Memory Including a Logical Partition in a Storage Memory Accessed Through an IO Controller |
CN102667725B (zh) * | 2010-01-13 | 2015-09-16 | 马维尔以色列(M.I.S.L.)有限公司 | 用于媒体处理的硬件虚拟化 |
JP5516744B2 (ja) * | 2010-08-27 | 2014-06-11 | 富士通株式会社 | スケジューラ、マルチコアプロセッサシステムおよびスケジューリング方法 |
EP2700021A4 (en) * | 2011-04-19 | 2016-07-20 | Seven Networks Llc | MANAGEMENT OF COMMON RESOURCES AND VIRTUAL RESOURCES IN A NETWORKED ENVIRONMENT |
US20140215177A1 (en) * | 2012-08-02 | 2014-07-31 | Boo Jin Kim | Methods and Systems for Managing Heterogeneous Memories |
US9600413B2 (en) * | 2013-12-24 | 2017-03-21 | Intel Corporation | Common platform for one-level memory architecture and two-level memory architecture |
-
2013
- 2013-07-19 GB GB1312999.4A patent/GB2516435A/en not_active Withdrawn
-
2014
- 2014-04-01 CN CN201480019761.XA patent/CN105103138B/zh active Active
- 2014-04-01 WO PCT/US2014/032529 patent/WO2014165514A1/en active Application Filing
- 2014-04-01 DE DE112014001815.5T patent/DE112014001815T5/de active Pending
- 2014-04-03 US US14/244,387 patent/US10901883B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070180203A1 (en) * | 2006-02-01 | 2007-08-02 | Madhusudhan Ramgarajan | Optimizing system performance in flexible interleaving memory mode |
CN101174245A (zh) * | 2006-11-02 | 2008-05-07 | 国际商业机器公司 | 混合数据存储的方法和装置 |
CN101611387A (zh) * | 2007-01-10 | 2009-12-23 | 移动半导体公司 | 用于增强外部计算设备的性能的自适应存储系统 |
CN101739273A (zh) * | 2008-11-24 | 2010-06-16 | 联发科技股份有限公司 | 存储器共享方法 |
CN102667739A (zh) * | 2010-01-13 | 2012-09-12 | 株式会社东芝 | 存储装置管理装置及用于管理存储装置的方法 |
CN102508787A (zh) * | 2011-11-29 | 2012-06-20 | 清华大学 | 混合结构内存的内存分配系统及方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107302505A (zh) * | 2017-06-22 | 2017-10-27 | 迈普通信技术股份有限公司 | 管理缓存的方法及装置 |
CN107302505B (zh) * | 2017-06-22 | 2019-10-29 | 迈普通信技术股份有限公司 | 管理缓存的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
DE112014001815T5 (de) | 2015-12-17 |
GB2516435A (en) | 2015-01-28 |
US20140304485A1 (en) | 2014-10-09 |
GB201312999D0 (en) | 2013-09-04 |
WO2014165514A1 (en) | 2014-10-09 |
CN105103138B (zh) | 2018-11-16 |
US10901883B2 (en) | 2021-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9959337B2 (en) | Independent data processing environments within a big data cluster system | |
CN111104208B (zh) | 进程调度管理方法、装置、计算机设备及存储介质 | |
US8645642B2 (en) | Tracking dynamic memory reallocation using a single storage address configuration table | |
US10079916B2 (en) | Register files for I/O packet compression | |
US20200110639A1 (en) | Memory allocator | |
US8560767B2 (en) | Optimizing EDRAM refresh rates in a high performance cache architecture | |
KR20180007374A (ko) | 메모리 채널의 소프트웨어 트레이닝을 수행하는 전자 장치 및 그것의 메모리 채널 트레이닝 방법 | |
CN113127177B (zh) | 处理装置及分布式处理系统 | |
US8560803B2 (en) | Dynamic cache queue allocation based on destination availability | |
JP2023503024A (ja) | マルチコア・プロセッサ複合体の中の1コア当たりのスレッドの最適数の決定 | |
JP2019133391A (ja) | メモリシステムおよび制御方法 | |
CN104346293A (zh) | 混合内存的数据访问方法、模块、处理器及终端设备 | |
CN105103138A (zh) | 用于实时应用的嵌入式存储器管理方案 | |
EP3353664B1 (en) | Method and apparatus for pinning memory pages in a multi-level system memory | |
US20130176323A1 (en) | Method and apparatus for graphic processing using multi-threading | |
US20140351550A1 (en) | Memory management apparatus and method for threads of data distribution service middleware | |
EP3188028B1 (en) | Buffer management method and apparatus | |
US20140289739A1 (en) | Allocating and sharing a data object among program instances | |
JP2005209206A (ja) | マルチプロセッサシステムにおけるデータ転送方法、マルチプロセッサシステム、及び、この方法を実施するプロセッサ | |
CN109308167B (zh) | 用于跟踪写入请求的设备和系统、以及控制器的方法 | |
TW202119215A (zh) | 共用代碼之系統與代碼共用方法 | |
US12118394B2 (en) | Method and apparatus for memory integrated management of cluster system | |
KR101916645B1 (ko) | 마스터 버스의 우선순위를 고려한 메모리 제어 방법 | |
KR20230085104A (ko) | 예측 가능한 경성 실시간 최악 수행시간을 가진 메모리 제어기 및 이의 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |