[发明专利]监测计算机设备中的进程的运行空间的方法以及装置有效
申请号: | 201610825243.8 | 申请日: | 2016-09-14 |
公开(公告)号: | CN107818034B | 公开(公告)日: | 2021-02-12 |
发明(设计)人: | 刘恒;樊辉;侯承舜 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F11/30 | 分类号: | G06F11/30;G06F11/07 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 王仲凯 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 监测 计算机 设备 中的 进程 运行 空间 方法 以及 装置 | ||
本申请实施例公开了一种监测计算机设备中的进程的运行空间的方法以及装置,应用于计算机设备中的操作系统,其方法部分包括:确定被监测函数,被监测函数为进程运行过程中被调用的函数;获得计算机设备中的处理器执行被监测函数前进程的运行空间的内容与执行被监测函数后进程的运行空间的内容;判断执行被监测函数前进程的运行空间的内容与执行被监测函数后进程的运行空间的内容是否一致,若不一致,则确定被监测函数破坏进程的运行空间。即可以及时监测到进程中直接引起运行空间被破坏的具体函数,可以及时监测进程运行空间是否被破坏。
技术领域
本申请涉及计算机技术领域,尤其涉及一种监测计算机设备中的进程的运行空间的方法,装置以及计算机设备。
背景技术
在操作系统中运行的每个进程都有自己独立的栈空间。栈空间是操作系统分配给该进程使用的内存,例如用于保存局部变量,保存进程运行时的函数调用信息以及进程切换时的上下文信息等。然而,在实际进程运行过程中,常常会出现进程的运行空间被破坏的情况。其中进程的运行空间包含进程的栈空间以及进程运行中涉及到的寄存器。以下对常见的进程的运行空间被破坏的情况及原因进行简单介绍:
第一,在一些实时操作系统中,例如VxWorks操作系统、嵌入式操作系统(Operating System Embedded,OSE)等,操作系统为了提高运行效率,通常不进行虚拟内存管理。包括内核态进程在内的所有进程共享同一物理地址空间,进程之间没有地址保护机制,即进程切换时不需要进行虚拟地址空间切换,进程间可以直接共享变量,不需要通过内核态在不同的地址空间之间复制数据。操作系统在运行多个程序时不需要在内核态和用户态之间切换,对进程的管理相当于进行直接函数调用。由于所有的进程均在同一物理地址空间上运行,这对操作系统设置栈空间大小的合理性提出了很高的要求。如果栈空间太大会浪费内存空间,栈空间太小则在内存使用峰值时可能会引起某些进程的栈空间被破坏。例如,由于进程A的栈空间发生了溢出,导致相邻的进程B运行所依赖的栈空间中的内容被改写;若改写的是进程B内局部变量,则可能造成进程B地址访问异常,若改写的是进程B的函数调用指针信息,则可能造成指令访问异常,即进程A导致的栈空间被破坏,表现出来的现象却是进程B运行异常,严重干扰了程序开发人员分析和定位问题。
第二种情况,在当前网络与分布式系统安全中,恶意攻击者往往利用缓冲区溢出这一手段实现非法目的。而在所有类型的缓冲区溢出漏洞中,最为危险的是堆栈溢出。因为恶意攻击者可以利用堆栈溢出,在函数返回时改变返回地址,让进程跳转到任意地址,例如跳转并且执行病毒程序,以获得操作系统的控制权等危险情况。
现有技术通过查询发生切换时栈空间的使用情况来试图避免栈空间被破坏。例如,将钩子程序挂钩到进程切换事件,即操作系统在发生进程切换时,调用钩子程序。当操作系统由进程A切换到进程B时,通过钩子函数查询进程A栈空间的使用情况,或者通过监测函数定时监测某个进程的栈空间是否被破坏。例如,如果进程A的栈空间溢出,则将进程A挂起,并以进程B的身份,构造警告消息,上报监控中心服务器。然而采用上述监测方法的问题在于,当监测到进程A的栈空间被破坏时,破坏已经产生,即很有可能已经对其它的进程的运行空间造成破坏。另外,无论是进程切换时监测到栈空间溢出还是定时监测进程的运行空间被破坏,都不能保证操作系统及时发现进程的运行空间被破坏。
发明内容
本申请实施例提供了一种监测计算机设备中的进程运行空间的方法、装置,以及计算机设备,可以及时监测到计算机设备中的进程中直接引起进程的运行空间被破坏的具体函数,即可以及时监测进程的运行空间是否被破坏,有利于后续操作系统的维护。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610825243.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种缓存分区重构的方法和装置
- 下一篇:电子系统中日志数据的管理