用于管理存储器的方法和设备的制造方法

xiaoxiao2020-10-23  20

用于管理存储器的方法和设备的制造方法
【技术领域】
[0001]本公开总体上涉及一种用于管理终端中的存储器的方法和设备,更具体地讲,涉及一种能够快速恢复终端中的存储器的区域的存储器管理方法和设备。
【背景技术】
[0002]系统中的一些功能单元会需要分配物理上连续的存储缓冲器。例如,对于直接存储器访问(DMA),一些硬件始终需要物理上连续的存储缓冲器。虽然甚至存在配备有用于处理分散/集中DMA功能的硬件的功能单元,但是配备有低成本的DMA引擎的硬件会非常普遍地需要物理上连续的存储器。
[0003]这种硬件可包括相机、视频编码器/解码器(编解码器)等。具体地讲,最新的全高清(HD)视频帧具有大约2兆像素或更高的分辨率,并且需要大约6兆字节(MB)的存储器来处理全HD视频帧。这些硬件模块因高昂的制造成本而配备有简单的DMA引擎,因此这些硬件模块必需需要物理上连续的存储器来进行它们的操作。
[0004]然而,物理上连续的存储器的分配因由操作系统(OS)使用的存储器的管理性质而不能始终得以保证。OS将物理地址空间划分为小的单元的页帧,以进行管理。该方法在将逻辑上连续的存储器空间提供给OS驱动或实现的处理方面不存在问题。然而,在已经工作很长时间的终端的系统中,几乎不可能找到预定大小或更大的物理上连续的存储器空间。换言之,功能单元的驱动取决于物理存储器的碎片而不能得以保证。
[0005]这些问题对于电子装置(诸如终端)会是致命的,意味着终端的一些功能根据存储器分配是否成功而不会被驱动(即,使用)。这些不确定性是严重的问题,这是因为必须保证无论用户何时需要,可始终驱动电子装置的功能。
[0006]此外,一些功能单元需要分配特定存储器位置,或者对于功能单元,存储器的区域会需要按照预定规则被分配。因此,为了减少制造成本或为了便于开发,硬件设计者经常在设计中反映出这些限制。然而,这些限制使得物理上连续的存储器的分配更困难。
[0007]为了解决这些和其它问题,传统功能单元驱动器使用以下方式:在OS的初始驱动时,单独地保留需要的存储器区域。在OS的初始驱动时,可容易地获得物理上连续的存储器,这可使功能单元保留其操作所需的存储器区域,从而防止OS使用保留区域。该方法保证在功能单元被驱动时物理上连续的存储器的分配始终成功。因此,OS可仅使用除了由功能单元驱动器保留的存储器区域之外的区域,而存储器的保留区域可仅用于功能单元。“驱动功能单元”是指以将使功能单元访问或至少需要存储器(更具体地讲,针对所述功能单元分配/保留的存储器)的方式使用或请求功能单元的功能。“驱动”[功能单元]的另一表达可以是“使用”或“访问”[功能单元]。
[0008]图1示出包括保留区域和非保留区域的示例物理存储器。图1中的存储器具有针对视频编解码单元保留的区域101a、针对相机单元保留的区域1lb以及除了区域1la和区域1lb之外的非保留区域102,其中,OS可动态地分配非保留区域102。
[0009]然而,不合需要地,由于即使当保留区域的相关联的功能单元没有被驱动时OS也不能使用保留区域,因此存储器保留方法会造成存储器的浪费。例如,如果相机单元被激活的时间与装置的总使用时间的比率为10%或更小,则在90%或更多的相机单元没有被使用的剩余时间内,针对相机单元保留的区域根本不会被使用,从而造成存储器的浪费。
[0010]近年来,嵌入式系统将片上芯片(SoC)用作单个封装,其中,SoC是通过将多个功能单元集成为中央处理器(CPU)芯片而制造的。当嵌入在SoC中的功能单元(诸如视频编解码器)的类型和数量增加时,由于针对这些嵌入式硬件功能单元保留的存储器区域而浪费的存储器的量增加得越来越多,从而导致OS可使用的可用存储器的减少。为了补偿这些不足,广品可被配备有尚性能存储器,从而导致成本的提尚。
[0011]为了解决这些问题,本公开提供了以下方法:当具有保留存储器区域的功能单元没有被驱动时,所述保留存储器区域可被用作非保留区域,即,OS可使用的可用存储器区域。
[0012]如果在功能单元没有被驱动时将保留区域用作非保留区域时,被分配了保留存储器区域的功能单元被驱动,则OS丢弃存储在保留区域中的数据,从而如其原始目的那样,将保留区域提供或返还给功能单元。
[0013]丢弃存储在保留区域中的数据通常被称为“页迀移”。
[0014]有利地,该存储器管理技术可将针对几乎一直处于空闲状态的功能单元保留的区域用作通用目的,从而防止存储器的浪费,并增加对存储器资源的利用,进而对由于可用存储器区域的增加而带来的总体系统性能的提高做出贡献。

【发明内容】

