首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到17条相似文献,搜索用时 93 毫秒
1.
内存中的攻击与防御一直是系统安全领域的重要研究课题之一,而堆内存破坏漏洞利用以及防护以其特殊的性质在这场宏大的攻防战中扮演着十分独特的角色。由于堆内存粒度细的缘故,众多系统级的防御难以起到良好的效果。同时,堆内存因受运行时输入影响,行为表现难以预测,也给破坏的侦测增加了难度。本文收集了近年来堆内存攻防领域的优秀博文与论文,回顾了早期的glibc堆利用方法以及之后glibc与系统针对它们的修复方式。之后,本文介绍了近年来流行的针对glibc堆的现代利用方法以及它们绕过系统保护的方式。最后,本文根据所有的利用方法进行了堆利用特点的总结与梳理,针对它们的特性提出相应的减缓措施,并预测了未来堆攻防博弈发展可能的趋势。  相似文献   

2.
软件调试支持是操作系统的重要组成部分,而由于内存管理不善造成的软件BUG占软件故障的很大比例。从内存管理的角度,讨论了Elastos操作系统对软件调试的支持。介绍了Elastos的内存布局和堆管理器算法,然后论述了堆、栈的内存管理,以及针对软件调试所提供的栈保护页设置、堆块前/后内存越界检查等。最后简要地介绍了构件Domain技术和基于伪驱动的内核窥探调试。通过Elastos内存管理的调试支持,可以提高修复和内存管理相关的BUG,增强软件的可靠性,减小软件的开发成本。  相似文献   

3.
葛瑶  李晓风  孔德光 《计算机工程》2008,34(16):159-161
设计与实现一个轻量级的堆内存泄漏检测工具,针对使用C++编码的开源代码,通过重载new, delete运算符,动态跟踪程序在执行过程中堆内存块的分配释放情况,在程序运行结束时给出内存泄露的检测结果。实现时采用红黑树管理所分配的堆内存,理论推导和实验表明其具有较高的效率。  相似文献   

4.
软件调试支持是操作系统的重要组成部分,而由于内存管理不善造成的软件BUG占软件故障的很大比例.从内存管理的角度,讨论了Elastos操作系统对软件调试的支持.介绍了Elastos的内存布局和堆管理器算法,然后论述了堆、栈的内存管理,以及针对软件调试所提供的栈保护页设置、堆块前/后内存越界检查等.最后简要地介绍了构件Domain技术和基于伪驱动的内核窥探调试.通过Elastos内存管理的调试支持,可以提高修复和内存管理相关的BUG,增强软件的可靠性,减小软件的开发成本.  相似文献   

5.
为减少长期运行的Windows应用程序持续堆内存泄漏而造成的系统性能损失,设计并实现了一个运行时自动垃圾回收器RT-AGC。RT-AGC采用传统Mark—Sweep算法的一个变种,对回收触发条件进行改进,使其具有更大的灵活性。利用Windows下应用程序的存储结构和系统API函数,通过扫描可能存储指针变量的区域,RT—AGC可以在应用程序运行时检测并处理内存泄漏,而不需要对目标应用程序重新编译或链接。文中描述了所采用的关键算法流程和主要实现技术,并编写了测试程序对RT—AGC的回收效果进行验证。实验证明可以有效地抑制应用程序的内存泄漏。  相似文献   

6.
聂芬  王运生 《电脑学习》2010,(6):123-124
堆与栈是Java用来在内存中存放数据的地方,不能直接设置堆和栈,由Java自动管理。本文对堆内存与栈内存的分配进行了阐述。  相似文献   

7.
为了在软件工程实践中有效利用运行时存储的空间,对动态堆内存管理的两种技术显式堆管理和自动堆管理分别进行了深入的讨论,分析了这两种技术各自的优点和缺陷,并根据笔者的实践经验,提出了一些解决缺陷的方法。  相似文献   

