CN117785440A - 异常进程处理方法和相关装置、设备、存储介质 - Google Patents
异常进程处理方法和相关装置、设备、存储介质 Download PDFInfo
- Publication number
- CN117785440A CN117785440A CN202311613960.0A CN202311613960A CN117785440A CN 117785440 A CN117785440 A CN 117785440A CN 202311613960 A CN202311613960 A CN 202311613960A CN 117785440 A CN117785440 A CN 117785440A
- Authority
- CN
- China
- Prior art keywords
- memory
- target process
- abnormal
- address
- core dump
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 296
- 230000008569 process Effects 0.000 title claims abstract description 265
- 230000002159 abnormal effect Effects 0.000 title claims abstract description 73
- 238000003672 processing method Methods 0.000 title abstract description 8
- 230000015654 memory Effects 0.000 claims abstract description 239
- 238000004458 analytical method Methods 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000005856 abnormality Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000010365 information processing Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种异常进程处理方法和相关装置、设备、存储介质,异常进程处理方法,包括:获取目标进程启动之后的内存配置文件,并获取目标进程发生异常时系统内核输出的进程退出信号;响应于进程退出信号,基于内存配置文件,释放目标进程的部分内存;基于目标进程的剩余内存,生成目标进程的核心转储文件。因此,在目标进程发生异常时释放目标进程的部分内存,减小核心转储文件的大小,并增大剩余内存,进而能够提高核心转储文件的生成效率,且释放后的内存能供其他进程使用;由于核心转储文件的占用空间减小,进而提高生成核心转储文件的成功率。
Description
技术领域
本申请涉及计算机软件技术领域,特别是涉及一种异常进程处理方法和相关装置、设备、存储介质。
背景技术
在Linux操作系统中,用户程序以进程的形态运行在系统中,进程的数据和代码都存放在内存中,进程运行过程中发生严重异常时,Linux内核会发送信号使程序退出,其中部分信号会触发进程在退出前产生核心转储(coredump)文件。
生成的核心转储文件往往持久化在设备某一存储路径下(如:SSD),其存储空间往往有限,为了减少存储空间,可以使用一些第三方程序进行压缩存储,核心转储文件大小与进程当前使用的内存大小强相关,业务进程使用的内存越高,核心转储文件越大,核心转储过程耗时越长,容易导致生成核心转储文件失败。
因此,如何提高生成核心转储文件的成功率成为亟待解决的问题。
发明内容
本申请至少提供一种异常进程处理方法和相关装置、设备、存储介质,以提高生成核心转储文件的成功率。
本申请第一方面提供了一种异常进程处理方法,包括:获取目标进程启动之后的内存配置文件,并获取所述目标进程发生异常时系统内核输出的进程退出信号;响应于所述进程退出信号,基于所述内存配置文件,释放所述目标进程的部分内存;基于所述目标进程的剩余内存,生成所述目标进程的核心转储文件。
因此,在目标进程发生异常时释放目标进程的部分内存,减小核心转储文件的大小,并增大剩余内存,进而能够提高核心转储文件的生成效率,且释放后的内存能供其他进程使用;核心转储文件的占用空间减小,能够提高生成核心转储文件的成功率。
本申请第二方面提供了一种异常进程处理装置,包括信号获取模块、内存释放模块和核心转储模块;信号获取模块用于获取目标进程启动之后的内存配置文件,并获取所述目标进程发生异常时系统内核输出的进程退出信号;内存释放模块用于响应于所述进程退出信号,基于所述内存配置文件,释放所述目标进程的部分内存;核心转储模块基于所述目标进程的剩余内存,生成所述目标进程的核心转储文件。
因此,在目标进程发生异常时释放目标进程的部分内存,减小核心转储文件的大小,并增大剩余内存,进而能够提高核心转储文件的生成效率,且释放后的内存能供其他进程使用;核心转储文件的占用空间减小,进而提高生成核心转储文件的成功率。
本申请第三方面提供一种电子设备,包括相互耦接的存储器和处理器,处理器用于执行存储器中存储的程序指令,以实现上述第一方面中的异常进程处理方法。
本申请第四方面提供了一种计算机可读存储介质,其上存储有程序指令,程序指令被处理器执行时实现上述第一方面中的异常进程处理方法。
上述方案,在目标进程发生异常时释放目标进程的部分内存,减小核心转储文件的大小,并增大剩余内存,进而能够提高核心转储文件的生成效率,且释放后的内存能供其他进程使用;核心转储文件的占用空间减小,进而提高生成核心转储文件的成功率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本申请的实施例,并与说明书一起用于说明本申请的技术方案。
图1是本申请异常进程处理方法一实施例的流程示意图;
图2是本申请配置调试弱相关内存地址的代码实现示意图;
图3是本申请异常进程处理装置一实施例的框架结构示意图;
图4是本申请电子设备一实施例的框架结构示意图;
图5是本申请计算机可读存储介质一实施例的框架结构示意图。
具体实施方式
下面结合说明书附图,对本申请实施例的方案进行详细说明。
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本申请。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
请参阅图1,图1是本申请异常进程处理方法一实施例的流程示意图;具体地,异常进程处理方法包括:
步骤S11:获取目标进程启动之后的内存配置文件,并获取所述目标进程发生异常时系统内核输出的进程退出信号。
在本申请中,目标进程即运行过程中发生严重异常需要退出的进程。本申请的异常进程处理方法可应用于运行于Linux操作系统的设备中,例如手机、平板电脑、笔记本电脑以及个人计算机、监控设备等;因此,异常进程处理方法的操作步骤的执行主体可以是上述的设备。
以监控设备为例,监控设备可以包括监控摄像头、显示器、处理器、存储器等,处理器可以用于运行各种进程,当进程出现异常时,监控设备释放调试弱相关内存并生成核心转储文件保存在存储器中,并退出该异常进程;存储器可以是固态硬盘(SSD)等,本申请不作限定。
目标进程发生异常时,系统内核输出的部分进程退出信号会触发进程在退出之前产生核心转储文件,在本申请的一些实施例中,步骤S11中获取的进程退出信号就是指这部分进程退出信号,例如SIGQUIT、SIGILL、SIGTRAP、SIGABRT、SIGFPE、SIGSEGV、SIGBUS、SIGSYS、SIGXCPU、SIGXFSZ等。
在本申请的一些实施例中,获取目标进程发生异常时系统内核输出的进程退出信号之后,还可以先根据该进程退出信号确定是否需要生成核心转储文件,若需要生成核心转储文件,则继续执行步骤S12;若不需要生成核心转储文件,则直接退出进程。
核心转储文件是指:当进程运行异常需要退出时,可能会产生核心转储文件以用于分析运行异常原因,该核心转储文件可以包括进程运行时的内存信息、寄存器状态以及堆栈指针、函数调用堆栈信息等。
在本申请的一些实施例中,内存配置文件可以是进程的coredump_vm_filter文件,用于在核心转储时过滤不需要写入核心转储文件的内存;获取目标进程启动之后的内存配置文件可以包括:
步骤S111:响应于目标进程启动,基于目标进程的运行内存,识别所述目标进程的调试弱相关内存地址;其中,所述内存地址包括至少一对起始地址和结束地址。
目标进程的运行内存,可以是目标进程的进程地址空间,也可以是目标进程对应的物理内存空间;调试弱相关内存的特点可以包括但不限于其占用的内存空间较大、其申请的内存一般应用固定基础业务、功能稳定完善;具体地,当异常进程处理方法应用于监控设备领域时,调试弱相关内存可以包括监控设备的内存池(packet),其中用于存储图片流、视频流等数据;在核心转储文件生成过程中基本不需要访问上述调试弱相关内存中的数据,因此在生成核心转储文件之前提前释放调试弱相关内存也可以成功生成核心转储文件,且对后续利用核心转储文件进行进程异常分析时也不会造成影响。
上述方案,通过识别调试弱相关内存地址,以在后续生成核心转储文件前释放调试弱相关内存地址中的数据,由于调试弱相关内存不会对核心转储以及异常分析造成影响,因此能够使得核心转储成功进行的同时提高核心转储的速度和成功率。
在本申请的一些实施例中,在步骤S111中可以识别出目标进程的若干对调试弱相关内存地址,即若干对调试弱相关内存对应的内存地址;每对内存地址包括起始地址和结束地址,且起始地址小于结束地址;若干对调试弱相关内存地址中可以用于存储相同的调试弱相关内存数据,也可以用于存储不同的调试弱相关内存数据,例如,仍以监控设备领域为例,若干对调试弱相关内存地址均可以用于存储监控设备的内存池中的图片流、视频流等数据,也可以在部分调试弱相关内存地址中存储内存池中的图片流和视频流等数据,在其他部分调试弱相关内存地址中存储内存检测库中的内存使用情况信息,或者其他的占用大内存的缓存块等,这些内容的释放不会影响核心转储文件的生成以及进程异常原因分析。
在一些实施例中,目标进程的调试弱相关内存被配置为可由用户自定义设置;具体地,目标进程的调试弱相关内存可由用户自定义设置,例如,在监控领域,用户可以自定义设置调试弱相关内存为内存池中的图片流、视频流等数据,用户也可以指定其他内容为调试弱相关内存;用户自定义设置调试弱相关内存的内容后,业务进程启动后,会为不同的内容分配不同的内存地址,业务进程根据用户的定义识别调试弱相关内存的内容对应的内存地址,将其动态写入内存配置文件中。
在一些实施例中,在步骤S111中可以识别出目标进程的最多8对调试弱相关内存地址,调试弱相关内存地址可以为3对、5对等,本申请不作限定。
在一些实施例中,起始地址和结束地址位于同一虚拟地址空间区域(vm_struct)中,和/或,内存配置文件中至少定义有与目标进程的异常分析无关的内存地址。
步骤S112:将所述内存地址,写入所述内存配置文件。
由于进程发生严重异常后,在进程真正退出运行之前,将会一直占用内存等资源,直至生成核心转储文件后退出运行;而进程占用的内存越大,核心转储文件的生成速度也越慢,占用内存等资源的时间也越长,不利于其他进程对内存等资源的使用,导致资源利用率降低;而本申请根据内存配置文件中的内存地址,在收到进程退出信号后,生成核心转储文件之前,可以先将内存配置文件中的内存地址对应的内存释放,进而减小了后续生成核心转储文件的大小,减少了核心转储所需的时间,且提高了核心转储的成功率,并且能够加速运行异常进程的设备的异常恢复;同时释放的内存可以被其他进程利用,进而提高了内存资源的利用率。
在一些实施例中,在基于目标进程的运行内存,识别目标进程调试弱相关的内存地址之后,以及在将所述内存地址,写入内存配置文件之前,方法还包括:获取目标进程的进程标识。
进程标识可以是进程号,对于每个不同的进程,可以配置不同的进程号以区分不同的进程;通过获取目标进程的进程标识,确定发生异常的进程。
步骤S112中的将内存地址,写入内存配置文件,可以包括:
步骤S112a:将目标进程的进程标识和调试弱相关的内存地址,绑定并写入内存配置文件。在本申请的一些实施例中,可以建立目标进程的进程标识与目标进程的调试弱相关内存地址的映射,从而可以通过进程标识得到调试弱相关内存地址。
步骤S12:响应于所述进程退出信号,基于所述内存配置文件,释放所述目标进程的部分内存。
核心转储文件一般存储于存储空间(例如SSD)中,当存储空间不足时,系统将禁止生成核心转储文件,核心转储文件越大,其需要的存储空间就越大,成功率就越低;此外,异常进程所占用的内存在该异常进程退出运行之前都不会释放;为了减小核心转储文件大小,本申请在生成核心转储文件之前先释放目标进程的部分内存,不仅减小了目标进程在核心转储的过程中占用的内存从而提高了内存资源的利用率,还减小了核心转储文件的大小,提高了核心转储的成功率和速度,且由于目标进程在核心转储完成后才退出,提高核心转储的速度就是加快了异常进程退出的速度,因此还能够加快运行目标进程的设备从异常状态恢复的速度,提高用户体验。
在一些实施例中,步骤S12中的基于内存配置文件,释放目标进程的部分内存,可以包括:
步骤S121:基于内存配置文件,查询得到目标进程调试弱相关的内存地址;
步骤S122:基于内存地址,释放目标进程的部分内存。
在一些实施例中,步骤S121中的基于内存配置文件,查询得到目标进程调试弱相关的内存地址可以包括:
步骤S121a:获取目标进程的进程标识;
步骤S121b:基于所述进程标识查询所述内存配置文件,得到所述目标进程调试弱相关的内存地址。
请参照图2,图2是本申请配置调试弱相关内存地址的代码实现示意图;如图2所示,通过root@Storage:/#pidof sonia 3812函数配置对应进程的进程号为3812,进程号以进程为单位进程配置,即每一进程拥有单独的进程号;通过函数:root@Storage:/#cat/proc/3812/coredump_vm_filter 7f781a3d1010 7f7a9a3d1010来配置地址对,其中,“7f781a3d1010”为16进制的起始地址,“7f7a9a3d1010”为16进制的结束地址。
在一些实施例中,目标进程可以包括多个线程,可以为每个线程配置一个线程标识;目标进程发生异常可以是目标进程中的一个或者一个以上的线程发生异常,获取目标进程的进程标识时可以同时获取发生异常的线程标识;不同的线程分别使用了不同的物理内存,即不同的线程对应的内存地址是不同的;内存配置文件中可以包括进程标识、线程标识以及线程对应的内存地址,当目标进程发生异常后,系统内核可以发出携带目标进程的进程标识以及异常线程的线程标识的进程退出信号,并根据内存配置文件中线程标识与线程对应的内存地址的映射关系找到发生异常的线程对应的内存地址,将该目标进程的正常运行的线程对应的内存地址释放,保留异常线程对应的内存地址中的数据,并基于该异常线程对应的内存地址中的数据生成核心转储文件后,目标进程退出运行。
上述方案,通过进程退出信号中携带的进程标识和线程标识确定发生异常的线程以及其对应的物理内存地址,将该进程中未发生异常的线程对应的物理内存地址中的数据释放,能够及时释放内存,防止异常进程长时间占用内存导致内存资源利用率低下,且能够提高运行该目标进程的设备从异常状态恢复的速度;由于仅利用目标进程中发生异常的线程对应的数据进程核心转储,能够减小核心转储文件的大小,在提高核心转储速度的同时,防止由于存储空间不足导致的核心转储不成功,进而提高核心转储的成功率。
步骤S13:基于目标进程的剩余内存,生成所述目标进程的核心转储文件。
在本申请中,目标进程的剩余内存是指进程占用的调试弱相关内存被释放后剩余的内存。
在本申请的一些实施例中,可通过压缩方式持久化生成核心转储文件,以进一步减小核心转储文件的大小。生成核心转储文件之后,即可退出目标进程。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
请参阅图3,图3是本申请异常进程处理装置一实施例的框架示意图。异常进程处理装置20包括信号获取模块21、内存释放模块22、和核心转储模块23,信号获取模块21用于获取目标进程启动之后的内存配置文件,并获取所述目标进程发生异常时系统内核输出的进程退出信号;内存释放模块22用于响应于所述进程退出信号,基于所述内存配置文件,释放所述目标进程的部分内存;核心转储模块23用于基于所述目标进程的剩余内存,生成所述目标进程的核心转储文件。
上述方案,在目标进程发生异常时释放目标进程的部分内存,减小核心转储文件的大小,并增大剩余内存,进而能够提高核心转储文件的生成效率,且释放后的内存能供其他进程使用;由于核心转储文件的占用空间减小,进而提高生成核心转储文件的成功率。
在一些实施例中,信号获取模块21还包括地址识别单元,地址识别单元用于响应于所述目标进程启动,基于所述目标进程的运行内存,识别所述目标进程的调试弱相关内存地址;其中,所述内存地址包括至少一对起始地址和结束地址;将所述内存地址,写入所述内存配置文件。
在本申请的一些实施例中,起始地址和结束地址位于同一虚拟地址空间区域中,和/或,内存配置文件中至少定义有与目标进程异常分析无关的内存地址。
在本申请的一些实施例中,信号获取模块21还可以包括标识获取单元,标识获取单元用于获取所述目标进程的进程标识;将所述目标进程的进程标识和调试弱相关的内存地址,绑定并写入所述内存配置文件。
在本申请的一些实施例中,内存释放模块22还包括地址查询单元,地址查询单元用于基于所述内存配置文件,查询得到所述目标进程调试弱相关的内存地址;基于所述内存地址,释放所述目标进程的部分内存。
在本申请的一些实施例中,地址查询单元还用于获取所述目标进程的进程标识;基于所述进程标识查询所述内存配置文件,得到所述目标进程调试弱相关的内存地址。
在本申请的一些实施例中,目标进程还可以包括多个线程,并且可以为每个线程配置一个线程标识;目标进程发生异常可以是目标进程中的一个或者一个以上的线程发生异常,获取目标进程的进程标识时可以同时获取发生异常的线程标识;不同的线程分别使用了不同的物理内存,即不同的线程对应的内存地址是不同的;内存配置文件中可以包括进程标识、线程标识以及线程对应的内存地址,当目标进程发生异常后,系统内核可以发出携带目标进程的进程标识以及异常线程的线程标识的进程退出信号,并根据内存配置文件中线程标识与线程对应的内存地址的映射关系找到发生异常的线程对应的内存地址,将该目标进程的正常运行的线程对应的内存地址释放,保留异常线程对应的内存地址中的数据,并基于该异常线程对应的内存地址中的数据生成核心转储文件后,目标进程退出运行。
上述方案,通过进程退出信号中携带的进程标识和线程标识确定发生异常的线程以及其对应的物理内存地址,将该进程中未发生异常的线程对应的物理内存地址中的数据释放,能够及时释放内存,防止异常进程长时间占用内存导致内存资源利用率低下,且能够提高运行该目标进程的设备从异常状态恢复的速度;由于仅利用目标进程中发生异常的线程对应的数据进程核心转储,能够减小核心转储文件的大小,在提高核心转储速度的同时,防止由于存储空间不足导致的核心转储不成功,进而提高核心转储的成功率。
请参阅图4,图4是本申请电子设备一实施例的框架示意图。电子设备30包括相互耦接的存储器31和处理器32,处理器32用于执行存储器31中存储的程序指令,以实现上述任一异常进程处理方法实施例中的步骤。在一个具体的实施场景中,电子设备30可以包括但不限于:微型计算机、服务器,此外,电子设备30还可以包括笔记本电脑、平板电脑等移动设备,在此不做限定。
具体而言,处理器32用于控制其自身以及存储器31以实现上述任一异常进程处理方法实施例中的步骤。处理器32还可以称为CPU(Central Processing Unit,中央处理单元)。处理器32可能是一种集成电路芯片,具有信号的处理能力。处理器32还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器32可以由集成电路芯片共同实现。
上述方案,在目标进程发生异常时释放目标进程的部分内存,减小核心转储文件的大小,并增大剩余内存,进而能够提高核心转储文件的生成效率,且释放后的内存能供其他进程使用;由于核心转储文件的占用空间减小,进而提高生成核心转储文件的成功率。
请参阅图5,图5为本申请计算机可读存储介质40一实施例的框架示意图。计算机可读存储介质40存储有能够被处理器运行的程序指令401,程序指令401用于实现上述任一异常进程处理方法实施例中的步骤。
上述方案,在目标进程发生异常时释放目标进程的部分内存,减小核心转储文件的大小,并增大剩余内存,进而能够提高核心转储文件的生成效率,且释放后的内存能供其他进程使用;由于核心转储文件的占用空间减小,进而提高生成核心转储文件的成功率。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
若本申请技术方案涉及个人信息,应用本申请技术方案的产品在处理个人信息前,已明确告知个人信息处理规则,并取得个人自主同意。若本申请技术方案涉及敏感个人信息,应用本申请技术方案的产品在处理敏感个人信息前,已取得个人单独同意,并且同时满足“明示同意”的要求。例如,在摄像头等个人信息采集装置处,设置明确显著的标识告知已进入个人信息采集范围,将会对个人信息进行采集,若个人自愿进入采集范围即视为同意对其个人信息进行采集;或者在个人信息处理的装置上,利用明显的标识/信息告知个人信息处理规则的情况下,通过弹窗信息或请个人自行上传其个人信息等方式获得个人授权;其中,个人信息处理规则可包括个人信息处理者、个人信息处理目的、处理方式以及处理的个人信息种类等信息。
Claims (10)
1.一种异常进程处理方法,其特征在于,包括:
获取目标进程启动之后的内存配置文件,并获取所述目标进程发生异常时系统内核输出的进程退出信号;
响应于所述进程退出信号,基于所述内存配置文件,释放所述目标进程的部分内存;所述目标进程的部分内存至少包括所述目标进程的调试弱相关内存;
基于所述目标进程的剩余内存,生成所述目标进程的核心转储文件。
2.根据权利要求1所述的方法,其特征在于,所述获取目标进程启动之后的内存配置文件,包括:
响应于所述目标进程启动,基于所述目标进程的运行内存,识别所述目标进程的调试弱相关内存地址;其中,所述内存地址包括至少一对起始地址和结束地址;
将所述内存地址,写入所述内存配置文件。
3.根据权利要求2所述的方法,其特征在于,所述起始地址和结束地址位于同一虚拟地址空间区域中;
和/或,所述内存配置文件中至少定义有与所述目标进程异常分析无关的内存地址。
4.根据权利要求2所述的方法,其特征在于,在所述基于所述目标进程的运行内存,识别所述目标进程的调试弱相关的内存地址之后,以及在所述将所述内存地址,写入所述内存配置文件之前,所述方法还包括:
获取所述目标进程的进程标识;
所述将所述内存地址,写入所述内存配置文件,包括:
将所述目标进程的进程标识和调试弱相关的内存地址,绑定并写入所述内存配置文件。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述基于所述内存配置文件,释放所述目标进程的部分内存,包括:
基于所述内存配置文件,查询得到所述目标进程的调试弱相关的内存地址;
基于所述内存地址,释放所述目标进程的部分内存。
6.根据权利要求5所述的方法,其特征在于,所述基于所述内存配置文件,查询得到所述目标进程调试弱相关的内存地址,包括:
获取所述目标进程的进程标识;
基于所述进程标识查询所述内存配置文件,得到所述目标进程调试弱相关的内存地址。
7.根据权利要求1所述的方法,其特征在于,所述目标进程的调试弱相关内存被配置为可由用户自定义设置。
8.一种异常进程处理装置,其特征在于,包括:
信号获取模块,用于获取目标进程启动之后的内存配置文件,并获取所述目标进程发生异常时系统内核输出的进程退出信号;
内存释放模块,用于响应于所述进程退出信号,基于所述内存配置文件,释放所述目标进程的部分内存;所述目标进程的部分内存至少包括所述目标进程的调试弱相关内存;
核心转储模块,基于所述目标进程的剩余内存,生成所述目标进程的核心转储文件。
9.一种电子设备,其特征在于,包括相互耦接的存储器和处理器,所述处理器用于执行所述存储器中存储的程序指令,以实现权利要求1至7任一项所述的异常进程处理方法。
10.一种计算机可读存储介质,其上存储有程序指令,其特征在于,所述程序指令被处理器执行时实现权利要求1至7任一项所述的异常进程处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311613960.0A CN117785440A (zh) | 2023-11-28 | 2023-11-28 | 异常进程处理方法和相关装置、设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311613960.0A CN117785440A (zh) | 2023-11-28 | 2023-11-28 | 异常进程处理方法和相关装置、设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117785440A true CN117785440A (zh) | 2024-03-29 |
Family
ID=90393490
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311613960.0A Pending CN117785440A (zh) | 2023-11-28 | 2023-11-28 | 异常进程处理方法和相关装置、设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117785440A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118519783A (zh) * | 2024-07-19 | 2024-08-20 | 浙江大华技术股份有限公司 | 基于嵌入式设备的核心转储方法、装置和计算机设备 |
-
2023
- 2023-11-28 CN CN202311613960.0A patent/CN117785440A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118519783A (zh) * | 2024-07-19 | 2024-08-20 | 浙江大华技术股份有限公司 | 基于嵌入式设备的核心转储方法、装置和计算机设备 |
CN118519783B (zh) * | 2024-07-19 | 2024-10-11 | 浙江大华技术股份有限公司 | 基于嵌入式设备的核心转储方法、装置和计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11605087B2 (en) | Method and apparatus for identifying identity information | |
CN107832100B (zh) | 一种apk插件的加载方法及其终端 | |
CN117785440A (zh) | 异常进程处理方法和相关装置、设备、存储介质 | |
US10896001B1 (en) | Notifications in integrated circuits | |
CN116599917B (zh) | 网口确定方法、装置、设备及存储介质 | |
CN112650558A (zh) | 数据处理方法、装置、可读介质和电子设备 | |
CN106997313B (zh) | 一种应用程序的信号处理方法、系统及终端设备 | |
CN111831411A (zh) | 任务处理方法、装置、存储介质及电子设备 | |
CN114003416B (zh) | 内存错误动态处理方法、系统、终端及存储介质 | |
CN111274060A (zh) | 一种确定内存异常的方法、装置、设备和存储介质 | |
CN114697440B (zh) | 网络管理方法及移动终端 | |
CN109271268B (zh) | 一种基于dpdk的智能容错方法 | |
CN118250206A (zh) | 基于流量回放的高并发压测试方法及相关装置 | |
CN117591327A (zh) | core文件生成方法、装置、电子设备及存储介质 | |
CN116382839A (zh) | 虚拟机的状态检测方法、装置、电子设备及存储介质 | |
CN116841458A (zh) | 存储器读写控制方法、系统、终端及存储介质 | |
CN114138371B (zh) | 配置动态加载方法、装置及计算机设备、存储介质 | |
CN113220495B (zh) | 一种进程异常事件处理方法、装置、电子设备及存储介质 | |
CN110391952B (zh) | 一种性能分析方法、装置及其设备 | |
CN114785714A (zh) | 一种报文传输时延检测方法、存储介质及设备 | |
US11169916B2 (en) | Exception handling in wireless access points | |
CN113468020A (zh) | 内存监控方法、装置、电子设备及计算机可读存储介质 | |
CN112181641A (zh) | 线程处理方法、装置、设备及存储介质 | |
CN118519860B (zh) | 接口调用的控制方法、装置、存储介质和电子设备 | |
CN113867553B (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 |