[0015][技术问题]
[0016]然而,不合需要地,功能单元的驱动时间会因页迀移的负担而增加。
[0017]例如,如果针对相机单元保留的存储器区域被用作通用目的,则相机应用的驱动或执行可比之前延迟。现今的相机单元消耗大约10兆字节的存储器。对10兆字节的存储器空间执行页迀移会引起相机驱动时间的显著延迟。
[0018]上述信息仅被呈现为有助于本公开的理解的背景信息。对于任何上述内容是否可适用于针对本公开的现有技术,未做出任何确定,也未做出任何断言。
[0019][技术方案]
[0020]为了解决现有技术的上述缺陷,主要目的在于提供一种能够快速收回终端中的存储器的区域的存储器管理方法和设备。
[0021]本公开的另一方面在于提供一种能够在终端中以装置被驱动或启用的时间快速收回装置的保留区域的存储器管理方法和设备。
[0022]根据本公开的一个方面,提供一种用于管理终端中的存储器的方法,所述方法包括:如果分配了多个保留区域的功能单元没有被驱动,则将具有数据收回条件集中的数据收回条件的数据存储在所述多个保留区域中;如果功能单元被驱动,则基于数据收回条件集中的数据收回条件处理存储在所述多个保留区域中的一个保留区域中的数据,以恢复用于驱动功能单元的所述多个保留区域。
[0023]根据本公开的另一方面,提供一种用于管理终端中的存储器的方法。所述方法包括:如果分配了多个保留区域中的一个保留区域的功能单元没有被驱动,则以相应的功率单元的驱动频率的递减顺序,将数据存储在所述多个保留区域中的一个保留区域中,如果功能单元被驱动,则处理存储在所述多个保留区域中的一个保留区域中的数据,以恢复用于驱动功能单元的所述多个保留区域。
[0024]根据本公开的另一方面,提供一种用于管理终端中的存储器的设备。所述设备包括:视频编解码器,被驱动以进行视频记录或视频回放,且存储器具有针对所述视频编解码器的用于视频编解码器的保留区域;相机单元,被驱动以执行用于图像捕捉或视频记录的预览功能,且存储器针对所述相机单元而具有用于相机单元的保留区域;存储器包括多个保留区域和多个非保留区域,其中,如果与所述多个保留区域相应的功能单元没有被驱动,则将与针对所述多个保留区域中的每个保留区域设置的数据收回条件相应的数据存储在所述多个保留区域中,如果功能单元被驱动,则根据针对所述多个保留区域中的每个设置的数据收回条件处理存储在所述多个保留区域中的每个保留区域中的数据,以恢复用于驱动功能单元的所述多个保留区域。
[0025]根据本公开的另一方面,提供一种用于管理终端中的存储器的设备。所述设备包括:视频编解码器,被驱动以进行视频记录或视频回放,且存储器针对所述视频编解码器而具有用于视频编解码器的保留区域;相机单元,被驱动以执行用于图像捕捉或视频记录的预览功能,且存储器针对所述相机单元而具有用于相机单元的保留区域;存储器包括多个保留区域和多个非保留区域,其中,如果与所述多个保留区域相应的功能单元没有被驱动,则以相应的功率单元的驱动频率的递减顺序,将数据存储在所述多个保留区域中,如果功能单元被驱动,则处理存储在所述多个保留区域中的每个中的数据,以恢复用于驱动功能单元的所述多个保留区域。
[0026]从下面结合附图公开本公开的示例性实施例的【具体实施方式】中,本公开的其它方面、优点和显著特征对于本领域技术人员而言将变得清楚。
[0027]在开始下面的本公开的【具体实施方式】之前,阐述在本专 利文档中始终使用的特定词语和短语的定义会是有益的:术语“包括”和“包含”及其派生词是指包括而非限制;术语“或”是包括在内,意指和/或;短语“与…相关联”和“与其相关联”及其派生词可表示包括、包括在…内、与…互连、包含、包含在…内、连接到…或与…连接、结合到…或与…结合、可与…通信、与…合作、交错、并列、接近于…、连结到…或与…连结、具有、具有…属性等;术语“控制器”是指控制至少一个操作的任意装置、系统或其部件,这种装置可实现在硬件、固件或软件、或者硬件、固件、软件中的至少两个的某种组合中。应该注意,无论是本地还是远程,与任何特定控制器相关的功能可以是集中式或分布式。在整个专利文档中提供了对特定词语和短语的定义,本领域的普通技术人员应该理解,在许多情况下(如果不是在大多数情况下),这种定义适用于对这样限定的词语和短语的现有使用和未来使用。
[0028][有益效果]
[0029]如上所述,由于当驱动具有高的驱动频率的功能单元时以相应的功率单元的驱动频率的递减顺序,将数据存储保留区域中,因此OS可立即使用没有存储任何数据的保留区域,从而确保快速驱动。
【附图说明】
[0030]为了更全面理解本公开及其优点,现在将参考结合附图的以下描述,在附图中,相似的标号表不相似的部件:
[0031]图1示出包括保留区域和非保留区域的物理存储器;
[0032]图2示出根据本公开的一个实施例的终端的结构;
[0033]图3是示出根据本公开的第一实施例的根据数据收回条件将数据存储在存储器的保留区域中的处理的流程图;
[0034]图4是示出根据本公开的第一实施例的根据数据收回条件处理存储器的保留区域中的数据的处理的流程图;
[0035]图5a和图5b示出根据本公开的一个实施例的快速处理存储器中的保留区域中的数据的操作;
[0036]图6示出根据本公开的一个实施例的不管存储器中的保留区域的存储空间为如何而快速处理保留区域中的数据的操作;
[0037]图7是示出根据本公开的第二示例性实施例的以相应功能单元的驱动频率的递减顺序将数据存储在保留区域中的处理的流程图。
[0038]贯穿附图,相似的标号将被理解为表示相似的部分、组件和结构。
【具体实施方式】
[0039]以下论述的图2至图9,以及用于描述本专利文档中的本公开的原理的各种实施例仅是示例性的方式并且不应被解释为限制本公开的范围的任何方式。本领域技术人员将理解,本公开的原理可以在任何适当布置的电子装置中实现。提供以下参照附图的描述以帮助全面理解由权利要求及其等同物限定的本公开的示例性实施例。所述描述包括各种特定细节以帮助理解,但是这些细节被视为仅是示例性的。因此,本领域的普通技术人员将认识到,在不脱离本公开的范围和精神的情况下可对在此描述的实施例进行各种改变和修改。另外,为了清楚和简洁,将省略对公知的功能和构造的描述。
[0040]在以下描述和权利要求中使用的术语和词语不限于书面含义,而仅由发明人使用以能够清楚且一致地理解本公开。因此,对本领域技术人员清楚的是,提供本公开的示例性实施例的以下描述仅是为了说明的目的,而不是为了限制由权利要求及其等同物限定的本公开的目的。
[0041]应理解的是,除非上下文另外清楚地指示,否则单数形式包括复数指示物。因此,例如,参考“组件表面”包括参考这样的一个或更多个表面。
[0042]可应用本公开的实施例的终端可包括移动终端和固定终端。移动终端、便携式移动电子终端可包括视频电话、蜂窝电话、智能电话、国际移动电信2000 (IMT-2000)终端、宽带码分多址(WCDMA)终端、通用移动电信服务(UMTS)终端、个人数字助理(PDA)、便携式多媒体播放器(PMP)、数字多媒体广播(DMB)终端、电子书阅读器、便携式计算机(例如,膝上型计算机、平板计算机等)、数码相机等。固定终端可包括台式个人计算机(PC)等。
[0043]图2示出根据本公开的一个实施例的终端的结构。参照图2,射频(RF)单元123负责终端的无线通信。RF单元123包括RF发送器和RF接收器,其中,RF发送器用于上转换发送信号的频率并对上转换后的发送信号进行放大,RF接收器用于对接收信号进行低噪声放大(LNA)并下转换LNA-放大的接收信号的频率。数据处理器120包括发送器和接收器,其中,发送器用于对发送信号进行编码和调制,接收器用于对接收的信号进行解调和解码。换句话说,数据处理器120可包括调制器-解调器(调制解调器)和编码器-解码器(编解码器)。编解码器包括数据编解码器和音频编解码器,其中,数据编解码器用于处理包数据等,音频编解码器用于处理诸如语音的音频信号。音频处理器125使用扬声器SPK播放从数据处理器120中的音频编解码器输出的接收音频信号,并将麦克风MIC拾取的音频发送信号传送到数据处理器120中的音频编解码器。
[0044]键输入单元127包括用于输入字符/数字信息的字符/数字键和用于设置各种功能的功能键。
[0045]相机单元140包括相机传感器和信号处理器,其中,相机传感器用于捕捉图像数据并将捕捉的光学图像信号转换为电图像信号,信号处理器用于将由相机传感器捕捉的模拟图像信号转换为数字图像数据。相机传感器可以是电荷耦合器件(CCD)传感器或互补金属氧化物半导体(CMOS)传感器等,可利用数字信号处理器(DSP)来实现信号处理器。可以以集成方式或分离方式来实现相机传感器和信号处理器。虽然存储器130的多个保留区域中的相关联的保留区域被用作通用目的,但是用于执行用于图像捕捉或视频记录的预览功能的相机单元140可被快速驱动或被启用以执行用于图像捕捉或视频记录的预览功能。
[0046]图像处理器150执行图像信号处理(ISP)以将从相机单元140输出的图像信号显示在显示器160上。ISP可包括伽马校正、插值、空间变化、图像效果、图像缩放、自动白平衡(AWB)、自动曝光(AE)、自动聚焦(AF)等。图像处理器150以帧为基础处理从相机单元140输出的图像信号,并可根据显示器160的特性和尺寸输出帧图像数据。包括视频编解码器的图像处理器150使用预定编码-解码方案压缩显示在显示器160上的帧图像数据并将压缩的帧图像数据解压缩为原始帧图像数据。视频编解码器151可以是联合图像专家组(JPEG)编解码器、移动图像专家组4(MPEG4)编解码器、小波编解码器等。图像处理器150可具有同屏显示(OSD)功能。在控制器110的控制下,图像处理器150可根据显示的屏幕的尺寸输出OSD数据。
[0047]如果通过视频编解码器151来执行视频记录或视频回放,则当存储器130的多个保留区域中的相关联的保留区域被用作通用目的时,用于执行视频记录或视频回放的相机单元140可被快速驱动以执行视频记录或视频回放。
[0048]显示器160将从图像处理器150输出的图像信号和从处理器110输出的用户数据显示在其屏幕上。液晶显示器(IXD)可用于显示器160。在这种情况下,显示器160可包括LCD控制器、能够存储图像数据的视频存储器、LCD面板。当被实现为具有触摸屏时,LCD可作为输入单元而操作。在这种情况下,与键输入单元127上的键相同的键可被显示在显示器160上。
[0049]处理器110控制终端的总体操作。当特定功能被用户选择时,处理器110激活特定部分以执行特定功能。特定部分被操作系统(OS)分配了存储器130的区域以执行特定功能,存储器130的分配的区域可属于存储器130的多个保留区域和多个非保留区域中的一种。
[0050]在存储器130的多个保留区域中存在用于视频编码器装置的保留区域的情况下,如果在执行视频记录或视频回放时处理器110驱动视频编解码器151执行视频记录或视频回放,则视频编解码器151可使用存储器130的多个保留区域中的视频编解码器151的保留区域执行视频记录或视频回放。
[0051]此外,在存储器130的多个保留区域中存在用于相机功能单元的保留区域的情况下,如果在执行用于图像捕捉或视频记录的预览功能时处理器110进行控制来驱动相机单元140以执行用于图像捕捉或视频记录的预览功能,则相机单元140可通过OS使用存 储器130的多个保留区域中的相机单元140的保留区域执行用于图像捕捉或视频记录的预览功會K。
[0052]存储器130可被划分为程序存储器和数据存储器。程序存储器可存储用于控制终端的一般操作的程序。数据存储器可临时存储在控制程序的执行期间产生的数据。
[0053]存储器130可在物理上包括多个保留区域和多个非保留区域。针对存储器130的多个保留区域中的每个设置数据收回条件,使得当与多个保留区域对应的功能单元没有被驱动时,多个保留区域可被用作非保留区域。
[0054]图3是示出根据本公开的第一示例性实施例的基于数据收回条件将数据存储在存储器的保留区域中的处理的流程图。参照图3,对于包括多个保留区域和多个非保留区域的存储器,如果被分配了多个保留区域中的一个的装置没有被驱动,则OS可将未占用的保留区域如同多个非保留区域一样用作通用目的。保留区域是针对功能单元预先分配的物理上连续的区域。非保留区域表示由OS动态分配的区域。
[0055]这里使用的短语“用作通用目的”可表示保留区域可被用作用于存储OS的数据结构(诸如,处理的代码、堆栈、堆和页高速缓冲存储器)和构成运行在OS上的处理的虚拟地址空间的内容的空间。
[0056]在本公开的一个实施例中,针对多个保留区域中的每个配置数据收回条件集。以初始驱动速度的递增顺序针对分配给功能单元的多个保留区域中的每个设置数据收回条件,以当被分配了多个保留区域的装置被驱动时,从已被用作非保留区域的多个保留区域快速收回数据。
[0057]数据收回条件集包括用于删除数据的数据丢弃条件、用于将数据移动到非保留区域的移动至非保留区域条件,以及用于将数据移动到辅助存储器的移动至辅助存储器条件,这为功能单元提供了不同的初始驱动速度。
[0058]数据丢弃条件具有最高的数据处理速度,这是由于其立即删除存储在保留区域中的数据。移动至非保留区域条件具有第二高的数据处理速度,这是由于其在存储器内移动数据。移动至辅助存储器条件具有最低的数据处理速度,这是由于其将数据从存储器移动到辅助存储器。
[0059]因此,可基于功能单元需要的初始驱动速度,针对相关联的保留存储器区域设置适当的数据处理条件(之后还被称为“数据收回条件”)。
[0060]通常,相机功能应被快速驱动,换言之,需要具有高的初始驱动速度。另一方面,视频回放功能可容许其初始驱动速度稍微延迟。即便对于视频记录功能来说,在预览图像被显示之后而明确的记录(编码)开始命令被发出之前,也存在一定程度的空闲时间。因此,对于由硬件视频编解码单元使用的保留存储器区域,可允许其页迀移或数据处理稍微延迟。
[0061]因此,在这种情况下,对于数据收回条件集,可针对用于相机单元的保留区域设置最高数据处理速度的用于删除数据的数据丢弃条件,可针对用于硬件视频编解码单元的保留区域设置用于将数据移动到非保留区域的移动至非保留区域条件,或用于将数据移动到辅助存储器的移动至辅助存储器条件。
[0062]以这种方式,针对多个保留区域中的每个配置数据处理条件。在步骤301中,终端的OS确定多个保留区域是否被用于页高速缓冲存储器的目的,在页高速缓冲存储器中,存储器如高速缓冲存储器一样被使用。如果是这样的,则在步骤302中,OS确定是否存在读取存储在辅助存储器中的数据的请求。当请求读取存储在辅助存储器中的数据时,在步骤303中,OS将读取的数据存储在多个保留区域中的被设置了数据丢弃条件的保留区域中。
[0063]如果存储在辅助存储器中的数据被读出并且被存储在存储器的保留区域中,则页高速缓冲存储器转换为干净状态(clean state)。这里使用的术语“干净状态”可表示以下状态:由于从辅助存储器读取的数据在被高速缓存在存储器中之后没有被更新,因此不需要将高速缓存在存储器中的数据反映回到辅助存储器中,意味着相同数据存在于辅助存储器和存储器中。因此,由于在辅助存储器中的数据被读出并且被存储在存储器的保留区域中,因此存储在存储器的保留区域中且从辅助存储器中读出的数据被允许删除。
[0064]因此,当请求读取存储在辅助存储器中的数据时,OS将请求读取的数据存储在被设置了用于删除数据的数据丢弃条件的保留的存储器区域中。
[0065]如果当在步骤301中多个保留区域A被用于页高速缓冲存储器的目的时,在步骤304中存在用于将数据记录在辅助存储器中的请求,则在步骤305中OS将读取的数据存储在多个保留区域中的被设置了移动至辅助存储器条件的保留区域中。
[0066]如果将被记录在辅助存储器中的数据被存储在存储器的保留区域中,则页高速缓冲存储器转换为脏状态(dirty state)。这里使用的术语“脏状态”可表示以下状态:由于从辅助存储器读取的数据在被高速缓存在存储器中之后被更新,因此更新的数据需要被反映到辅助存储器中。换言之,不同的数据存在于辅助存储器和存储器中。因此,由于数据仅被存储在存储器中而不被存储在辅助存储器中,因此存储在存储器的保留区域中的数据需要被移动到辅助存储器。
[0067]因此,当请求记录存储在辅助存储器中的数据时,OS将请求记录的数据存储在被设置了用于将数据移动到辅助存储器的移动至辅助存储器条件的保留的存储器区域中。
[0068]如果在相同数据存在于辅助存储器和存储器中的页高速缓冲存储器的干净状态下修改存储器中的数据,则页高速缓冲存储器转换为脏状态。相反,如果在不同数据存在于辅助存储器和存储器中的页高速缓冲存储器的脏状态下,存储在存储器中的数据被移动到辅助存储器,则页高速缓冲存储器转换为干净状态。
[0069]这样,页高速缓冲存储器的干净状态可被转化为页高速缓冲存储器的脏状态,页高速缓冲存储器的脏状态可被转化为页高速缓冲存储器的干净状态。
[0070]因此,存储在从页高速缓冲存储器的干净状态转换为页高速缓冲存储器的脏状态的保留存储器区域中的数据可被移动到被设置了移动至辅助存储器条件的保留区域,而不管功能单元是否被驱动。
[0071]此外,存储在从页高速缓冲存储器的脏状态转换为页高速缓冲存储器的干净状态的保留存储器区域中的数据可被移动到被设置了数据丢弃条件的保留区域,而不管功能单元是否被驱动。
[0072]当在步骤306中存储器的多个保留区域A已被用作与非保留区域相同的目的,而非页高速缓冲存储器时,在步骤307中请求存储特定数据时,在步骤308中OS将特定数据存储在多个保留区域中的设置了移动至非保留区域的保留区域中。
[0073]将参照图4描述当数据通过图3的处理被存储在多个保留区域A中并且被分配了多个保留区域的功能单元被驱动时,快速处理存储在多个保留区域中的数据的处理。
[0074]图4是示出根据本公开的第一示例性实施例的根据数据收回条件处理存储器的保留区域中的数据的处理的流程图。
[0075]参照图4,在步骤401中,如果分配了多个保留区域中的特定保留区域的功能单元被驱动,则OS确定在特定保留区域中是否存在数据。如果在特定保留区域中存在数据,则在步骤402中,OS确定针对用于被驱动的功能单元的保留区域设置的数据收回条件。
[0076]在步骤403中,OS确定设置的数据收回条件是否是数据丢弃条件。如果设置的数据收回条件是数据丢弃条件,则在步骤404中,OS立即删除存储在特定保留区域中的数据以恢复特定保留区域,从而将特定保留区域用作用于驱动功能单元的原始保留区域。
[0077]在步骤405中,OS确定设置的数据收回条件是否是移动至辅助存储器条件。如果设置的数据收回条件是移动至辅助存储器条件,则在步骤406中,OS将存储在特定保留区域中的数据移动到辅助存储器以恢复特定保留区域,从而将特定保留区域用作用于驱动功能单元的原始保留区域。在这种情况下,OS修改页表以指示数据被存储在辅助存储器中而不是被存储在特定保留区域中。
[0078]在步骤407中,OS确定设置的数据收回条件是否是移动至非保留区域条件。如果设置的数据收回条件是移动至非保留区域条件,则在步骤408中,OS将存储在特定保留区域中的数据移动到存储器的非保留区域中的空区域,以恢复特定保留区域,从而将特定保留区域用作用于驱动功能单元的原始保留区域。在这种 情况下,OS修改页表以指示数据被存储在非保留区域中的空区域而不是被存储在特定保留区域中。
[0079]图5a和图5b示出根据本公开的实施例的快速处理存储器的保留区域中的数据的操作。
[0080]将参照图5a和图5b描述图3和图4的处理。将假设在图5a中示出的存储器中的多个保留区域A中,针对页帧#10设置了移动至辅助存储器条件,针对页帧#8和页帧#9设置了数据丢弃条件,针对页帧#7设置了移动至非保留区域条件。
[0081]如果在步骤302中存在读取数据的请求,则从辅助存储器读取的数据被存储在页帧#8和页帧#9中,其中,页帧#8和页帧#9是具有数据丢弃条件的保留区域。
[0082]如果在步骤304中存在记录数据的请求,则将被记录在辅助存储器中的数据被存储在页帧#10中,其中,页帧#10是具有移动至辅助存储器条件的保留区域。
[0083]如果在步骤307中存在存储特定数据的请求,则特定数据被存储在页帧#7中,其中,页帧#7是具有移动至非保留区域条件的保留区域。
[0084]如图5b中所示,如果分配了页帧#10 (多个保留区域A中的一个保留区域)的功能单元被驱动,则存储在页帧#10中的数据被移动到辅助存储器,从而收回页帧#10或保留区域并将页帧#10或保留区域用作用于驱动功能单元的区域。
[0085]如果分配了页帧#8或页帧#9 (多个保留区域A中的一个保留区域)的功能单元被驱动,则存储在页帧#8或页帧#9中的数据被立即删除,从而作为保留区域的页帧#8或页帧#9被恢复并被用作用于被驱动的功能单元的区域。
[0086]如上所述,因为针对可被用作非保留区域的保留区域中的每个保留区域设置了数据收回条件,因此需要高的初始驱动速度的功能单元可快速收回其相关联的保留区域并将其用作原始目的。
[0087]图6示出根据本公开的一个实施例的不管存储器中的保留区域的存储空间为如何而快速处理保留区域中的数据的操作。
[0088]具体地,图6示出包括多个保留区域A和多个非保留区域B的物理存储器。
[0089]多个保留区域A包括保留区域601a和保留区域601b,其中,保留区域601a在诸如视频记录或回放的操作被执行时用于硬件视频编解码操作,保留区域601b在图像捕捉或视频记录期间用于预览功能的相机操作。因此,与用于相机单元的保留区域601b相比,用于视频编解码功能单元的保留区域601a具有更大的存储空间。
[0090]然而,通常,相机功能需要快速驱动,而对于视频回放功能,可允许其初始驱动时间稍微延迟。
[0091]因此,虽然针对具有较小存储空间的保留区域601b,设置了具有最高数据处理速度的数据丢弃条件作为数据收回条件,并且针对具有较大存储空间的保留区域601a,设置了移动至非保留区域条件作为数据收回条件,但是在对存储在保留区域601a中的数据执行数据处理或页迀移时不存在问题。
[0092]换言之,可考虑分配了存储器的保留区域的功能单元的驱动特征和如何容易地执行页迀移,来使用存储器的保留区域。
[0093]图7是示出根据本公开的第二示例性实施例的以相应功能单元的驱动频率的递减顺序将数据存储在保留区域中的处理的流程图。
[0094]参照图7,对于包括多个保留区域和多个非包括区域的存储器,当与多个保留区域相关联的功能单元没有被驱动时,OS可将多个保留区域用作如同多个非保留区域一样的通用目的。
[0095]保留区域表示预先针对功能单元分配的物理上连续的区域,非保留区域表示由OS动态分配的区域。
[0096]这里使用的短语“用作通用目的”可表示保留区域可被用作用于存储OS的数据结构(诸如处理的代码、堆栈、堆和页高速缓冲存储器)和构成运行在OS上的处理的虚拟地址空间的内容的空间。
[0097]在本公开的一个实施例中,当保留区域被用作与非保留区域相同的目的时,可基于功能单元的驱动频率将数据存储在保留区域中。
[0098]换言之,分配了保留区域的功能单元可被划分为频繁被驱动的功能单元,和不常被驱动的功能单元。例如,在用户使用视频回放比图像捕捉更频繁的情况下,可首先使用用于较不频繁使用的相机单元的保留区域。然而,在用户具有相反使用模式的情况下,保留区域可具有相反属性。
[0099]因此,当保留区域被用作与非保留区域相同的目的时,数据首先被存储在保留区域中的较不频繁被使用的区域中,即,与具有最低驱动频率的功能单元相关联的保留区域中。
[0100]终端可具有单独的监控应用以对被分配了保留区域的功能单元中的每个的驱动频率进行查看或计数。
[0101]如果在通过监控应用的方式查看分配了存储器的多个保留区域的功能单元的驱动频率时,在步骤701中存在将数据存储在存储器的保留区域中的请求,则在步骤702中OS确定与多个保留区域相应的功能单元中的每个的驱动频率,其中,通过监控应用查看驱动频率。
[0102]在步骤703中,OS将数据存储在用于功能单元中的具有最低驱动频率或第一优先级的功能单元的保留区域中。
[0103]之后,如果再次存在将数据存储在多个保留区域中的请求时,OS重复将数据存储在用于功能单元中的具有最低驱动频率或第二优先级的功能单元的保留区域中的处理。
[0104]假设根据图3和图4中的示例中的数据收回条件处理存储在保留区域中的数据,并且根据图7的示例中的功能单元的驱动频率处理存储在保留区域中的数据。然而,在将存储器的保留区域用作与非保留区域相同的目的时,因功能单元的特性,OS可相对于分配给需要快速数据处理的保留区域而首先使用与需要低速数据处理的保留区域。例如,相比于分配给频繁使用的相机单元的保留区域,分配给较不频繁使用的用于视频回放的视频编解码单元的保留区域可首先被使用。
[0105]本公开的示例性实施例可被实现为在计算机可读记录介质中的计算机可读代码。计算机可读记录介质可包括存储计算机可读数据的所有类型的记录单元。记录介质的示例可包括只读存储器(ROM)、随机存取存储器(RAM)、光盘、磁带、软盘、硬盘、非易失性存储器等,并且还可包括以载波(例如,通过互联网传输)形式实现的介质。计算机可读记录介质可分布于连接到网络的计算机系统,从而可按照分布方式来存储和执行计算机可读代码。
[0106]从前述描述清楚的是,本公开提出的存储器管理方法和设备可防止因处理存储在存储器的保留区域中的数据而导致的装置的驱动时间的增加,从而确保终端的快速响应。
[0107]虽然已经一个实施例描述了本公开,但是可向本领域技术人员暗示各种改变和修改。本公开意图包括落入权利要求范围内的这样的改变和修改。
【主权项】
1.一种用于将数据存储在终端中的存储器(130)中的方法,其中,所述存储器包括多个保留区域(A),每个保留区域被分配给功能单元,每个保留区域被配置了数据收回条件集中的各自的数据收回条件,所述方法包括: 如果分配了保留区域的功能单元没有被驱动,则将数据存储在所述保留区域中; 如果功能单元被驱动,则基于配置的数据收回条件处理存储在所述保留区域中的数据,从而所述保留区域能够用于分配的功能单元。2.如权利要求1所述的方法,其中,存储器(130)包括作为针对功能单元而预先分配的物理上连续的区域的多个保留区域(A)和被动态分配的非保留区域(B)。3.如权利要求1或2所述的方法,还包括:针对所述多个保留区域(A)中的每个保留区域设置数据收回条件。4.如以上权利要求中的任一权利要求所述的方法,其中,以在保留区域能够用于功能单元时各个功能单元需要的初始驱动速度的递增顺序,针对分配给各个功能单元的所述多个保留区域中的每个保留区域配置数据收回条件。5.如以上权利要求中的任一权利要求所述的方法,其中,数据收回条件集包括:用于删除数据的数据丢弃条件、用于将数据移动到非保留区域的移动至非保留区域条件和用于将数据移动到辅助存储器的移动至辅助存储器条件,每个数据收回条件提供影响功能单元的初始驱动速度的不同的延迟。6.如以上权利要求中的任一权利要求所述的方法,其中,将数据存储在所述保留区域中的步骤包括: 当在将所述多个保留区域用作页高速缓冲存储器时读取数据的请求使页转换为干净状 态时,将从辅助存储器读取的数据作为请求读取的数据而存储在具有数据收回条件集中的数据丢弃条件的保留区域中; 当在将所述多个保留区域用作页高速缓冲存储器时记录数据的请求使页转换为重写状态时,将待记录在辅助存储器中的数据作为请求记录的数据而存储在具有数据收回条件集中的移动至辅助存储器条件的保留区域中; 当在将所述多个保留区域用作与除了页高速缓冲存储器之外的非保留区域相同的目的时请求存储特定数据时,将特定数据存储在具有数据收回条件集中的移动至非保留区域条件的保留区域中。7.如以上权利要求中的任一项权利要求所述的方法,其中,处理存储在所述保留区域中的数据的步骤包括: 如果功能单元被驱动,则确定数据是否存储在分配给所述功能单元的保留区域中; 如果数据存储在分配给所述功能单元的保留区域中,则识别针对所述保留区域的数据收回条件集中的数据收回条件; 如果针对所述保留区域配置了数据收回条件集中的数据丢弃条件,则删除存储在所述保留区域中的数据; 如果针对所述保留区域配置了数据收回条件集中的移动至辅助存储器条件,则将存储在所述保留区域中的数据移动到辅助存储器; 如果针对所述保留区域配置了数据收回条件集中的移动至非保留区域条件,则将存储在所述保留区域中的数据移动到非保留区域中的空区域。8.如以上权利要求中的任一权利要求所述的方法,其中,将数据存储在所述保留区域中的步骤包括:以分配了各自的保留区域的功能单元的驱动频率的递减顺序,将数据存储在所述多个保留区域中的一个保留区域中。9.如以上权利要求中的任一权利要求所述的方法,其中,将数据存储在所述保留区域中的步骤包括: 当在将所述保留区域用作与非保留区域相同的目的时请求存储特定数据时,确定每个功能单元的驱动频率; 以相应功能单元的驱动频率的递减顺序将数据存储在所述保留区域中。10.如以上权利要求中的任何一项权利要求所述的方法,还包括:以监控应用的方式查看分配了所述多个保留区域中的一个保留区域的每个功能单元的驱动频率。11.一种用于管理终端中的存储器(130)的设备,包括: 视频编解码单元(151),被配置为被驱动以进行视频记录或视频回放,并具有存储器中的用于视频编解码器的保留区域(101a,A); 相机单元(140),被配置为被驱动以执行图像捕捉或视频记录,并具有存储器中的用于相机单元的保留区域(101b,A); 控制器(110), 其中,所述存储器包括:多个保留区域(A),每个保留区域被配置了数据收回条件集中的各自的数据收回条件;多个非保留区域(B), 其中,控制器被配置为:如果分配了所述多个保留区域中的一个保留区域的功能单元没有被驱动,则将数据存储在具有数据收回条件集中的数据收回条件的所述多个保留区域中的一个保留区域中,而当功能单元被驱动时,基于配置的数据收回条件处理存储在所述多个保留区域中的一个保留区域中的数据,从而保留区域能够用于分配的功能单元。12.如权利要求11所述的设备,其中,存储器包括作为针对功能单元而预先分配的物理上连续的区域的多个保留区域(A)和被动态分配的非保留区域(B)。13.如权利要求11或12所述的设备,其中,以在保留区域能够用于功能单元时功能单元需要的初始驱动速度的递增顺序,针对分配给各个功能单元的所述多个保留区域中的每个保留区域配置数据收回条件。14.如权利要求11至13中的任一权利要求所述的设备,其中,数据收回条件集包括:用于删除数据的数据丢弃条件、用于将数据移动到非保留区域的移动至非保留区域条件和用于将数据移动到辅助存储器的移动至辅助存储器条件,每个条件提供影响功能单元的初始驱动速度的不同的延迟。15.如权利要求11至14中的任一权利要求所述的设备,其中,在所述存储器(130)中,在所述多个保留区域中的一个保留区域被用作页高速缓冲存储器的情况下,当分配了所述多个保留区域中的一个保留区域的功能单元没有被驱动时,将使页转换为干净状态的数据存储在具有数据收回条件集中的数据丢弃条件的保留区域中; 其中,如果所述多个保留区域中的一个保留区域被用作页高速缓冲存储器,则将使页转换为重写状态的数据存储在具有数据收回条件集中的移动至辅助存储器条件的保留区域中; 其中,如果所述多个保留区域中的一个保留区域被用作与除了页高速缓冲存储器之外的非保留区域相同的目的,则将数据存储在具有数据收回条件集中的移动至非保留区域条件的保留区域中。16.如权利要求11至15中的任一权利要求所述的设备,其中,当多个功能单元中的一个功能单元被驱动时,如果针对分配给所述功能单元的保留区域配置的数据收回条件为数据丢弃条件,则删除存储在所述保留区域中的数据; 其中,如果针对分配给所述功能单元的保留区域配置的数据收回条件为移动至辅助存储器条件,则将存储在所述保留区域中的数据移动到辅助存储器; 其中,如果针对分配给所述功能单元的保留区域配置的数据收回条件为移动至非保留区域条件,则将存储在所述保留区域中的数据移动到非保留区域中的空区域。17.如权利要求11至16中的任一权利要求所述的设备,其中,在所述存储器中,对于用于视频编解码器的保留区域,如果视频编解码单元(151)没有被驱动,则将数据存储在用于视频编解码单元的保留区域中; 其中,如果视频编解码单元被驱动,则基于针对用于视频编解码单元的保留区域配置的数据收回条件,处理存储在用于视频编解码单元的保留区域中的数据,随后将该保留区域恢复为用于驱动视频编解码单元的保留区域。18.如权利要求11至17中的任一权利要求所述的设备,其中,在所述存储器(130)中,对于用于相机单元(140)的保留区域,如果相机单元没有被驱动,则将数据存储在用于相机单元的保留区域中; 其中,如果相机单元被驱动,则基于针对用于相机单元的保留区域配置的数据收回条件,处理存储在用于相机单元的保留区域中的数据,随后将该保留区域恢复为用于驱动相机单元的保留区域。19.如权利要求11至18中的任一权利要求所述的设备,其中,在所述存储器(130)中,如果分配了所述多个保留区域中的一个保留区域的功能单元没有被驱动,则以被分配了各个保留区域的功能单元的驱动频率的递减顺序,将数据存储在所述多个保留区域中的一个保留区域中。20.如权利要求11至19中的任一权利要求所述的设备,其中,通过监控应用查看与所述多个保留区域相应的多个功能单元中的每个功能单元的驱动频率。21.如权利要求19所述的设备,其中,在所述存储器中,当视频编解码单元(151)的驱动频率比相机单元(140)的驱动频率高时,如果视频编解码单元没有被驱动,则将数据存储在用于视频编解码单元的保留区域中; 其中,当视频编解码器被驱动时,存储在用于视频编解码器的保留区域中的数据被处理为恢复为用于驱动视频编解码单元的的保留区域。22.如权利要求19所述的设备,其中,在所述存储器中,当相机单元(140)的驱动频率比视频编解码单元(151)的驱动频率更高时,如果相机单元没有被驱动,则将数据存储在用于相机单元的保留区域中; 其中,当相机单元被驱动时,存储在用于相机单元的保留区域中的数据被处理为恢复为用于驱动相机单元的的保留区域。
【专利摘要】一种方法包括:如果分配了多个保留区域的功能单元没有被驱动,则将具有数据收回条件集中的数据收回条件的数据存储在所述多个保留区域中;如果功能单元被驱动,则基于数据收回条件集中的数据收回条件处理存储在所述多个保留区域中的一个保留区域中的数据,以恢复用于驱动功能单元的所述多个保留区域。一种设备包括:存储器,所述存储器包括多个保留区域和多个非保留区域,其中,如果分配了所述多个保留区域中的一个保留区域的功能单元没有被驱动,则将数据存储在具有设置的数据收回集中的数据收回条件的所述多个保留区域中的一个保留区域中,如果功能单元被驱动,则处理存储在所述多个保留区域中的一个保留区域中的数据,以恢复所述多个保留区域中的一个保留区域。
【IPC分类】G06F12/02, G06F12/06, G06F12/08
【公开号】CN104903869
【申请号】CN201380069520
【发明人】申喜燮
【申请人】三星电子株式会社
【公开日】2015年9月9日
【申请日】2013年12月23日
【公告号】EP2750042A1, US20140189272, WO2014104679A1

最新回复(0)