Compiler and method for avoiding unnecessary recompilation
    1.
    发明授权
    Compiler and method for avoiding unnecessary recompilation 失效
    编译器和避免不必要的重新编译的方法

    公开(公告)号:US5854932A

    公开(公告)日:1998-12-29

    申请号:US516321

    申请日:1995-08-17

    IPC分类号: G06F9/44 G06F9/45

    CPC分类号: G06F8/48 G06F8/71

    摘要: A minimal rebuild system and process for minimizing rebuilding of a user's programming project analyzes and records dependencies of object code files compiled in a previous build of the project on classes declared in header files. When rebuilding the project, the system detects and records changes made to the classes and header files since the project was last built. The system then determines whether to recompile the object code files from their respective source code files by comparing the recorded dependencies and changes. If an object code file's dependencies do not intersect the changes, recompiling of the object code file can be omitted. The minimal rebuild system utilizes an approximate representation of the dependencies to yield an efficient system while ensuring that the project is correctly rebuilt.

    摘要翻译: 用于最小化重建用户编程项目的最小重建系统和过程分析和记录在项目的先前版本中编译的对象代码文件的依赖关系,这些对象在头文件中声明的类别。 在重建项目时,系统将检测并记录自上次构建项目以来对类和头文件所做的更改。 系统然后通过比较记录的依赖关系和更改来确定是否从其各自的源代码文件重新编译目标代码文件。 如果目标代码文件的依赖关系与更改不相交,则可以省略对目标代码文件的重新编译。 最小重建系统利用依赖关系的近似表示来产生有效的系统,同时确保项目正确重建。

    Safe exceptions
    2.
    发明授权
    Safe exceptions 有权
    安全例外

    公开(公告)号:US07480919B2

    公开(公告)日:2009-01-20

    申请号:US10602952

    申请日:2003-06-24

    CPC分类号: G06F21/52

    摘要: Safe exceptions detect and intervene in a malicious attack against an application or system component, even in the presence of a coding flaw such as a buffer overrun. A list of all the exception handlers in an image (e.g., a DLL or EXE) is desirably created. When loading the image into a process, the operating system loader finds and stores a reference to this list. When a subsequent attack targets exception handling by creating an attacker provided exception handler, the new attacker provided exception handler is compared to a list of the real exception handlers. The list of real exception handlers is stored in memory, and desirably cannot be modified. In particular, when an exception occurs, the operating system finds the proper exception handler from information on the stack (this may be under attack, so the information is not trusted) and compares it to the previously created read-only reference list. If the exception handler that has occurred is found on the reference list, the exception handler is allowed to execute. Otherwise, the operating system assumes the application is under attack and terminates the process' execution.

    摘要翻译: 安全异常检测并介入对应用程序或系统组件的恶意攻击,即使存在编码缺陷(如缓冲区溢出)。 期望地创建图像中的所有异常处理程序的列表(例如,DLL或EXE)。 当将图像加载到进程中时,操作系统加载程序将查找并存储对此列表的引用。 当后续的攻击通过创建提供异常处理程序的攻击者来攻击异常处理时,将提供异常处理程序的新的攻击者与真正的异常处理程序列表进行比较。 真正的异常处理程序列表存储在存储器中,并且希望不被修改。 特别是,当发生异常时,操作系统从堆栈上的信息中找到正确的异常处理程序(这可能受到攻击,因此信息不受信任),并将其与先前创建的只读引用列表进行比较。 如果在引用列表中找到已发生的异常处理程序,则允许异常处理程序执行。 否则,操作系统假定应用程序受到攻击,并终止进程的执行。