ATOS: Adaptive Program Tracing With Online Control Flow Graph Support
Program tracing solutions (i.e., tracers) can faithfully record runtime information about a program's execution and enable flexible and powerful offline analysis. Therefore, they have become fundamental techniques extensively utilized in software analysis applications. However, few tracers have...
Main Authors: | , , , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
IEEE
2019-01-01
|
Series: | IEEE Access |
Subjects: | |
Online Access: | https://ieeexplore.ieee.org/document/8825867/ |
id |
doaj-40451694ea524fcc8524ddec7a533466 |
---|---|
record_format |
Article |
spelling |
doaj-40451694ea524fcc8524ddec7a5334662021-04-05T17:09:36ZengIEEEIEEE Access2169-35362019-01-01712749512751010.1109/ACCESS.2019.29395668825867ATOS: Adaptive Program Tracing With Online Control Flow Graph SupportHe Sun0https://orcid.org/0000-0001-9216-6443Chao Zhang1He Li2Zhenhua Wu3Lifa Wu4Yun Li5Institute of Command and Control Engineering, Army Engineering University of PLA, Nanjing, ChinaInstitute for Network Sciences and Cyberspace, Tsinghua University, Beijing, ChinaInstitute for Network Sciences and Cyberspace, Tsinghua University, Beijing, ChinaInstitute for Network Sciences and Cyberspace, Tsinghua University, Beijing, ChinaSchool of Computer Science, Nanjing University of Posts and Telecommunications, Nanjing, ChinaInstitute for Network Sciences and Cyberspace, Tsinghua University, Beijing, ChinaProgram tracing solutions (i.e., tracers) can faithfully record runtime information about a program's execution and enable flexible and powerful offline analysis. Therefore, they have become fundamental techniques extensively utilized in software analysis applications. However, few tracers have paid attention to the size of traces and corresponding overheads introduced to offline analysis, as well as the Control Flow Graph (CFG) support. This paper presents ATOS, an efficient tracing solution, to address these issues. It adaptively adjusts the granularity of tracing while conservatively preserving the essential execution information. We implement a prototype of ATOS and evaluate it on several benchmarks. The results show that ATOS can greatly reduce the size of a trace and accelerate offline analysis, while preserving the execution states and supporting existing applications seamlessly. For example, using ATOS, the trace produced by the application CryptoHunt is reduced by 46 times, while the analysis time is reduced by 34 times.https://ieeexplore.ieee.org/document/8825867/Program tracingcontrol flow graphloop optimizationadaptive granularitycheck point |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
He Sun Chao Zhang He Li Zhenhua Wu Lifa Wu Yun Li |
spellingShingle |
He Sun Chao Zhang He Li Zhenhua Wu Lifa Wu Yun Li ATOS: Adaptive Program Tracing With Online Control Flow Graph Support IEEE Access Program tracing control flow graph loop optimization adaptive granularity check point |
author_facet |
He Sun Chao Zhang He Li Zhenhua Wu Lifa Wu Yun Li |
author_sort |
He Sun |
title |
ATOS: Adaptive Program Tracing With Online Control Flow Graph Support |
title_short |
ATOS: Adaptive Program Tracing With Online Control Flow Graph Support |
title_full |
ATOS: Adaptive Program Tracing With Online Control Flow Graph Support |
title_fullStr |
ATOS: Adaptive Program Tracing With Online Control Flow Graph Support |
title_full_unstemmed |
ATOS: Adaptive Program Tracing With Online Control Flow Graph Support |
title_sort |
atos: adaptive program tracing with online control flow graph support |
publisher |
IEEE |
series |
IEEE Access |
issn |
2169-3536 |
publishDate |
2019-01-01 |
description |
Program tracing solutions (i.e., tracers) can faithfully record runtime information about a program's execution and enable flexible and powerful offline analysis. Therefore, they have become fundamental techniques extensively utilized in software analysis applications. However, few tracers have paid attention to the size of traces and corresponding overheads introduced to offline analysis, as well as the Control Flow Graph (CFG) support. This paper presents ATOS, an efficient tracing solution, to address these issues. It adaptively adjusts the granularity of tracing while conservatively preserving the essential execution information. We implement a prototype of ATOS and evaluate it on several benchmarks. The results show that ATOS can greatly reduce the size of a trace and accelerate offline analysis, while preserving the execution states and supporting existing applications seamlessly. For example, using ATOS, the trace produced by the application CryptoHunt is reduced by 46 times, while the analysis time is reduced by 34 times. |
topic |
Program tracing control flow graph loop optimization adaptive granularity check point |
url |
https://ieeexplore.ieee.org/document/8825867/ |
work_keys_str_mv |
AT hesun atosadaptiveprogramtracingwithonlinecontrolflowgraphsupport AT chaozhang atosadaptiveprogramtracingwithonlinecontrolflowgraphsupport AT heli atosadaptiveprogramtracingwithonlinecontrolflowgraphsupport AT zhenhuawu atosadaptiveprogramtracingwithonlinecontrolflowgraphsupport AT lifawu atosadaptiveprogramtracingwithonlinecontrolflowgraphsupport AT yunli atosadaptiveprogramtracingwithonlinecontrolflowgraphsupport |
_version_ |
1721540123486584832 |