8.
《软件》2017,(5):15-21
Dijkstra最短路径算法是图论的经典算法。设有向图G有n个顶点和m条弧,则该算法的时间复杂度为Θ(m+n~2)。前人的理论研究表明,若用二叉堆或d堆作为辅助数据结构,可不同程度地降低算法的时间复杂度。但是,这些研究给出的都是比较松弛的上界描述。本文设计了一系列实验,利用二叉堆和d堆实现了该算法的优化,并通过模型拟合回归的方式研究了优化算法的时间复杂度。我们发现,对于稠密图,采用二叉堆优化算法,实际的时间复杂度可降低为m和nlogn的线性函数;而采用d堆,时间复杂度可降低为m、ndlog_dn、nlog_dn、dlog_dn和n的线性函数,其中的d值对复杂度有显著影响,变化趋势呈现某些共同特征,而最优d值位于[5,7]区间。  相似文献   

9.
研究了实时操作系统的内存管理,总结了静态内存分配和动态内存分配的优缺点。介绍了实时操作系统SACOS的特点、体系结构和目标机系统的内存映射。描述了SACOS的动态内存管理,并给出了实现SACOS动态内存管理的基础-堆的分配与回收的详细过程。SACOS的动态内存管理方法可以有效地减少内存管理开销和内存碎片,提高内存的利用率。  相似文献   

10.
本文从Windows操作模式及内存寻址出发,详细剖析了Windows的内存管理机制,即全局堆,局部堆和段内存管理机制,并简单介绍了Windows提供的全局堆?局部堆和段内管理与应用函数。  相似文献   

11.
详细阐述了C++编译器的内存分配形式,给出了堆、栈、文字常量区、寄存器区、静态区、程序代码区的分配策略,分析了内存分配中易产生的问题及导致程序运行出错的原因和解决办法,从而避免程序异常和内存错误,保证程序的健壮性和正确性。  相似文献   

12.
滕腾  李龙澍 《微机发展》2007,17(10):105-108
一般粗粒度并行遗传算法(CGGA)的性能受诸多因素的影响表现不尽如人意。以降低通信代价为主要目标,受物种金字塔模型的启发,设计了一种双阈值限制下的自调整堆结构,并对其堆调整具体操作进行了改进,以期望改进后算法中种群间的通信代价大幅度降低,优化收敛速度,提高算法效率。通过对遗传算法的几个典型测试函数通信量的分析和实验表明,基于该模型的并行遗传算法在降低通信代价、提高收敛速度、优化最终解方面收效明显。  相似文献   

13.
立体堆分类算法设计与分析   总被引:5,自引:0,他引:5       下载免费PDF全文
本文在完全立体二叉树的基础上,提出了立体堆的分类方法,并对它的算法实现进行设计与分析,得出了立体堆分类方法在最坏情况下的时间复杂性,从而减小了堆分类方法的时间复杂性的常数因子。  相似文献   

14.
将结合量值和内存的模型,对堆与栈结构与特点做出比较分析,希望对于高级编程语言(如Java,C,C++等)的学习与内存模型的理解提供一定的帮助。  相似文献   

15.
缓冲区堆溢出攻击是目前Cisco路由器的主要安全威胁。该文分析了Cisco IOS堆管理和保护机制的工作原理,研究其面临堆溢出攻击时的安全脆弱性。在此基础上,探讨完善IOS堆管理和保护机制,增强IOS抵御堆溢出攻击的有效途径。  相似文献   

16.
在序列医学图像的交互式分割过程中,分割速度是交互式算法应用的一个瓶颈.提出了一种基于配对堆的交互式医学图像分割算法.通过使用配对堆实现可降级的优先队列,降低了Live-Wire交互式分割算法从图上大量节点中动态搜索两目标点之间最短路径的时间复杂度.经算法分析以及在放疗计划系统中的应用实验表明,该算法可有效提高序列医学图像的分割效率.  相似文献   

17.
基于四叉堆优先级队列及逆邻接表的改进型Dijkstra 算法   总被引:16,自引:4,他引:12  
在深入分析传统Dijkstra算法的基础上,提出了利用基于k 叉堆的优先级队列对算法进行改进的思想,并对3 种可合并堆进行了比较,从理论上证明了四叉堆在k 叉堆中的最优性,设计了基于四叉堆优先级队列及逆邻接表、顾及路段方向阻抗的改进型Dijkstra最短路径算法,将Dijkstra 算法复杂度降为O(nlogn)。针对GIS-T应用系统的动态特征,提出了Dijkstra 算法的逆序计算方法,通过构造逆序最短路径树,使算法更具灵活性和实用性  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号