CN111625351A - 文件页的回收方法和装置、终端和可读存储介质 - Google Patents

文件页的回收方法和装置、终端和可读存储介质 Download PDF

Info

Publication number
CN111625351A
CN111625351A CN202010396173.5A CN202010396173A CN111625351A CN 111625351 A CN111625351 A CN 111625351A CN 202010396173 A CN202010396173 A CN 202010396173A CN 111625351 A CN111625351 A CN 111625351A
Authority
CN
China
Prior art keywords
page
type
file
pages
document
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
Application number
CN202010396173.5A
Other languages
English (en)
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.)
Oppo Chongqing Intelligent Technology Co Ltd
Original Assignee
Oppo Chongqing Intelligent 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 Oppo Chongqing Intelligent Technology Co Ltd filed Critical Oppo Chongqing Intelligent Technology Co Ltd
Priority to CN202010396173.5A priority Critical patent/CN111625351A/zh
Publication of CN111625351A publication Critical patent/CN111625351A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory
    • 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/5022Mechanisms to release resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请提供了一种文件页的回收方法,包括:判断是否存在第一类文件页,所述第一类文件页是不影响应用程序进行人机交互的后台文件页;若是,则回收所述第一类文件页;及若否,则回收第二类文件页,所述第二类文件页是影响应用程序进行人机交互的前台文件页。本申请的回收方法通过判断是否存在不影响应用程序进行人机交互的第一类文件页,在存在第一类文件页时优先回收第一类文件页,在不存在第一类文件页时才回收影响应用程序人机交互的第二类文件页,从而减小了文件页的回收对当前应用程序的人机交互体验的影响。本申请还提供一种回收装置、终端和非易失性计算机可读存储介质。

Description

