Oracle® Developer Studio 12.5:概述

退出打印视图

更新时间: 2016 年 6 月
 
 

Oracle Developer Studio 代码安全性检查-Discover ADI

discover –i ADI 工具(或 libdiscoverADI.so 库)是 Oracle Developer Studio 中的一项安全功能,它利用 SPARC M7 硬件,使得修复错误代码更加简单。它通过较早地定位错误代码来防止恶意软件攻击及其他内存损坏问题。

为了防止此类内存损坏,discover ADI 插入了生产代码,检查分配给应用程序内存指针的版本号或颜色以及与内容的版本号关联的指针。如果指针版本号与内容版本号不匹配,discover ADI 会报告错误。此硬件协助式检查允许用户检测缓冲区溢出、释放的指针和过时的指针等错误。discover ADI 随后会报告确切的源代码行(使用 –g 选项进行编译时)和错误的堆栈跟踪,以便用户可以修复错误代码,然后再继续执行。此外,还会报告错误的分配和自由点堆栈跟踪。无需代码检测或重建步骤。有关更多信息,请参见Oracle Developer Studio 12.5:Discover 和 Uncover 用户指南 中的 使用芯片保护内存 (Silicon Secured Memory, SSM) 的硬件辅助检查

如果应用程序具有自己的内存分配器并且不调用 malloc(),则用户可以使用 discover ADI 工具提供的新 API。要查看这些新 API,请参见Oracle Developer Studio 12.5:Discover 和 Uncover 用户指南 中的 定制内存分配器和 discover ADI 库libdiscoverADI.so 库或 libaidiplugin.3 手册页中也会提供这些 API。