文件处理方法及装置制造方法及图纸

技术编号:32211353 阅读:10 留言:0更新日期:2022-02-09 17:17
本申请提供了一种文件处理方法及装置;方法包括:响应于应用程序处于非正常状态,生成内核转储文件;确定映射内存文件中的大页内存;在所述内核转储文件中存储所述大页内存对应的物理地址与虚拟地址的映射关系,并在第一文件中创建所述大页内存对应的第二文件;所述第二文件与所述物理地址具有对应关系。第二文件与所述物理地址具有对应关系。第二文件与所述物理地址具有对应关系。

【技术实现步骤摘要】
文件处理方法及装置


[0001]本申请涉及计算机技术,尤其涉及一种文件处理方法及装置。

技术介绍

[0002]在应用程序处于非正常状态时,如应用程序异常终止或崩溃时,系统将生存内核转储(coredump)文件,coredump文件用于存储应用程序的内存信息。
[0003]随着互联网和服务器新硬件等技术的不断发展,服务器可能会存在几百GB的物理内存,应用程序的“体积”也越来越大,典型的如一些缓存类应用程序;缓存类应用如分布式存储、分布式缓存、分布式数据库等会消耗巨量的内存,降低系统的性能;因此,如何提高系统的性能是一直追求的目标。

技术实现思路

[0004]本申请实施例提供一种文件处理方法及装置,能够提高系统的性能。
[0005]本申请实施例的技术方案是这样实现的:
[0006]本申请实施例提供一种文件处理方法,包括:响应于应用程序处于非正常状态,生成内核转储文件;
[0007]确定映射内存文件中的大页内存;
[0008]在所述内核转储文件中存储所述大页内存对应的物理地址与虚拟地址的映射关系,并在第一文件中创建所述大页内存对应的第二文件;所述第二文件与所述物理地址具有对应关系。
[0009]在一些实施例中,所述方法还包括:
[0010]在所述内核转储文件中存储除所述大页内存以外的内存的信息。
[0011]在一些实施例中,所述在所述内核转储文件中存储所述大页内存对应的物理地址与虚拟地址的映射关系,包括:
[0012]将所述大页内存对应的物理地址与虚拟地址的映射关系存储至程序头中;
[0013]将所述程序头写入所述内核转储文件。
[0014]在一些实施例中,所述方法还包括:
[0015]从所述内核转储文件中读取程序头;
[0016]基于所述程序头中的内容,从所述第一文件中获取所述第二文件中的内容。
[0017]在一些实施例中,所述基于所述程序头中的内容,从所述第一文件中获取所述第二文件中的内容包括:
[0018]根据所述程序头中的物理地址与虚拟地址的映射关系,在所述第一文件查找与所述物理地址对应的第二文件;
[0019]获取所述与所述物理地址对应的第二文件中的内容;所述第二文件中的内容包括所述大页内存的信息。
[0020]在一些实施例中,所述根据所述程序头中的物理地址与虚拟地址的映射关系,在
所述第一文件查找与所述物理地址对应的第二文件包括:
[0021]解析所述程序头中的物理地址与虚拟地址的映射关系,得到所述大页内存对应的物理地址;
[0022]基于所述物理地址在所述第一文件中查找与所述物理地址对应的第二文件。
[0023]在一些实施例中,所述方法还包括:
[0024]从所述内核转储文件中读取负载文件头;
[0025]根据所述附在文件头中的信息,从所述内核转储文件中获取除所述大页内存以外的内存的信息。
[0026]在一些实施例中,所述第二文件的文件标识为所述大页内存对应的物理地址。
[0027]本申请实施例提供一种文件处理装置,所述文件处理装置包括:
[0028]生成模块,用于响应于应用程序处于非正常状态,生成内核转储文件;
[0029]确定模块,用于确定映射内存文件中的大页内存;
[0030]存储模块,用于在所述内核转储文件中存储所述大页内存对应的物理地址与虚拟地址的映射关系,并在第一文件中创建所述大页内存对应的第二文件;所述第二文件与所述物理地址具有对应关系。
[0031]在一些实施例中,所述存储模块,还用于在所述内核转储文件中存储除所述大页内存以外的内存的信息。
[0032]在一些实施例中,所述存储模块,用于将所述大页内存对应的物理地址与虚拟地址的映射关系存储至程序头中;
[0033]将所述程序头写入所述内核转储文件。
[0034]在一些实施例中,所述装置还包括读取模块,用于从所述内核转储文件中读取程序头;
[0035]基于所述程序头中的内容,从所述第一文件中获取所述第二文件中的内容。
[0036]在一些实施例中,所述读取模块,用于根据所述程序头中的物理地址与虚拟地址的映射关系,在所述第一文件查找与所述物理地址对应的第二文件;
[0037]获取所述与所述物理地址对应的第二文件中的内容;所述第二文件中的内容包括所述大页内存的信息。
[0038]在一些实施例中,所述读取模块,用于解析所述程序头中的物理地址与虚拟地址的映射关系,得到所述大页内存对应的物理地址;
[0039]基于所述物理地址在所述第一文件中查找与所述物理地址对应的第二文件。
[0040]在一些实施例中,所述读取模块,还用于从所述内核转储文件中读取可执行连接格式文件的文件头;
[0041]根据所述附在文件头中的信息,从所述内核转储文件中获取除所述大页内存以外的内存的信息。
[0042]在一些实施例中,所述第二文件的文件标识为所述大页内存对应的物理地址。
[0043]本申请实施例提供一种电子设备,包括:
[0044]存储器,用于存储可执行指令;
[0045]处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的文件处理方法。
[0046]本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于被处理器执行时,实现本申请实施例提供的文件处理方法。
[0047]本申请实施例提供的文件处理方法,所述方法包括:响应于应用程序处于非正常状态,生成内核转储文件;确定映射内存文件中的大页内存;在所述内核转储文件中存储所述大页内存对应的物理地址与虚拟地址的映射关系,并在第一文件中创建所述大页内存对应的第二文件;所述第二文件与所述物理地址具有对应关系。本申请实施例中,在内存转出文件中仅存储大页内存对应的物理地址与虚拟地址的映射关系,大页内存对应的第二文件并不存储在内核存储文件,而是存储在第一文件中;如此,能够减小内核转储文件的体积,减少内核转储文件的生成时间,降低系统的时延,进而提高系统的性能。
附图说明
[0048]图1是本申请实施例提供的内核转出文件的示意图;
[0049]图2是本申请实施例提供的应用程序处于非正常状态时的文件处理流程示意图;
[0050]图3是本申请实施例提供的文件处理方法的一种可选处理流程示意图;
[0051]图4是本申请实施例提供的恢复应用程序的处理过程示意图;
[0052]图5是本申请实施例提供的文件处理方法的系统架构示意图;
[0053]图6是本申请实施例提供的文件处理方法的详细处理流程示意图;
[0054]图7是本申请实施例提供的应用程序恢复方法的详细处理流程示意图;
[0055]图8是本申请实施例提供的文件处理装置的组成结构示意图;
[0056]图9是本申请实施例提供的电子设备的硬件组成结构示意图。
...

