CN115543930A - 一种在内存中锁定文件的方法、装置及相关设备 - Google Patents
一种在内存中锁定文件的方法、装置及相关设备 Download PDFInfo
- Publication number
- CN115543930A CN115543930A CN202210199399.5A CN202210199399A CN115543930A CN 115543930 A CN115543930 A CN 115543930A CN 202210199399 A CN202210199399 A CN 202210199399A CN 115543930 A CN115543930 A CN 115543930A
- Authority
- CN
- China
- Prior art keywords
- file
- hotspot
- files
- target
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 230000000875 corresponding effect Effects 0.000 claims description 59
- 230000002596 correlated effect Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 9
- 230000006870 function Effects 0.000 description 29
- 238000012216 screening Methods 0.000 description 27
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 235000019633 pungent taste Nutrition 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 101150053844 APP1 gene Proteins 0.000 description 1
- 101100055496 Arabidopsis thaliana APP2 gene Proteins 0.000 description 1
- 101100264195 Caenorhabditis elegans app-1 gene Proteins 0.000 description 1
- 101100189105 Homo sapiens PABPC4 gene Proteins 0.000 description 1
- 102100039424 Polyadenylate-binding protein 4 Human genes 0.000 description 1
- 101100016250 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) GYL1 gene Proteins 0.000 description 1
- 102100038359 Xaa-Pro aminopeptidase 3 Human genes 0.000 description 1
- 101710081949 Xaa-Pro aminopeptidase 3 Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- 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
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种在内存中锁定文件的方法、装置及相关设备,该方法包括:电子设备获得电子设备的多个文件中的每个文件在目标时间段内的访问量,每个文件在目标时间段内的访问量包括每个文件占用的多个页被访问的次数总和;电子设备根据每个文件的访问量和每个文件的大小,锁定多个文件中的热点文件,在热点文件和多个文件中的非热点文件的大小一致时,热点文件的访问量大于非热点文件的访问量,且在热点文件和非热点文件的访问量一致时,热点文件的大小小于非热点文件的大小。由于热点文件被锁定在了内存中,电子设备在读取数据时有更大的概率可以直接从内存中读取,可以降低电子设备访问慢速存储设备的概率,提高用户使用电子设备的体验。
Description
技术领域
本申请涉及存储技术领域,尤其涉及一种在内存中锁定文件的方法、装置及相关设备。
背景技术
目前,电子设备在读取数据的过程中,可以优先从电子设备的内存中查找是否存在目标数据。当内存中存在目标数据时,电子设备可以直接从内存中读取该目标数据;而当内存中不存在目标数据时,电子设备可以访问除内存外的其他存储设备,并将该存储设备中的目标数据读入内存,然后电子设备再从内存中读取目标数据。
通常情况下,电子设备的内存空间有限,这使得在内存空间不足时,电子设备通常将回收内存中的部分存储空间,以便利用回收的这部分数据所占用的内存空间存储新的数据。被回收的存储空间内原本存储的数据将被从内存中删除。但是,这些被删除的数据后续可能会被电子设备频繁访问,这使得电子设备会频繁地访问存储设备的数据,而电子设备从存储设备中读取数据的速度较慢,从而电子设备因为频繁访问存储设备而容易导致电子设备出现卡顿,降低了用户使用电子设备的体验。因此,本领域急需一种可以提高用户使用电子设备的体验的方法。
发明内容
本申请提供了一种在内存中锁定文件的方法、装置及相关设备,用于降低电子设备访问存储设备的概率,提高用户使用电子设备的体验。
第一方面,本申请提供了一种在内存中锁定文件的方法,包括:电子设备获得电子设备的多个文件中每个文件在目标时间段内的访问量以及每个文件的文件大小,每个文件在目标时间段内的访问量包括每个文件占用的多个页被访问的次数总和;电子设备根据每个文件的访问量和每个文件的大小,从多个文件中确定热点文件,多个文件还包括非热点文件,其中,在热点文件和非热点文件的大小一致时,热点文件的访问量大于非热点文件的访问量,且在热点文件和非热点文件的访问量一致时,热点文件的大小小于非热点文件的大小;电子设备在内存中锁定热点文件。
由上可知,电子设备可以根据用户使用电子设备实际使用情况选择多个文件中热点较高的热点文件,并将热点文件锁定在内存中。由于热点文件是根据用户实际使用电子设备的情况确定的,因此电子设备可以根据用户不同的使用习惯确定不同的热点文件,从而使得热点文件与用户的使用习惯较为匹配。如此,本申请实施例提供的方案可以较为准确地确定热点文件,在一定程度上可以避免页面抖动问题的产生,从而可以提高电子设备在内存中访问数据的命中率,进而提高电子设备访问数据的速度,在一定程度上避免电子设备出现操作卡顿现象,提高了用户的使用体验。
作为一种可能的实施方式,热点文件的读取系数大于非热点文件的读取系数,其中,多个文件中目标文件的读取系数为根据目标文件的访问量和目标文件的大小确定的,目标文件为多个文件中任意一个文件,目标文件的读取系数与目标文件的访问量呈正相关,目标文件的读取系数与目标文件的大小呈负相关。作为一个示例,目标文件的读取系数可以为目标文件的访问量和目标文件的大小的比值。本申请实施例通过可以通过读取系数来评估每个文件的热度,读取系数与文件的访问量呈正相关,与文件的大小呈负相关。文件的热度越高,该文件成为热点文件的可能性越大。
作为一种可能的实施方式,本申请实施例提供的在内存中锁定文件的方法还包括:电子设备获得在目标时间段内访问每个文件的软件的第一数量。相应地,电子设备根据每个文件的访问量、每个文件的大小和每个文件对应的第一数量,从多个文件中确定热点文件,热点文件对应的第一数量大于数量阈值。本申请实施例还可以根据访问文件的软件数量(第一数量)来判断该文件的热度。在目标时间段内,如果访问该文件的软件数量较多,说明该文件的应用场景较为广泛,电子设备可以判断该文件的热度较高。
作为一种可能的实施方式,本申请实施例提供的在内存中锁定文件的方法还包括:电子设备获得每个文件对应的第二数量,每个文件对应的第二数量包括目标时间段内每个文件占用的多个页分别被访问的次数。相应地,电子设备根据每个文件的访问量、每个文件的大小和每个文件对应的第二数量,从多个文件中确定热点文件。作为一种可能的实施方式,热点文件对应的第二数量的方差小于方差阈值。本申请实施例还可以通过文件中每个页分别被访问的次数来判断该文件的热度。在目标时间段内,文件中每个页被访问的次数越平均,说明该文件的整体热度越高。
作为一种可能的实施方式,热点文件占用的空间大小不超过预设空间大小。在实际的应用中,为了方便对热点文件的管理,可以在内存中划出一个预设空间来存储热点文件。
作为一种可能的实施方式,电子设备包括多个应用软件,目标时间段为电子设备上运行的应用软件的数量达到预设数量所对应的时间段。在本申请实施例中目标时间段可以为不固定的时间。当目标时间段开始时,电子设备开始对电子设备运行过的软件进行计数,当电子设备上运行的软件大道预设数量时,目标时间段结束。
作为一种可能的实施方式,本申请实施例提供的在内存中锁定文件的方法还包括:电子设备存储热点文件对应的热点文件列表,热点文件列表记录了热点文件的标识。电子设备保存的热点文件列表,可以在热点文件配置丢失时,例如电子设备重启时,不用重新采集文件的访问数据确定热点文件,而是可以直接根据保存的热点文件列表确定热点文件。
作为一种可能的实施方式,当电子设备重启时,本申请实施例提供的在内存中锁定文件的方法还包括:电子设备根据热点文件列表在内存中锁定热点文件。
作为一种可能的实施方式,热点文件列表被周期性的更新,本申请实施例提供的在内存中锁定文件的方法还包括:当电子设备满足预设条件时,电子设备缩短更新热点文件列表的周期。作为一个示例,预设条件包括电子设备的***版本完成升级。在电子设备的***版本完成升级时,由于电子设备的***版本变化,很可能导致电子设备的热点文件发生变化,此时为了使得热点文件与电子设备的***版本匹配,电子设备可以缩短热点文件列表的更新周期。
根据上述的在内存中锁定文件的方法,本申请实施例还提供了一种在内存中锁定文件的装置,该装置应用于电子设备,包括:获得模块,用于获得电子设备的多个文件中每个文件在目标时间段内的访问量以及每个文件的文件大小,每个文件在目标时间段内的访问量包括每个文件占用的多个页被访问的次数总和;确定模块,用于根据每个文件的访问量和每个文件的大小,从多个文件中确定热点文件,多个文件还包括非热点文件,其中,在热点文件和非热点文件的大小一致时,热点文件的访问量大于非热点文件的访问量,且在热点文件和非热点文件的访问量一致时,热点文件的大小小于非热点文件的大小;锁定模块,用于在内存中锁定热点文件。
作为一种可能的实施方式,热点文件的读取系数大于非热点文件的读取系数,其中,多个文件中目标文件的读取系数为根据目标文件的访问量和目标文件的大小确定的,目标文件为多个文件中任意一个文件,目标文件的读取系数与目标文件的访问量呈正相关,目标文件的读取系数与目标文件的大小呈负相关。
作为一种可能的实施方式,目标文件的读取系数为目标文件的访问量和目标文件的大小的比值。
作为一种可能的实施方式,本申请实施例提供的在内存中锁定文件的装置还包括:第一数量获得模块,用于获得在目标时间段内访问每个文件的软件的第一数量;确定模块具体用于,根据每个文件的访问量、每个文件的大小和每个文件对应的第一数量,从多个文件中确定热点文件,热点文件对应的第一数量大于数量阈值。
作为一种可能的实施方式,本申请实施例提供的在内存中锁定文件的装置还包括:第二数量获得模块,用于获得每个文件对应的第二数量,每个文件对应的第二数量包括目标时间段内每个文件占用的多个页分别被访问的次数;确定模块具体用于,根据每个文件的访问量、每个文件的大小和每个文件对应的第二数量,从多个文件中确定热点文件。
根据上述的在内存中锁定文件的方法和在内存中锁定文件的装置,本申请实施例还提供了一种电子设备,该设备包括处理器以及存储器:存储器用于存储计算机程序;处理器用于根据计算机程序执行上述的在内存中锁定文件的方法。
根据上述的在内存中锁定文件的方法和在内存中锁定文件的装置,本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质用于存储计算机程序,计算机程序用于执行上述的在内存中锁定文件的方法
通过上述技术方案可知,本申请具有以下有益效果:
本申请实施例提供了一种在内存中锁定文件的方法、装置及相关设备,该方法包括:电子设备获得电子设备的多个文件中的每个文件在目标时间段内的访问量,每个文件在目标时间段内的访问量包括每个文件占用的多个页被访问的次数总和;电子设备根据每个文件的访问量和每个文件的大小,锁定多个文件中的热点文件,在热点文件和多个文件中的非热点文件的大小一致时,热点文件的访问量大于非热点文件的访问量,且在热点文件和非热点文件的访问量一致时,热点文件的大小小于非热点文件的大小。
由此可知,通过获得电子设备中文件的访问量和文件的大小,可以根据用户使用电子设备实际使用情况确定电子设备中的热点文件,从而可以锁定电子设备常用的热点文件,使得电子设备的热点文件不会被电子设备换出内存。由于热点文件被锁定在了内存中,电子设备在读取数据时有更大的概率可以直接从内存中读取,而不用从其他慢速的存储设备中读取,如此,可以降低电子设备访问慢速存储设备的概率,提高用户使用电子设备的体验。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其它的附图。
图1a为本申请实施例提供的一种电子设备的软件架构图;
图1b为本申请实施例提供的一种文件和内存中页的示意图;
图1c为本申请实施例提供的一种手机的界面图;
图1d为本申请实施例提供的另一种手机的界面图;
图1e为本申请实施例提供的一种手机的界面图;
图1f为本申请实施例提供的另一种手机的界面图;
图2为本申请实施例提供的另一种电子设备的软件架构图;
图3为本申请实施例提供的一种在内存中锁定文件的方法的信令图;
图4为本申请实施例提供的一种文件中页的访问示意图;
图5为本申请实施例提供的一种在内存中锁定文件的方法的流程图;
图6为本申请实施例提供的一种在内存中锁定文件的装置的示意图。
具体实施方式
本申请说明书和权利要求书及附图说明中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于限定特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
为了更好地理解本申请实施例提供案,先对本申请实施例提供的方案的应用场景进行介绍。
本申请实施例所提供的方法应用于电子设备中,本申请实施例中的电子设备可以包括手机、平板电脑和笔记本等。
参见图1a,该图为本申请实施例提供的一种电子设备的软件架构图。
电子设备的软件架构可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android***为例,示例性说明电子设备的软件结构。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在本申请实施例中,如图1a所示,Android的分层架构包括:应用程序层,内核层和设备层等等。
应用程序层和内核层之下为设备层,即响应各个IO请求的硬件器件,包括各类存储设备,例如多媒体卡(Multi media card,MMC)/嵌入式多媒体卡(Embedded multi mediacard,eMMC)、SCSI(Small Computer System Interface)硬盘\通用闪存存储(UniversalFlash Storage,UFS)等等。
应用程序层可安装有多个应用程序。以应用程序1(APP1)为例,响应于用户操作,应用程序1可发起一个或多个访问(read)请求。例如播放视频的过程中,执行上述播放视频的功能的应用程序可发起一个数据访问请求,响应于上述请求,上述应用程序可以读取存储设备中存储的视频数据,从而播放视频。
具体的,被发起的访问请求可经过内核层的文件***,达到块(Block)中的读写调度层(IO scheduler layer)。文件***可以包括虚拟文件***(VFS,virtualfilesystem)、页高速缓冲存储器(Page Cache)、Flash友好文件***(F2FS)、可扩展只读文件***(EROFS)和***扩展文件***(ext4)等。其中,VFS是一个内核软件层,是物理文件***与服务之间的一个接口层,它对文件***的所有细节进行抽象,使得不同的次级文件***在***中运行的其他进程看来,都是相同的。页高速缓冲存储器的大小为一页,即4K。在***读写文件时,它用于缓存文件的逻辑内容,从而加快对存储设备上映像和数据的访问。F2FS用于配置磁盘布局、选择分配和清理算法,优化IO数据读写性能。EROFS用来在保证嵌入式设备端到端的性能的前提下节省存储空间。ext4用于提供文件日志功能。对于每个已经挂载的文件***,VFS在内核中都生成一个块结构(block),块代表一个已经安装的文件***,用于存储文件***的控制信息,例如文件***类型、大小。
文件到内存之间的映射是按页(page)为单位进行管理的,页通常的大小为4K。文件通常由多个页的数据组成,文件中一个页的数据可以称为一个页面。内存中也包含有存储多个页的存储空间。如图1b所示,文件A内包括A1页面、A2页面、A3页面、A4页面和A5页面。当内存访问文件A中的数据时,通常以页为单位,例如内存可以访问文件A中的A2页面、A3页面和A4页面。此时,内存将把文件A中的A2页面、A3页面和A4页面分别存储至内存的1页、2页和3页中,然后电子设备可以直接从内存读取A2页面、A3页面和A4页面。
对于IO访问请求,存储***可以在存储设备的内存中查找是否存在该请求对应的页面。当内存中存在该页面时,存储***可以直接从内存中读取该页面;而当内存中不存在该页面时,存储***可以访问存储在外存中的文件,并将从文件中查找到的页面读入内存,然后存储***再从内存中读取页面。
由于存储***中内存空间有限,在内存空间不足时,手机通常将回收内存中的部分页面,以便利用回收的这部分页面占用的页存储新的数据。被回收的页面对应的数据将被从内存中删除。但如果这些被删除的页面很快又被手机重新访问,内存则又重新将这部分页面加载入内存。如此,内存中出现了部分页面反复换入换出内存,称为页面抖动。页面抖动将会增加外存的访问量,外存访问的速度较慢,从而可能导致手机出现操作卡顿的现象。
以电子设备为手机作为示例。用户在使用手机时,如果手机的内存空间比较充足,那么该手机的反映速度和运行状况都会比较良好,手机很难出现卡顿的现象。当随着手机中应用软件的不断更新迭代,应用软件提供的功能越来越多,应用软件也越来越庞大,对手机运行资源,尤其是手机的内存的要求也越来越高。具体地,应用软件的数据越来越多,用户可能同时打开数个数据较大的软件,此时存储***中可用内存较少,内存中的访问命中率下降,容易出现页面抖动的问题,从而导致手机出现操作卡顿的现象,影响用户的使用体验。
为了缓解页面抖动的问题,存储***可以将一部分经常被访问的热点文件锁定在内存中。被锁定的热点文件中的页面不会再被内存回收,当电子设备访问被锁定文件中的页面时,电子设备可以直接在内存中访问该页面。被锁定的页面不会被存储删除,因此也可以避免页面抖动的问题。然而在实际的应用中,每个电子设备的用户使用电子设备的功能存在差异,例如不同的用户使用电子设备运行的常用应用的个数、应用的类型和使用的时间都存在差别,从而对于不同用户使用电子设备来说,热点文件也会存在差别。如果电子设备锁定的热点文件是预设好的,无法与电子设备用户的使用习惯匹配,电子设备还是会发生页面抖动的问题。因此,如何较为精准地锁定电子设备中的热点文件,使得热点文件与电子设备用户的使用习惯匹配,成为本领域需要解决的问题。
为了解决上述的问题,本申请提供了一种锁定内存中热点文件的方案。首先,电子设备在目标时间段内采集电子设备中存储的多个文件的访问信息。访问信息可以为多个文件中每个文件的访问量,即每个文件占用的多个页被访问的次数总和。然后电子设备根据文件的访问信息和文件的大小评估每个文件的热度。通常来说,文件的访问量越大,文件的热度越高。而在相同访问量的情况下,文件的大小越小,文件的热度越高。在评估了多个文件的热度后,电子设备可以根据用户使用电子设备实际使用情况选择多个文件中热点较高的热点文件,并将热点文件锁定在内存中。由于热点文件是根据用户实际使用电子设备的情况确定的,因此电子设备可以根据用户不同的使用习惯确定不同的热点文件,从而使得热点文件可以与用户的使用习惯较为匹配。如此,本申请实施例提供的方案可以较为准确地确定热点文件,在一定程度上可以避免页面抖动问题的产生,从而可以提高电子设备在内存中访问数据的命中率,进而提高电子设备访问数据的速度,在一定程度上避免电子设备出现操作卡顿现象,提高了用户的使用体验。
在实际的应用中,手机可以默认使用锁定热点文件的方案,即手机默认开启热点文件锁定功能。用户也可以在手机中对热点文件功能进行设置,当用户想要开启或关闭手机的热点文件锁定功能时,如图1c所示,用户可以现在手机的主显示界面上点击设置软件。如图1d所示,手机将会显示多个可以设置的功能,包括无线局域网、蓝牙、蜂窝网络、个人热点和内存设置等。用户在其中找到内存设置的功能,打开内存设置。如图1e所示,当用户打开内存设置后,手机将会显示热点文件锁定的功能。用户可以通过滑动热点文件锁定功能的开关,来开启或关闭热点文件锁定功能。例如,在图1e中用户可以将热点文件的滑动开关向右滑动以开启热点文件锁定功能。
在实际的应用中,用户可能关闭了热点文件锁定功能。但如果手机检测到手机的运行速度较低,可能会出现卡顿现象时,可以通过弹窗的方式提醒用户开启热点文件锁定功能,以提高手机访问数据的速度。如图1f所示,手机可以在显示界面上弹窗显示“检测到您的手机可能出现卡顿现象,是否开启热点文件锁定功能,以减少手机卡顿?”。如果用户同意开启此功能,并点击下面的“是”案件,则手机可以自动开启热点文件锁定功能。
下面对本申请实施例提供的一种在内存中锁定文件的方法的软件架构进行介绍。如图2所示,在内存中锁定文件的方法中电子设备包括应用程序层100、应用程序框架层200、内核层300和设备层。其中,应用程序层100可以包括多个APP,例如APP1、APP2和APP3等。应用程序框架层200包括统计周期控制模块201、热点文件配置模块202和热点文件识别模块203。内核层300包括访问信息采集模块301和热点文件内存锁定模块302。设备层400包括存储设备401。热点文件识别模块203中包括热点文件筛选模块2031和热点文件保存模块2032。
在热点文件锁定功能开启后,应用程序层100的应用程序向统计周期控制模块201发送开启指令。统计周期控制模块201在接收到开启指令后,向访问信息采集模块301301发送采集指令。访问信息采集模块301根据采集指令,在目标时间段内采集电子设备访问多个文件的访问信息,并将多个文件对应的访问信息发送至热点文件识别模块203。热点文件识别模块203根据访问信息采集模块301采集的访问信息和文件大小,在存储设备中存储的多个文件中筛选出热点文件,并将热点文件对应的热点文件列表发送至热点文件配置模块202。热点文件配置模块202根据热点文件列表依次向热点文件内存锁定模块302发送热点文件信息,以使得热点文件内存锁定模块302根据热点文件信息将热点文件锁定在内存中。热点文件列表可以被周期性更新。内存中被锁定的热点文件将一直被存储在内存中,直至热点文件列表更新。热点文件列表更新后,热点文件配置模块202根据新的热点文件列表发送新的热点文件信息至热点文件内存锁定模块302,以使热点文件内存锁定模块302锁定新的热点文件。统计周期控制模块201用于调节控制热点文件的更新周期。
为了更好的理解本申请实施例提供的在内存中锁定文件的方法,下面将通过附图来对本申请实施例提供的在内存中锁定文件的方法,进行具体介绍。
参见图3,该图为本申请实施例提供的一种在内存中锁定文件的方法的信令图。
如图3所示,本申请实施例提供的在内存中锁定文件的方法,包括:
S301:统计周期控制模块201向访问信息采集模块301发送采集指令。
统计周期控制模块201位于电子设备中的应用程序框架层200,访问信息采集模块301位于电子设备的内核层。
当电子设备的热点文件锁定功能被开启后,电子设备向统计周期控制模块201发送开启指令。在实际的应用中,电子设备可以在开启使用后默认开启热点文件锁定功能。用户也可以在电子设备的设置中开启或关系热点文件锁定功能。电子设备在检测到页面抖动问题后,也可以提醒用户开启热点文件锁定功能,具体的实施方式参考如图1c至图1e部分所述,本申请实施例在此不再赘述。
统计周期控制模块201在接收到开启指令后,向访问信息采集模块301发送采集指令。需要说明的是,用户可以主动开启热点文件锁定功能,电子设备也可以在检测到电子设备运行速度较慢,出现卡顿现象时,自动开启热点文件锁定功能,以缓解电子设备的卡顿现象。当然,为了获得较好的运行速度,在电子设备第一次被使用时,电子设备可以默认开启热点文件锁定功能,本申请实施例在此不做限定。
为了使得采集的访问信息贴合电子设备当前的运行习惯,本申请实施例中的统计周期控制模块201可以控制在内存中锁定文件的周期,并根据锁定文件的周期发送采集指令。具体地,在一个新的周期开启时,统计周期控制模块201可以通过向访问信息采集模块301发送采集指令,来触发访问信息采集模块301采集存储设备中存储的多个文件的访问信息,例如文件的访问量。需要说明的是,采集指令中可以包含采集访问信息的目标时间段。当访问信息采集模块301接收到包含目标时间段的采集指令后,将在目标时间段内采集多个文件的访问量。在当前的周期结束,新的周期开启时,统计周期控制模块201可以重新向访问信息采集模块301发送采集指令,以使得访问信息采集模块301重新采集访问信息,更新内存中锁定的文件,如此循环往复,直至热点文件锁定功能被关闭。
作为一种可能的实施方式,本申请实施例中的统计周期控制模块201发送采集指令的周期可以为预设的周期,例如7天。统计周期控制模块201还可以根据电子设备的应用场景或电子设备的***版本调节该发送周期。当检测到电子设备的应用场景发生频繁变化时,即电子设备上运行的应用频繁变化时,统计周期控制模块201可以缩短发送采集指令的周期。例如,电子设备检测到用户在在一天内切换了10个以上的APP时,电子设备中的统计周期控制模块201可以缩短发送采集指令的周期,将原本的7天发送一次采集指令,缩短为5天发送一次采集指令。当检测到电子设备的应用场景长期较为稳定时,即电子设备上长期运行的应用较为固定时,统计周期控制模块201可以加长发送采集指令的周期。例如,电子设备检测到用户在七天内仅长期使用了3个APP,电子设备中的统计周期控制模块201可以拉长发送采集指令的周期,将原本的7天发送一次采集指令,增加为10天发送一次采集指令。当电子设备的***版本调整时,例如电子设备的***版本升级时,统计周期控制模块201可以缩短发送采集指令的周期。在实际的应用中,当电子设备的***版本升级时,统计周期控制模块201可以将原本的7天周期缩短为3天,并且立刻向访问信息采集模块301发送一次采集指令。
S302:访问信息采集模块301采集存储设备401存储的多个文件的访问量。
访问信息采集模块301位于电子设备的内核层300,存储设备401位于电子设备的设备层400。具体的,访问信息采集模块301在接收到统计周期控制模块201发送的采集指令后,根据采集指令中的目标时间段,采集电子设备中多个文件中每个文件在目标时间段内的访问信息,然后将每个文件在目标时间内的访问信息发送至热点文件筛选模块2031。需要说明的是,电子设备存储***中多个文件可以为存储设备中的全部文件,也可以为存储设备中指定的部分文件。作为一种可能的实施方式,访问信息采集模块301在接收到采集指令后,就可以开始采集多个文件的访问信息,即本申请实施例中目标时间段的起始点可以为访问信息采集模块301接收到采集指令时。作为另一种可能的实施方式,本申请实施例中的目标时间段的起始点也可以为访问信息采集模块301接收到采集指令的预设延迟时间后,或者目标时间段的起始点也可以为预设的时刻,本申请实施例在此不做限定。
目标时间段的时长可以为预设时长,例如10个小时。目标时间段的时长也可以为电子设备上运行的软件的数量达到预设数量所对应的时间段。作为一个示例,当预设数量为N时,访问信息采集模块301开始采集多个文件的访问信息后,将会保持这个状态直到当访问信息采集模块301检测到电子设备累计已运行过N个软件时,访问信息采集模块301结束采集,并把采集得到的访问信息发送至热点文件筛选模块。
在实际的应用中电子设备在访问文件时,通常不会访问整个文件,而访问文件中的一个或多个页。作为一种可能的实施方式,本申请中多个文件的访问信息可以包括每个文件的访问量。在实际的应用中,访问信息采集模块301采集文件的访问量实际为采集文件中每个页面的访问次数,然后访问信息采集模块301再累加文件中每个页面的访问次数,获得该文件的访问量。文件在目标时间段内的访问量包括该文件占用的多个页被访问的次数总和。如图4所示,B文件在存储设备中需要占用B1、B2、B3和B4四个页。B文件在目标时间段内被访问了一次,在这次访问中B1页和B2页均被访问了,而B3页和B4页均未被访问,那么B文件在目标时间段内的访问量为2。
作为一种可能的实施方式,为了使得内存中被锁定的文件被访问的概率更高,访问信息采集模块301还可以获得在目标时间段内访问每个文件的软件的第一数量,以获得每个文件被访问的软件场景数。文件的第一数量越高,即该文件对应的软件场景数越高,表示该文件会在越多的应用场景下被访问。访问信息采集模块301还可以获得每个文件对应的第二数量,每个文件对应的第二数量包括目标时间段内每个文件占用的多个页(page)分别被访问的次数。文件中多个页访问分别被访问的次数越接近,则表明该文件被访问的页面分布越平均。
S303:访问信息采集模块301将多个文件的访问量发送至热点文件筛选模块2031。
当访问信息模块301还获得了多个文件对应的第一数量时,可以将第一数量连同多个文件的访问量一起发送至热点文件筛选模块2031。同理,当访问信息模块301获得了多个文件对应的第二数量时,可以将第二数量连同多个文件的访问量一起发送至热点文件筛选模块2031。
S304:热点文件筛选模块2031根据每个文件的访问量和每个文件的大小,从多个文件中确定热点文件。
热点文件筛选模块2031被包括在热点文件识别模块203内,热点文件识别模块203位于电子设备的应用程序框架层200。需要说明的是,热点文件筛选模块2031可以将多个文件分为热点文件和非热点文件,然后将热点文件对应的热点文件列表发送至热点文件保存模块2031。在热点文件和非热点文件的大小一致时,热点文件的访问量大于非热点文件的访问量,且在热点文件和非热点文件的访问量一致时,热点文件的大小小于非热点文件的大小。需要说明的是,本申请实施例中的热点文件可以为一个文件,也可以为多个文件,本申请实施例在此不做限定。
为了更好地解释本申请实施例中的热点文件和非热点文件,本申请实施例将多个文件中的任意一个文件称为目标文件,目标文件可以为热点文件,也可以为非热点文件。目标文件的访问量越多,目标文件成为热点文件的概率越高。相应地,目标文件的尺寸大小越小,目标文件成为热点文件的概率越高。
作为一种可能的实施方式,热点文件筛选模块2031可以根据目标文件的读取系数来判断目标文件是否为热点文件。热点文件的读取系数大于非热点文件的读取系数。目标文件的读取系数根据目标文件的访问量和目标文件的大小确定,且目标文件的读取系数与目标文件的访问量呈正相关,目标文件的读取系数与目标文件的大小呈负相关,例如目标文件的读取系数可以为目标文件的访问量和目标文件的大小的比值。目标文件的读取系数越大,目标文件成为热点文件的可能性越高。
为了使得筛选出的热点文件被访问的概率更高,访问信息采集模块301还会将第一数量和第二数量发送至热点文件筛选模块2031。热点文件筛选模块2031可以根据每个文件的访问量、每个文件的大小和每个文件对应的第一数量,从多个文件中确定热点文件。具体的,热点文件筛选模块2031可以先将多个文件中第一数量小于数量阈值的文件确定为非热点文件,然后从第一数量大于数据阈值的文件中筛选热点文件。如果文件对应的第一数量小于数量阈值,则表明该文件只在电子设备的少数应用场景中被访问,因此热点文件筛选模块可以直接确定该文件为非热点文件。数量阈值可以根据在目标时间段内电子设备运行过的所有软件的数量来确定,即可以根据电子设备在目标时间段内所有的应用场景数来确定。作为一个示例,假设在目标时间段内电子设备一个运行过10个软件,那么数量阈值可以为0.4*10=4。
热点文件筛选模块2031还可以根据每个文件对应的第二数量来确定热点文件。每个文件对应的第二数量包括目标时间段内每个文件占用的多个页分别被访问的次数。例如,A文件包括A1、A2和A3三页,在目标时间段内A文件被访问3次,A1页被访问1次,A2页被访问2次,A3页被访问2次。那么A文件对应的第二数量包括1、2和2。文件的第二数量可以反映文件中多个页面的访问次数分布情况,如果文件中多个页面的访问次数差异较大,那么即使该文件对应的访问次数较多,由于该文件中访问次数较多的页面不容易被内存换出,而该文件中访问次数较小的页面被内存访问的概率过小,因此该文件中的页面被内存换出后回收的概率较小,不需要锁定在内存中。而多个页面的访问次数分布较为均匀的文件,在内存中有更大的概率被回收。由此,热点文件筛选模块2031可以直接确定文件中多个页面访问次数差异较大的文件为非热点文件,然后热点文件筛选模块2031可以从剩下的文件中继续筛选热点文件。
在实际的应用中,为了评估文件中的多个页面分别对应的访问次数是否分布均匀,热点文件筛选模块2031可以计算第二数量的方差或者平均差,并根据计算得到的方差或者平均差来判断访问次数是否分布均匀。作为一个示例,热点文件筛选模块2031可以计算文件A的第二数量的方差,当文件A的方差大于方差阈值时,判断文件A中多个页面分别对应的访问次数分布不均匀,从而确定文件A为非热点文件。当文件A的方差小于方差阈值时,判断文件A中的多个页面对应的访问次数分布较为均匀,然后可以根据文件A对应的访问次数和文件A的大小,对文件A进行进一步的判断。
作为一个示例,热点文件筛选模块2031可以将多个文件中第一数量小于数量阈值的文件确定为非热点文件,并将多个文件中第二数量的标准差大于标准差阈值的文件确定为非热点文件,然后将多个文件中读取系数小于读取系数阈值的文件确定为非热点文件,最后将多个文件中剩下的文件确定为热点文件。
在实际的应用中,电子设备可以将内存中的一部分预设空间作为专门存储热点文件的空间。相应地,热点文件占用的空间大小不超过预设空间大小。在实际的应用中,热点文件筛选模块2031可以先根据文件的第一数量和文件的第二数量,将多个文件中的部分文件确定为非热点文件,然后将剩下的文件按照读取系数从大到小进行排序;最后热点文件筛选模块2031根据预设空间的大小按照读取系数的排序确定多个文件中的热点文件。例如,在根据第一数量和第二数量对多个文件进行筛选后,剩下文件按照读取系数从大到小进行排序为文件1、文件2、文件3、文件4和文件5。热点文件筛选模块2031依次累加这五个文件的文件大小,直到累加的文件大小超过了预设空间大小,则将该文件之前的文件确定为热点文件。如果预设空间大小为100B,文件1为20B,文件2为50B,文件3为20B,文件4为30B;热点文件筛选模块2031将文件1、文件2和文件3累加时得到的总大小为90B,小于预设空间大小;然后热点文件筛选模块2031再将文件4累加得到的总大小为120B,大于预设空间大小;则热点文件筛选模块2031将文件1、文件2和文件3确定为热点文件,文件4和文件5确定为非热点文件。
S305:热点文件筛选模块2031向热点文件保存模块2032发送热点文件列表。
热点文件保存模块2032被包括在热点文件识别模块203内,热点文件识别模块203位于电子设备的应用程序框架层200。
热点文件筛选模块2031根据其确定的热点文件,生成热点文件列表,并将该热点文件列表发送至热点文件保存模块2032。热点文件列表记录了一个周期内的热点文件的标识,热点文件列表可以用于对热点文件进行配置。
S306:热点文件保存模块2032保存热点文件对应的热点文件列表。
热点文件保存模块2032可以将热点文件列表持久化保存到存储设备中,直至统计周期控制模块201重新向访问信息采集模块301发送采集指令,热点文件保存模块将更新热点文件列表。热点文件保存模块2032保存的热点文件列表,可以在热点文件配置丢失时,例如电子设备关机重启时,再次将热点文件列表发送至热点文件配置模块202,以使得热点文件配置模块202可以直接根据保存的热点文件列表进行配置。
S307:热点文件保存模块2032将热点文件列表发送至热点文件配置模块202。
S308:热点文件配置模块202根据热点文件列表向热点文件内存锁定模块302发送热点文件信息。
热点文件保存模块2032可以根据热点文件列表中热点文件的标识,获得热点文件信息,并将热点文件信息发送至热点文件内存锁定模块302。通常情况下,热点文件为多个文件,此时热点文件配置模块可以依次向热点文件配置模块202发送热点文件中的多个文件。
S309:热点文件内存锁定模块302根据热点文件信息在内存中锁定热点文件。
热点文件配置模块202位于电子设备的应用程序框架层200。内存中被锁定的热点文件将一直被存储在内存中,直至热点文件列表更新。热点文件配置模块202更新热点文件列表后,热点文件配置模块202根据新的热点文件列表发送新的热点文件信息至热点文件内存锁定模块302,热点文件内存锁定模块302根据新的热点文件信息在内存中锁定新的热点文件。作为一种可能的实施方式,热点文件信息可以为热点文件的名称或编码,热点文件配置模块202可以依次向热点文件内存锁定模块发送热点文件名称或编码,从而使得热点文件内存锁定模块302在内存中依次锁定热点文件。被锁定的热点文件在被访问时,将直接在内存中进行访问。由于热点文件被锁定在了内存中,电子设备在读取数据时有更大的概率可以直接从内存中读取,而不用从其他慢速的存储设备中读取,如此,可以降低电子设备访问慢速存储设备的概率,提高用户使用电子设备的体验。
在本申请实施例中,由于热点文件是根据电子设备的使用状态进行确定的,具体地电子设备的使用状态可以包括文件的访问量、文件的应用场景和文件中页面的访问次数,相比于预设的热点文件,本申请实施例中可以根据电子设备用户的实际使用习惯确定热点文件,从而提高热点文件被访问的概率,提高用户使用电子设备的体验。进一步的,本申请实施例中的热点文件还会进行周期性地更新,从而使得热点文件与电子设备用户当前的使用习惯匹配,提高了电子设备在内存中访问文件的命中率,提升电子设备的访问效率。
参见图5,该图为本申请实施例提供的一种在内存中锁定文件的方法的流程图。
如图5所示,本申请实施例提供的内存中锁定文件的方法,包括:
S501:电子设备获得电子设备的多个文件中每个文件在目标时间段内的访问量以及每个文件的文件大小,每个文件在目标时间段内的访问量包括每个文件占用的多个页被访问的次数总和。
S502:电子设备根据每个文件的访问量和每个文件的大小,从多个文件中确定热点文件,多个文件还包括非热点文件,其中,在热点文件和非热点文件的大小一致时,热点文件的访问量大于非热点文件的访问量,且在热点文件和非热点文件的访问量一致时,热点文件的大小小于非热点文件的大小。
S503:电子设备在内存中锁定热点文件。
由此可知,电子设备可以根据用户使用电子设备实际使用情况选择多个文件中热点较高的热点文件,并将热点文件锁定在内存中。由于热点文件是根据用户实际使用电子设备的情况确定的,因此电子设备可以根据用户不同的使用习惯确定不同的热点文件,从而使得热点文件可以与用户的使用习惯较为匹配。如此,本申请实施例提供的方案可以较为准确地确定热点文件,在一定程度上可以避免页面抖动问题的产生,在一定程度上避免电子设备出现操作卡顿现象,提高了用户的使用体验。
作为一种可能的实施方式,热点文件的读取系数大于非热点文件的读取系数,其中,多个文件中目标文件的读取系数为根据目标文件的访问量和目标文件的大小确定的,目标文件为多个文件中任意一个文件,目标文件的读取系数与目标文件的访问量呈正相关,目标文件的读取系数与目标文件的大小呈负相关。作为一个示例,目标文件的读取系数为目标文件的访问量和目标文件的大小的比值,本申请中热点文件占用的空间大小不超过预设空间大小。
作为一种可能的实施方式,电子设备还可以获得在目标时间段内访问每个文件的软件的第一数量。此时,电子设备根据每个文件的访问量、每个文件的大小和每个文件对应的第一数量,从多个文件中确定热点文件,热点文件对应的第一数量大于数量阈值。
作为一种可能的实施方式,电子设备还可以获得每个文件对应的第二数量,每个文件对应的第二数量包括目标时间段内每个文件占用的多个页分别被访问的次数。此时电子设备根据每个文件的访问量、每个文件的大小和每个文件对应的第二数量,从多个文件中确定热点文件。
综上所述,在本申请实施例中,由于热点文件是根据电子设备的使用状态进行确定的,相比于预设的热点文件,本申请实施例中可以根据电子设备用户的使用习惯确定热点文件,从而提高热点文件被访问的概率,提高用户使用电子设备的体验。本申请实施例中的热点文件还会进行周期性地更新,从而使得热点文件与电子设备用户当前的使用习惯匹配,提高了电子设备在内存中访问文件的命中率,提升电子设备的访问效率。本申请实施例中热点文件更新的周期还会随着电子设备的使用状态进行变化,进一步提高用户使用电子设备的体验。
根据上述实施例提供的在内存中锁定文件的方法,本申请实施例还提供了一种在内存中锁定文件的装置。
参见图6,该图为本申请实施例提供的一种在内存中锁定文件的装置的示意图。
本申请实施例提供的在内存中锁定文件的装置应用于电子设备,如图6所示,该装置,包括:
获得模块601,用于获得电子设备的多个文件中每个文件在目标时间段内的访问量以及每个文件的文件大小,每个文件在目标时间段内的访问量包括每个文件占用的多个页被访问的次数总和。
确定模块602,用于根据每个文件的访问量和每个文件的大小,从多个文件中确定热点文件,多个文件还包括非热点文件,其中,在热点文件和非热点文件的大小一致时,热点文件的访问量大于非热点文件的访问量,且在热点文件和非热点文件的访问量一致时,热点文件的大小小于非热点文件的大小。
锁定模块603,用于在内存中锁定热点文件。
作为一种可能的实施方式,热点文件的读取系数大于非热点文件的读取系数,其中,多个文件中目标文件的读取系数为根据目标文件的访问量和目标文件的大小确定的,目标文件为多个文件中任意一个文件,目标文件的读取系数与目标文件的访问量呈正相关,目标文件的读取系数与目标文件的大小呈负相关。作为一个示例,目标文件的读取系数为目标文件的访问量和目标文件的大小的比值。
作为一种可能的实施方式,本申请实施例中的在内存中锁定文件的装置还包括:第一数量获得模块,用于获得在目标时间段内访问每个文件的软件的第一数量;确定模块具体用于,根据每个文件的访问量、每个文件的大小和每个文件对应的第一数量,从多个文件中确定热点文件,热点文件对应的第一数量大于数量阈值。
作为一种可能的实施方式,本申请实施例中的在内存中锁定文件的装置还包括:第二数量获得模块,用于获得每个文件对应的第二数量,每个文件对应的第二数量包括目标时间段内每个文件占用的多个页分别被访问的次数;确定模块具体用于,根据每个文件的访问量、每个文件的大小和每个文件对应的第二数量,从多个文件中确定热点文件。
根据上述实施例提供的在内存中锁定文件的方法和在内存中锁定文件的装置,本申请实施例还提供了一种电子设备,该电子设备包括处理器以及存储器。其中,存储器用于存储计算机程序;处理器用于根据计算机程序执行上述实施例中的在内存中锁定文件的方法。
根据上述实施例提供的在内存中锁定文件的方法和在内存中锁定文件的装置,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,计算机程序用于执行上述实施例中的在内存中锁定文件的方法。
综上所述,在本申请实施例中,由于热点文件是根据电子设备的使用状态进行确定的,相比于预设的热点文件,本申请实施例提供的装置可以根据电子设备用户的使用习惯确定热点文件,从而提高热点文件被访问的概率,进而提高用户使用电子设备的体验。本申请实施例中的热点文件还会进行周期性地更新,从而使得热点文件与电子设备用户当前的使用习惯匹配,提高了电子设备在内存中访问文件的命中率,提升电子设备的访问效率。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本实施例所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行各个实施例方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (19)
1.一种在内存中锁定文件的方法,其特征在于,包括:
电子设备获得所述电子设备的多个文件中每个文件在目标时间段内的访问量以及所述每个文件的文件大小,所述每个文件在目标时间段内的访问量包括所述每个文件占用的多个页被访问的次数总和;
所述电子设备根据所述每个文件的访问量和所述每个文件的大小,从所述多个文件中确定热点文件,所述多个文件还包括非热点文件,其中,在所述热点文件和所述非热点文件的大小一致时,所述热点文件的访问量大于所述非热点文件的访问量,且在所述热点文件和所述非热点文件的访问量一致时,所述热点文件的大小小于所述非热点文件的大小;
所述电子设备在所述内存中锁定所述热点文件。
2.根据权利要求1所述的方法,其特征在于,所述热点文件的读取系数大于所述非热点文件的读取系数,其中,所述多个文件中目标文件的读取系数为根据所述目标文件的访问量和所述目标文件的大小确定的,所述目标文件为所述多个文件中任意一个文件,所述目标文件的读取系数与所述目标文件的访问量呈正相关,所述目标文件的读取系数与所述目标文件的大小呈负相关。
3.根据权利要求2所述的方法,其特征在于,所述目标文件的读取系数为所述目标文件的访问量和所述目标文件的大小的比值。
4.根据权利要求1所述的方法,其特征在于,还包括:
所述电子设备获得在所述目标时间段内访问所述每个文件的软件的第一数量;
所述电子设备根据所述每个文件的访问量和所述每个文件的大小,从所述多个文件中确定热点文件,包括:
所述电子设备根据所述每个文件的访问量、所述每个文件的大小和所述每个文件对应的第一数量,从所述多个文件中确定热点文件,所述热点文件对应的第一数量大于数量阈值。
5.根据权利要求1所述的方法,其特征在于,还包括:
所述电子设备获得所述每个文件对应的第二数量,所述每个文件对应的第二数量包括所述目标时间段内所述每个文件占用的多个页分别被访问的次数;
所述电子设备根据所述每个文件的访问量和所述每个文件的大小从所述多个文件中确定热点文件,包括:
所述电子设备根据所述每个文件的访问量、所述每个文件的大小和所述每个文件对应的第二数量,从所述多个文件中确定热点文件。
6.根据权利要求5所述的方法,其特征在于,所述热点文件对应的第二数量的方差小于方差阈值。
7.根据权利要求1所述的方法,其特征在于,所述热点文件占用的空间大小不超过预设空间大小。
8.根据权利要求1所述的方法,其特征在于,所述电子设备包括多个应用软件,所述目标时间段为所述电子设备上运行的应用软件的数量达到预设数量所对应的时间段。
9.根据权利要求1至8任一项所述的方法,其特征在于,还包括:
所述电子设备存储所述热点文件对应的热点文件列表,所述热点文件列表记录了所述热点文件的标识。
10.根据权利要求9所述的方法,其特征在于,当所述电子设备重启时,还包括:
所述电子设备根据所述热点文件列表在所述内存中锁定所述热点文件。
11.根据权利要求9所述的方法,其特征在于,所述热点文件列表被周期性的更新,还包括:
当所述电子设备满足预设条件时,所述电子设备缩短更新所述热点文件列表的周期。
12.根据权利要求11所述的方法,其特征在于,所述预设条件包括所述电子设备的***版本完成升级。
13.一种在内存中锁定文件的装置,其特征在于,所述装置应用于电子设备,包括:
获得模块,用于获得所述电子设备的多个文件中每个文件在目标时间段内的访问量以及所述每个文件的文件大小,所述每个文件在目标时间段内的访问量包括所述每个文件占用的多个页被访问的次数总和;
确定模块,用于根据所述每个文件的访问量和所述每个文件的大小,从所述多个文件中确定热点文件,所述多个文件还包括非热点文件,其中,在所述热点文件和所述非热点文件的大小一致时,所述热点文件的访问量大于所述非热点文件的访问量,且在所述热点文件和所述非热点文件的访问量一致时,所述热点文件的大小小于所述非热点文件的大小;
锁定模块,用于在所述内存中锁定所述热点文件。
14.根据权利要求13所述的装置,其特征在于,所述热点文件的读取系数大于所述非热点文件的读取系数,其中,所述多个文件中目标文件的读取系数为根据所述目标文件的访问量和所述目标文件的大小确定的,所述目标文件为所述多个文件中任意一个文件,所述目标文件的读取系数与所述目标文件的访问量呈正相关,所述目标文件的读取系数与所述目标文件的大小呈负相关。
15.根据权利要求14所述的装置,其特征在于,所述目标文件的读取系数为所述目标文件的访问量和所述目标文件的大小的比值。
16.根据权利要求13所述的装置,其特征在于,还包括:
第一数量获得模块,用于获得在所述目标时间段内访问所述每个文件的软件的第一数量;
所述确定模块具体用于,根据所述每个文件的访问量、所述每个文件的大小和所述每个文件对应的第一数量,从所述多个文件中确定热点文件,所述热点文件对应的第一数量大于数量阈值。
17.根据权利要求13所述的装置,其特征在于,还包括:
第二数量获得模块,用于获得所述每个文件对应的第二数量,所述每个文件对应的第二数量包括所述目标时间段内所述每个文件占用的多个页分别被访问的次数;
所述确定模块具体用于,根据所述每个文件的访问量、所述每个文件的大小和所述每个文件对应的第二数量,从所述多个文件中确定热点文件。
18.一种电子设备,其特征在于,所述设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行权利要求1-12中任一项所述的方法。
19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行权利要求1-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210199399.5A CN115543930B (zh) | 2022-03-01 | 2022-03-01 | 一种在内存中锁定文件的方法、装置及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210199399.5A CN115543930B (zh) | 2022-03-01 | 2022-03-01 | 一种在内存中锁定文件的方法、装置及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115543930A true CN115543930A (zh) | 2022-12-30 |
CN115543930B CN115543930B (zh) | 2023-10-24 |
Family
ID=84724156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210199399.5A Active CN115543930B (zh) | 2022-03-01 | 2022-03-01 | 一种在内存中锁定文件的方法、装置及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115543930B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117177246A (zh) * | 2023-10-25 | 2023-12-05 | 荣耀终端有限公司 | 一种用于锁死电子设备的方法、电子设备及服务器 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101510219A (zh) * | 2009-03-31 | 2009-08-19 | 成都市华为赛门铁克科技有限公司 | 文件数据访问方法、装置以及*** |
US20120137086A1 (en) * | 2010-11-26 | 2012-05-31 | Fujitsu Limited | Non-transitory medium, access control method, and information processing apparatus |
CN104424118A (zh) * | 2013-08-23 | 2015-03-18 | 深圳市腾讯计算机***有限公司 | 热点文件自适应拷贝方法及*** |
JP2016167195A (ja) * | 2015-03-10 | 2016-09-15 | 富士通株式会社 | ストレージ装置、ストレージ制御プログラム、ストレージ制御方法、およびストレージシステム |
CN110704336A (zh) * | 2019-09-26 | 2020-01-17 | 北京神州绿盟信息安全科技股份有限公司 | 一种数据缓存方法及装置 |
CN111813740A (zh) * | 2019-04-11 | 2020-10-23 | ***通信集团四川有限公司 | 一种文件分层存储方法及服务器 |
-
2022
- 2022-03-01 CN CN202210199399.5A patent/CN115543930B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101510219A (zh) * | 2009-03-31 | 2009-08-19 | 成都市华为赛门铁克科技有限公司 | 文件数据访问方法、装置以及*** |
US20120137086A1 (en) * | 2010-11-26 | 2012-05-31 | Fujitsu Limited | Non-transitory medium, access control method, and information processing apparatus |
CN104424118A (zh) * | 2013-08-23 | 2015-03-18 | 深圳市腾讯计算机***有限公司 | 热点文件自适应拷贝方法及*** |
JP2016167195A (ja) * | 2015-03-10 | 2016-09-15 | 富士通株式会社 | ストレージ装置、ストレージ制御プログラム、ストレージ制御方法、およびストレージシステム |
CN111813740A (zh) * | 2019-04-11 | 2020-10-23 | ***通信集团四川有限公司 | 一种文件分层存储方法及服务器 |
CN110704336A (zh) * | 2019-09-26 | 2020-01-17 | 北京神州绿盟信息安全科技股份有限公司 | 一种数据缓存方法及装置 |
Non-Patent Citations (1)
Title |
---|
英昌甜;王维庆;于炯;卞琛;国冰磊;祁雷;: "内存计算环境下基于索引结构的内存优化策略", no. 01 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117177246A (zh) * | 2023-10-25 | 2023-12-05 | 荣耀终端有限公司 | 一种用于锁死电子设备的方法、电子设备及服务器 |
CN117177246B (zh) * | 2023-10-25 | 2024-04-12 | 荣耀终端有限公司 | 一种用于锁死电子设备的方法、电子设备及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN115543930B (zh) | 2023-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10296494B2 (en) | Managing a global namespace for a distributed filesystem | |
CN102782683B (zh) | 用于数据库服务器的缓冲池扩展 | |
CN102667772B (zh) | 文件级分级存储管理***、方法和设备 | |
US20170208125A1 (en) | Method and apparatus for data prefetch in cloud based storage system | |
US9015131B2 (en) | Information management method, and computer for providing information | |
CN103559299B (zh) | 清理文件的方法、装置及移动终端 | |
US20170206218A1 (en) | Method and apparatus for data deduplication in cloud based storage system | |
US20140006357A1 (en) | Restoring an archived file in a distributed filesystem | |
US20140006354A1 (en) | Executing a cloud command for a distributed filesystem | |
CN110018900B (zh) | 内存处理方法和装置、电子设备、计算机可读存储介质 | |
US20200117361A1 (en) | Data stability in data storage system | |
JP6409105B2 (ja) | 共有コンテンツアイテムのストレージ制約付きの同期 | |
US20160050276A1 (en) | Efficient storage of small random changes to data on disk | |
JP7209067B2 (ja) | ストレージ制約付きの同期エンジン | |
EP3789883A1 (en) | Storage fragment managing method and terminal | |
CN102939593A (zh) | 无限存储器 | |
CN114253908A (zh) | 键值存储***的数据管理方法及其装置 | |
CN115543930B (zh) | 一种在内存中锁定文件的方法、装置及相关设备 | |
CN110287152A (zh) | 一种数据管理的方法以及相关装置 | |
CN114461405B (zh) | 一种内存中锁定页面的存储方法及相关装置 | |
CN115827508B (zh) | 一种数据处理方法、***、设备以及存储介质 | |
JP2013246773A (ja) | 計算機システム及びデータ管理方法 | |
WO2024152714A1 (zh) | 内存回收方法、计算机设备、介质和程序产品 | |
JP6636623B2 (ja) | 制約付き同期システムにおける共有コンテンツアイテムの選択的ダウンロード | |
CN117591486A (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 |