文件页的回收方法和装置、终端和可读存储介质
技术领域
本申请涉及消费性电子技术领域,特别涉及一种文件页的回收方法、回收装置、终端和非易失性计算机可读存储介质。
背景技术
文件页在回收时,一般是对最近最少使用的文件页进行回收,若回收的是影响人机交互体验的文件页,会严重影响人机交互体验,导致应用程序出现卡顿甚至崩溃。
发明内容
本申请的实施方式提供了一种文件页的回收方法、回收装置、终端和非易失性计算机可读存储介质。
本申请实施方式的文件页的回收方法包括判断是否存在第一类文件页,所述第一类文件页是不影响应用程序进行人机交互的后台文件页;若是,则回收所述第一类文件页;及若否,则回收第二类文件页,所述第二类文件页是影响应用程序进行人机交互的前台文件页。
本申请实施方式的文件页的回收装置包括判断模块、第一回收模块和第二回收模块。所述判断模块用于判断是否存在第一类文件页,所述第一类文件页是不影响应用程序进行人机交互的后台文件页;所述第一回收模块用于在存在所述第一类文件页时,回收所述第一类文件页;所述第二回收模块用于在不存在所述第一类文件页时,回收第二类文件页,所述第二类文件页是影响应用程序进行人机交互的前台文件页。
本申请实施方式的终端包括处理器和存储器,所述处理器用于判断所述存储器中是否存在第一类文件页,所述第一类文件页是当前进行人机交互的应用程序对应的文件页中的后台文件页、在存在所述第一类文件页时,回收所述第一类文件页、及在不存在所述第一类文件页时,回收第二类文件页,所述第二类文件页是影响应用程序进行人机交互的前台文件页。
本申请的一种包含计算机可执行指令的非易失性计算机可读存储介质,当所述计算机可执行指令被一个或多个处理器执行时,使得所述处理器执行一下回收方法:判断是否存在第一类文件页,所述第一类文件页是不影响应用程序进行人机交互的后台文件页;若是,则回收所述第一类文件页;及若否,则回收第二类文件页,所述第二类文件页是影响应用程序进行人机交互的前台文件页。
本申请的回收方法、回收装置、终端和计算机可读存储介质通过判断是否存在不影响应用程序进行人机交互的第一类文件页,在存在第一类文件页时优先回收第一类文件页,在不存在第一类文件页时才回收影响应用程序人机交互的第二类文件页,从而减小了文件页的回收对当前应用程序的人机交互体验的影响,防止应用程序出现卡顿甚至崩溃的问题。
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
为了更清楚地说明本申请实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请某些实施方式的回收方法的流程示意图;
图2是本申请某些实施方式的回收装置的模块示意图;
图3是本申请某些实施方式的终端结构示意图;
图4是本申请某些实施方式的回收方法的流程示意图;
图5是本申请某些实施方式的回收装置的模块示意图;
图6是本申请某些实施方式的回收方法的原理示意图;
图7是本申请某些实施方式的回收方法的原理示意图;
图8是本申请某些实施方式的回收方法的流程示意图;
图9是本申请某些实施方式的回收装置的模块示意图;
图10是本申请某些实施方式的回收方法的流程示意图;
图11是本申请某些实施方式的回收方法的流程示意图;和
图12是本申请某些实施方式的处理器和计算机可读存储介质的连接示意图。
具体实施方式
以下结合附图对本申请的实施方式作进一步说明。附图中相同或类似的标号自始至终表示相同或类似的元件或具有相同或类似功能的元件。另外,下面结合附图描述的本申请的实施方式是示例性的,仅用于解释本申请的实施方式,而不能理解为对本申请的限制。
请参阅图1,本申请实施方式的文件页的回收方法包括以下步骤:
011:判断是否存在第一类文件页,第一类文件页是不影响应用程序进行人机交互的后台文件页;
012:若是,则回收第一类文件页;及
013:若否,则回收第二类文件页,第二类文件页是影响应用程序进行人机交互的前台文件页。
请结合图2,本申请实施方式文件页的回收装置10包括判断模块11、第一回收模块12和第二回收模块13。判断模块11、第一回收模块12和第二回收模块13分别用于执行步骤011、步骤012和步骤013。即,判断模块11用于判断是否存在第一类文件页;第一回收模块12用于在存在第一类文件页时,回收第一类文件页;第二回收模块13用于在不存在第一类文件页时,回收第二类文件页。
请结合图3,本申请实施方式的终端100还包括处理器20和存储器30,处理器20和存储器30连接,处理器20用于判断存储器30中是否存在第一类文件页、在存在第一类文件页时,回收第一类文件页、及在不存在第一类文件页时,回收第二类文件页。也即是说,步骤011至步骤013可以由处理器20实现。
具体地,终端100还包括壳体40。处理器20和存储器30均安装在壳体40内。处理器20可能是一个中央处理器20(Central Processing Unit,CPU),或者是特定集成电路(Application Specific Integrated Circuit,ASIC),或者是被配置成实施本申请实施方式的一个或多个集成电路。
更具体地,终端100可以是手机、平板电脑、显示器、笔记本电脑、柜员机、闸机、智能手表、头显设备、游戏机等。本申请实施方式以终端100是手机为例进行说明,可以理解,终端100的具体形式并不限于手机。壳体40还可用于安装终端100的成像装置(即,相机30)、供电装置、通信装置等功能模块,以使壳体40为功能模块提供防尘、防摔、防水等保护。
处理器20、成像装置、通信装置等能够通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(Peripheral Component,简称为PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,简称为EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。
目前,在终端100的系统(如安卓系统)中,进程或线程启动时,会读取磁盘等外部存储器的文件页到内存,以提高进程或线程的运行速度,而文件页回收时会将文件页写入磁盘并释放文件页占用的内存。在内存紧张时,一般使用最近最久未使用(Least RecentlyUsed,LRU)算法对文件页进行回收,也就是对预定时间内,最久未使用的文件页进行回收直至空闲的内存达到需求,文件页会根据引用时间进行排序,引用时间最早且在预定时间内都没有再引用的文件页即为需要回收的文件页。这种方式虽然可以很大程度的解决内存紧张问题,但没有考虑到文件页的重要性,对于一些文件页如前台进程对应的文件页甚至用户界面(User Interface,UI)进程对应的文件页,即使该文件页为最近最久未使用的文件页,也不能直接回收,回收这些文件可能导致人机交互界面出现卡顿、卡死等问题。
可以理解,安卓系统中,每个文件页都具有的参数信息以标记文件页的类型,例如,参数信息可以是文件页对应的进程或线程的类型,文件页可包括前台文件页(即,第一类文件页)和后台文件页(即,第二类文件页),前台文件页为影响用户当前的人机交互体验的文件页,而后台文件页对用户当前的人机交互体验影响不大。
不同进程和线程在安卓系统中具有不同的重要级别,以进程为例,根据进程的重要性的不同,可将进程分为5级,分别为前台进程(Foreground process)、可见进程(Visible process)、服务进程(Service process)、后台进程(Background process)和空进程(Empty process)。
其中,前台进程为用户当前操作所必需的进程。通常在任意给定时间前台进程都为数不多。只有在内存不足以支持它们同时继续运行这一万不得已的情况下,系统才会终止它们,前台进程会直接影响到用户的人机交互。可见进程没有任何前台组件、但仍会影响用户在屏幕上所见内容的进程(如UI进程)。可见进程被视为是极其重要的进程,除非为了维持所有前台进程同时运行而必须终止,否则系统不会终止这些进程。服务进程尽管与用户所见内容没有直接关联,但是它们通常在执行一些用户关心的操作(例如,在后台播放音乐或从网络下载数据)。因此,除非内存不足以维持所有前台进程和可见进程同时运行,否则系统会让服务进程保持运行状态。后台进程对用户体验没有直接影响,系统可能随时终止它们,以回收内存供前台进程、可见进程或服务进程使用。而空进程的唯一目的是用作缓存,以缩短下次在其中运行组件所需的启动时间。为使总体系统资源在进程缓存和底层内核缓存之间保持平衡,系统往往会终止这些进程。
因此,可根据文件页的对应的进程或线程的类型对文件页的类型进行划分,可以理解,前台进程、可见进程和服务进程一般会影响到用户的人机交互体验,处理器20先根据文件页的参数信息确定其对应的进程的类型,当进程的类型为前台进程、可见进程或服务进程时,则确定文件页为前台文件页,当前进程的类型为后台进程或空进程时,则确定文件页为后台文件页。
在回收文件页时,优先回收第一类文件页(即后台文件页),能够减小文件页的回收对当前应用程序的人机交互体验的影响,在回收第一类文件页时,也可以优先回收低优先级(如前台进程、可见进程和服务进程对应的文件页的优先级依次降低)的文件页。回收文件页时,处理器20将文件页所占的内存进行释放以完成文件页的回收,被回收的文件页可均存储到磁盘以方便再次使用。文件页可以是可直接回收的内存(如已写入到缓存和缓冲区的文件页);文件页也可以是匿名页(即,应用程序动态分配的堆内存);文件页还可以是文件映射页(文件映射页通过内存映射获取);文件页还可以是还可以是脏页(内存中被修改后,但还没有写入磁盘进行保存的文件页)等。
本申请的文件页的回收方法、回收装置10和终端100通过判断是否存在不影响应用程序人机交互的第一类文件页,在存在第一类文件页时优先回收第一类文件页,在不存在第一类文件页时才回收影响应用程序人机交互的第二类文件页,从而减小了文件页的回收对当前应用程序的人机交互体验的影响,防止应用程序出现卡顿甚至崩溃的问题。
请参阅图4,在某些实施方式中,回收方法还包括以下步骤:
014:根据第一类文件页的引用时间和引用数量生成第一回收顺序表;
015:根据第二类文件页的引用时间和引用数量生成第二回收顺序表;
步骤012包括以下步骤:
0121:按第一回收顺序表回收第一类文件页;
步骤013包括以下步骤:
0131:按第二回收顺序表回收第二类文件页。
请参阅图5,在某些实施方式中,回收装置10还包括第一生成模块14和第二生成模块15。第一生成模块14和第二生成模块15分别用于实现步骤014和步骤015。即,第一生成模块14用于根据第一类文件页的引用时间和引用数量生成第一回收顺序表。第二生成模块15分别用于根据第二类文件页的引用时间和引用数量生成第二回收顺序表。第一回收模块12还用于按第一回收顺序表回收第一类文件页。第二回收模块13还用于按第二回收顺序表回收第二类文件页。
请再次参阅图3,在某些实施方式中,处理器20还用于根据第一类文件页的引用时间和引用数量生成第一回收顺序表、根据第二类文件页的引用时间和引用数量生成第二回收顺序表、按第一回收顺序表回收第一类文件页、及按第二回收顺序表回收第二类文件页。也即是说,步骤014、步骤015、步骤0121和步骤0131可以由处理器20实现。
具体地,在回收第一类文件页和第二类文件页时,处理器20可首先根据第一类文件页的引用时间和引用数量生成第一回收顺序表,根据第二类文件页的引用时间和引用数量生成第二回收顺序表;其中,引用时间和引用数量可分别占据一定的权重,如引用数量和引用时间的权重分别为0.5,或者引用数量的权重为0.6、引用时间的权重为0.4等,在排序时,引用时间(即,应用程序引用该文件页的时间)越早,处于对应的回收顺序表的位置越靠前,优先进行回收,引用数量(即,引用该文件页的应用程序的数量)越少,处于对应的回收顺序表的位置也越靠前,同样会优先回收。
如图6所示的第一回收顺序表T1中,首先按照引用时间对第一类文件页P1至第一类文件页P5进行排序,然后根据第一类文件页P1至第一类文件页P5各自的引用数量调整第一类文件页在第一回收顺序表T1中的位置,如第一类文件页P3的引用数量为3,相较于第一类文件页P1、第一类文件页P2、第一类文件页P4而言,引用第一类文件页P3的应用程序较多,因此可将第一类文件页P3和第一类文件页P4位置互换,从而完成第一回收顺序表T1的排序。如图7所示的第二回收顺序表T2中,首先按照引用时间对第二类文件页P1至第二类文件页P5进行排序,然后根据第二类文件页P1至第二类文件页P5各自的引用数量调整第二类文件页在第二回收顺序表T2中的位置,如第二类文件页P2的引用数量为4,相较于第二类文件页P1、第二类文件页P3、第二类文件页P4和第二类文件页P5而言,引用第二类文件页P2的应用程序较多,因此可将第二类文件页P2插入到第二类文件页P5所在的位置,而第二类文件页P3至第二类文件页P5全向前移一个位置,从而完成第二回收顺序表T2的排序。
如此,综合考量引用时间和引用数量,可以准确地确定文件页的回收顺序。在回收时,处理器20按第一回收顺序表T1优先回收第一类文件页,然后在不存在第一类文件页后,再按第二回收顺序表T2回收第二类文件页。在其他实施方式中,处理器20还可以获取文件页更多的信息(如根据文件页对应的进程类型确定的文件页的优先级信息、文件页是否处于活动状态(即,文件页是否有数据的修改、写入等操作)等),综合考量以更为准确的确定第一回收顺序表T1和第二回收顺序表T2。
请参阅图8,在某些实施方式中,回收方法还包括以下步骤:
016:读取当前文件页的特征信息,以判断当前文件页是否为第一类文件页;
017:若是,则标记当前文件页为第一类文件页;及
018:若否,则标记当前文件页为第二类文件页。
请参阅图9,在某些实施方式中,回收装置10还包括读取模块16、第一标记模块17和第二标记模块18。读取模块16、第一标记模块17和第二标记模块18分别用于执行步骤016、步骤017和步骤018。即,读取模块16用于读取当前文件页的特征信息,以判断当前文件页是否为第一类文件页;第一标记模块17用于在当前文件页为第一类文件页时,标记当前文件页为第一类文件页;第二标记模块18用于在当前文件页不为第一类文件页时,标记当前文件页为第二类文件页。
请再次参阅图3,在某些实施方式中,处理器20还用于读取当前文件页的特征信息,以判断当前文件页是否为第一类文件页、在当前文件页为第一类文件页时,标记当前文件页为第一类文件页、在当前文件页不为第一类文件页时,标记当前文件页为第二类文件页。也即是说,步骤016至步骤018可以由处理器20实现。
具体地,当进程或线程启动时,会读取磁盘等外部存储器的文件页到内存,在读取过程中,处理器20根据当前文件页的特征信息(如当前文件页对应的进程的类型信息),以判断文件页是否为第一类文件页,如当前文件页的对应的进程的类型为前台进程、可见进程或服务进程时,则可将当前文件页确定为第二类文件页并进行标记,当前文件页对应的进程的类型后台进程或空进程时,则可将当前文件页确定为第一类文件页并进行标记,以使得后续进行文件页的回收时,优先回收被标记为第一类文件页的文件页,保证优先回收不影响人机交互的第一类文件页。
请参阅图10,在某些实施方式中,第二类文件页包括第一子文件页和第二子文件页,第一子文件页为第二类文件页中当前进行人机交互的应用程序未使用的文件页,第二子文件页为第二类文件页中当前进行人机交互的应用程序正在使用的文件页,步骤013还包括以下步骤:
0132:回收第一子文件页和/或第二子文件页。
请再次参阅图9,在某些实施方式中,第二回收模块13还可用于执行步骤0132。即,第二回收模块13还用于回收回收第一子文件页和/或第二子文件页。
请再次参阅图3,在某些实施方式中,处理器20还用于回收第一子文件页和/或第二子文件页。也即是说,步骤0132可以由处理器20实现。
具体地,在内存中不存在第一类文件页时,处理器20开始回收第二类文件页,第二类文件页包括当前进行人机交互的应用程序未使用的文件页(即,第一子文件页)和当前进行人机交互的应用程序正在使用的文件页(即,第二子文件页)。可以理解,进程启动后,会读取很多文件页,不同文件页在进程中的作用不同,有些读取进来是为了后续可能使用时快速的加载它,而有些读取后会直接被使用,这些被使用的文件页可能用于响应用户的交互操作,或者用于显示交互界面等,这些被使用的文件页若直接被回收显然会影响用户人机交互的体验。在回收时,可回收第一子文件页、或回收第二子文件页、或同时回收第一子文件页和第二子文件页。例如,为了不影响用户的人机交互体验,可优先回收第一子文件页,然后在内存不足时才对第二子文件页进行回收,保证用户的人机交互体验;再例如,为了快速而最大化的释放内存,则可以同时回收第一子文件页和第二子文件页,优先保证内存得到释放。
请参阅图11,在某些实施方式中,步骤0132还包括以下步骤:
01321:回收处于非活动状态的第一子文件页。
请再次参阅图9,在某些实施方式中,第二回收模块13还用于执行步骤1321。即,第二回收模块13还用于回收处于非活动状态的第一子文件页。
请再次参阅图3,在某些实施方式中,处理器20还用于回收处于非活动状态的第一子文件页。也即是说,步骤01321可以由处理器20实现。
具体地,文件页的状态包括活动状态或非活动状态,处于活动状态的文件页表示该文件页正在进行或已经进行了数据的修改、写入等操作,如被进程修改或写入了数据,且还没有将修改或写入后的数据写入到磁盘的脏页;处于非活动状态的文件页表示该文件页目前未被访问或已经将访问修改后的数据写入了磁盘,如未被进程修改或写入数据,或修改数据后已经写入磁盘的干净页(又称非脏页)。
在对活动状态的文件页进行回收时,很可能影响当前的人机交互体验,而对非活动状态的文件页进行回收时,则一般不会影响当前的人机交互体验。因此,在第一类文件页已经回收完毕,内存仍不够而需要回收第二类文件页时,可优先回收第二类文件页中,处于非活动状态的第一子文件页,从而使得回收第二类文件页时,也能保证当前的人机交互体验不受影响。当然,在回收第一类文件页时,也可以优先回收非活动状态的文件页。
请参阅图12,本申请实施方式的一个或多个包含计算机可执行指令302的非易失性计算机可读存储介质300,当计算机可执行指令302被一个或多个处理器20执行时,使得处理器20可执行上述任一实施方式的回收方法。
例如,请结合图1和图3,当计算机可执行指令302被一个或多个处理器20执行时,使得处理器20执行以下步骤:
011:判断是否存在第一类文件页,第一类文件页是不影响应用程序进行人机交互的后台文件页;
012:若是,则回收第一类文件页;及
013:若否,则回收第二类文件页,第二类文件页是影响应用程序进行人机交互的前台文件页。
再例如,请结合图3和图4,当计算机可执行指令302被一个或多个处理器20执行时,处理器20还可以执行以下步骤:
014:根据第一类文件页的引用时间和引用数量生成第一回收顺序表;
015:根据第二类文件页的引用时间和引用数量生成第二回收顺序表;
0121:按第一回收顺序表回收第一类文件页;
0131:按第二回收顺序表回收第二类文件页。
在本说明书的描述中,参考术语“一个实施方式”、“一些实施方式”、“示意性实施方式”、“示例”、“具体示例”或“一些示例”等的描述意指结合所述实施方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施方式或示例以及不同实施方式或示例的特征进行结合和组合。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施方式所属技术领域的技术人员所理解。
尽管上面已经示出和描述了本申请的实施方式,可以理解的是,上述实施方式是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施方式进行变化、修改、替换和变型。

Claims (12)

1.一种文件页的回收方法,其特征在于,所述回收方法包括:
判断是否存在第一类文件页,所述第一类文件页是不影响应用程序进行人机交互的后台文件页;
若是,则回收所述第一类文件页;及
若否,则回收第二类文件页,所述第二类文件页是影响应用程序进行人机交互的前台文件页。
2.根据权利要求1所述的回收方法,其特征在于,所述回收方法还包括:
根据所述第一类文件页的引用时间和引用数量生成第一回收顺序表;
根据所述第二类文件页的引用时间和引用数量生成第二回收顺序表;
所述回收所述第一类文件页,包括:
按第一回收顺序表回收所述第一类文件页;
所述回收第二类文件页,包括:
按第二回收顺序表回收所述第二类文件页。
3.根据权利要求1所述的回收方法,其特征在于,所述回收方法还包括:
读取当前文件页的特征信息,以判断所述当前文件页是否为第一类文件页;
若是,则标记所述当前文件页为第一类文件页;及
若否,则标记所述当前文件页为第二类文件页。
4.根据权利要求1所述的回收方法,其特征在于,所述第二类文件页包括第一子文件页和第二子文件页,所述第一子文件页为所述第二类文件页中当前进行人机交互的应用程序未使用的文件页,所述第二子文件页为所述第二类文件页中当前进行人机交互的应用程序正在使用的文件页,所述回收所述第二类文件页,包括:
回收所述第一子文件页和/或所述第二子文件页。
5.根据权利要求4所述的回收方法,其特征在于,所述回收所述第一子文件页,包括:
回收处于非活动状态的所述第一子文件页。
6.一种文件页的回收装置,其特征在于,所述回收装置包括:
判断模块,用于判断是否存在第一类文件页,所述第一类文件页是不影响应用程序进行人机交互的后台文件页;
第一回收模块,用于在存在所述第一类文件页时,回收所述第一类文件页;
第二回收模块,用于在不存在所述第一类文件页时,回收第二类文件页,所述第二类文件页是影响应用程序进行人机交互的前台文件页。
7.一种终端,其特征在于,所述终端包括处理器和存储器,所述处理器用于判断所述存储器中是否存在第一类文件页,所述第一类文件页是当前进行人机交互的应用程序对应的文件页中的后台文件页、在存在所述第一类文件页时,回收所述第一类文件页、及在不存在所述第一类文件页时,回收第二类文件页,所述第二类文件页是影响应用程序进行人机交互的前台文件页。
8.根据权利要求7所述的终端,其特征在于,所述处理器还用于根据所述第一类文件页的引用时间和引用数量生成第一回收顺序表、根据所述第二类文件页的引用时间和引用数量生成第二回收顺序表、按第一回收顺序表回收所述第一类文件页、及按第二回收顺序表回收所述第二类文件页。
9.根据权利要求7所述的终端,其特征在于,所述处理器还用于读取当前文件页的特征信息,以判断所述当前文件页是否为第一类文件页、在所述当前文件页是第一类文件页时,标记所述当前文件页为第一类文件页、及在所述当前文件页不是第一类文件页时,则标记所述当前文件页为第二类文件页。
10.根据权利要求7所述的终端,其特征在于,所述第二类文件页包括第一子文件页和第二子文件页,所述第一子文件页为所述第二类文件页中当前进行人机交互的应用程序未使用的文件页,所述第二子文件页为所述第二类文件页中当前进行人机交互的应用程序正在使用的文件页,所述处理器还用于:回收所述第一子文件页和/或所述第二子文件页。
11.根据权利要求10所述的终端,其特征在于,所述处理器还用于回收处于非活动状态的所述第一子文件页。
12.一种包含计算机可执行指令的非易失性计算机可读存储介质,当所述计算机可执行指令被一个或多个处理器执行时,使得所述处理器执行权利要求1至5中任一项所述的回收方法。
CN202010396173.5A 2020-05-12 2020-05-12 文件页的回收方法和装置、终端和可读存储介质 Pending CN111625351A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010396173.5A CN111625351A (zh) 2020-05-12 2020-05-12 文件页的回收方法和装置、终端和可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010396173.5A CN111625351A (zh) 2020-05-12 2020-05-12 文件页的回收方法和装置、终端和可读存储介质

Publications (1)

Publication Number Publication Date
CN111625351A true CN111625351A (zh) 2020-09-04

Family

ID=72271866

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010396173.5A Pending CN111625351A (zh) 2020-05-12 2020-05-12 文件页的回收方法和装置、终端和可读存储介质

Country Status (1)

Country Link
CN (1) CN111625351A (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6598143B1 (en) * 2000-02-24 2003-07-22 International Business Machines Corporation Method to increase performance of acquiring free memory pages
US8225053B1 (en) * 2007-09-29 2012-07-17 Symantec Corporation Method and apparatus for mitigating performance impact of background processing on interactive application
CN105446814A (zh) * 2014-09-30 2016-03-30 青岛海信移动通信技术股份有限公司 一种缓存回收方法和装置
CN108073520A (zh) * 2016-11-10 2018-05-25 腾讯科技(深圳)有限公司 一种内存控制方法及装置
CN108205498A (zh) * 2017-08-01 2018-06-26 珠海市魅族科技有限公司 内存回收方法及装置、计算机装置及计算机可读存储介质
CN108228340A (zh) * 2017-08-07 2018-06-29 珠海市魅族科技有限公司 终端控制方法及装置、终端设备及计算机可读存储介质
WO2019028912A1 (zh) * 2017-08-11 2019-02-14 华为技术有限公司 一种应用切换方法及装置
CN109992523A (zh) * 2017-12-29 2019-07-09 广东欧珀移动通信有限公司 内存处理方法和装置、电子设备、计算机可读存储介质
CN109992393A (zh) * 2017-12-29 2019-07-09 广东欧珀移动通信有限公司 应用处理方法和装置、电子设备、计算机可读存储介质
CN110018900A (zh) * 2018-01-10 2019-07-16 广东欧珀移动通信有限公司 内存处理方法和装置、电子设备、计算机可读存储介质
CN110018902A (zh) * 2018-01-10 2019-07-16 广东欧珀移动通信有限公司 内存处理方法和装置、电子设备、计算机可读存储介质
CN110764906A (zh) * 2019-09-27 2020-02-07 Oppo(重庆)智能科技有限公司 内存回收处理方法、装置、电子设备以及存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6598143B1 (en) * 2000-02-24 2003-07-22 International Business Machines Corporation Method to increase performance of acquiring free memory pages
US8225053B1 (en) * 2007-09-29 2012-07-17 Symantec Corporation Method and apparatus for mitigating performance impact of background processing on interactive application
CN105446814A (zh) * 2014-09-30 2016-03-30 青岛海信移动通信技术股份有限公司 一种缓存回收方法和装置
CN108073520A (zh) * 2016-11-10 2018-05-25 腾讯科技(深圳)有限公司 一种内存控制方法及装置
CN108205498A (zh) * 2017-08-01 2018-06-26 珠海市魅族科技有限公司 内存回收方法及装置、计算机装置及计算机可读存储介质
CN108228340A (zh) * 2017-08-07 2018-06-29 珠海市魅族科技有限公司 终端控制方法及装置、终端设备及计算机可读存储介质
WO2019028912A1 (zh) * 2017-08-11 2019-02-14 华为技术有限公司 一种应用切换方法及装置
CN109992523A (zh) * 2017-12-29 2019-07-09 广东欧珀移动通信有限公司 内存处理方法和装置、电子设备、计算机可读存储介质
CN109992393A (zh) * 2017-12-29 2019-07-09 广东欧珀移动通信有限公司 应用处理方法和装置、电子设备、计算机可读存储介质
CN110018900A (zh) * 2018-01-10 2019-07-16 广东欧珀移动通信有限公司 内存处理方法和装置、电子设备、计算机可读存储介质
CN110018902A (zh) * 2018-01-10 2019-07-16 广东欧珀移动通信有限公司 内存处理方法和装置、电子设备、计算机可读存储介质
CN110764906A (zh) * 2019-09-27 2020-02-07 Oppo(重庆)智能科技有限公司 内存回收处理方法、装置、电子设备以及存储介质

Similar Documents

Publication Publication Date Title
US11531625B2 (en) Memory management method and apparatus
US10114740B2 (en) Memory management techniques
CN108459898B (zh) 一种资源回收方法及装置
CN106681933A (zh) 一种内存管理方法及终端
CN111158910A (zh) 内存管理方法、装置、存储介质及电子设备
CN111831441A (zh) 内存回收方法、装置、存储介质及电子设备
CN110895492B (zh) 设备控制方法、装置、存储介质及电子设备
CN114185494B (zh) 内存匿名页的处理方法、电子设备及可读存储介质
US20220035655A1 (en) Method and Device for Anonymous Page Management, Terminal Device, and Readable Storage Medium
CN109086141B (zh) 内存管理方法和装置以及计算机可读存储介质
CN104699626A (zh) 终端内存处理方法、装置及终端
CN111831440A (zh) 内存回收方法、装置、存储介质及电子设备
CN114020652B (zh) 一种应用程序的管理方法及电子设备
US9063868B2 (en) Virtual computer system, area management method, and program
CN115509953A (zh) 内存回收方法及其装置
CN111274039A (zh) 内存回收方法、装置、存储介质及电子设备
CN109815166B (zh) 一种存储数据的动态回收处理方法及存储装置
CN111475299B (zh) 内存分配方法、装置、存储介质及电子设备
CN111858393B (zh) 内存页面管理方法、内存页面管理装置、介质与电子设备
CN111625351A (zh) 文件页的回收方法和装置、终端和可读存储介质
CN111488316A (zh) 文件缓存回收方法及装置
CN111562983B (zh) 内存优化方法、装置、电子设备及存储介质
CN114218126A (zh) 内存回收方法和装置
CN113032290B (zh) 闪存配置方法、装置、电子设备和存储介质
CN112035253B (zh) 一种linux系统页缓存回收方法及相关装置

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200904