Logo image
應用抽象定義域及擁有者模型於指標誤用之實際檢測
Thesis

應用抽象定義域及擁有者模型於指標誤用之實際檢測

吳昆諭
Masters, 國立清華大學, 資訊工程學系
2008

Abstract

指標分析 指標指向分析 別名分析 靜態分析 抽象解譯法 擁有者群組 Pointer Analysis Points-to Analysis Alias Analysis Static Analysis Abstract Interpretation Owner Sets
It is not easy for programmers to manipulate dynamic data perfectly. Memory errors often lead to non-deterministic system crashes. They are hard to detect at compile time since it is difficult to make sure which memory location a pointer will access by just inspecting the statements. Abstract interpretation is a method which replaces each concrete value set with different abstract value. In our method, the abstract values which replace the original memory address represent different characteristics and can be used to determine whether the usage of the pointer is safe. In order to realize aliasing, we use owner set model to figure out the relationship between pointers and dynamic data. Also, our analyzing method is flow-sensitive and context-sensitive: variables are initialized at the beginning of the program, and then updated by our method during execution. Besides, our method is path-insensitive in order to get the better efficiency and reduce the utility of memory during testing. Furthermore we make some experiments by checking real programs. Our method not only shows some actual pointer misuse, but also provides some detailed information about the warnings to help programmers with debugging.

Metrics

1 Record Views

Details

Logo image