【技术保护点】

【技术特征摘要】
1.一种文件处理方法,所述方法包括:响应于应用程序处于非正常状态,生成内核转储文件;确定映射内存文件中的大页内存;在所述内核转储文件中存储所述大页内存对应的物理地址与虚拟地址的映射关系,并在第一文件中创建所述大页内存对应的第二文件;所述第二文件与所述物理地址具有对应关系。2.根据权利要求1所述的方法,所述方法还包括:在所述内核转储文件中存储除所述大页内存以外的内存的信息。3.根据权利要求1所述的方法,所述在所述内核转储文件中存储所述大页内存对应的物理地址与虚拟地址的映射关系,包括:将所述大页内存对应的物理地址与虚拟地址的映射关系存储至程序头中;将所述程序头写入所述内核转储文件。4.根据权利要求1至3任一项所述的方法,所述方法还包括:从所述内核转储文件中读取程序头;基于所述程序头中的内容,从所述第一文件中获取所述第二文件中的内容。5.根据权利要求4所述的方法,所述基于所述程序头中的内容,从所述第一文件中获取所述第二文件中的内容包括:根据所述程序头中的物理地址与虚拟地址的映射关系,在所述第一文件查找与所述物理地址对应的第二文件;获取所述与所述物理地址对应的第二文件中的内容;所述第二文件中的内容包括...

【专利技术属性】
技术研发人员:贾世萌张胜玉
申请(专利权)人:联想北京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1