WEKO3
アイテム
関数単位疑似逆実行の高速化
https://ipsj.ixsq.nii.ac.jp/records/16907
https://ipsj.ixsq.nii.ac.jp/records/16907cf5181dd-1ef1-47c2-90e9-bf1ad05b89eb
名前 / ファイル | ライセンス | アクション |
---|---|---|
![]() |
Copyright (c) 2000 by the Information Processing Society of Japan
|
|
オープンアクセス |
Item type | Trans(1) | |||||||
---|---|---|---|---|---|---|---|---|
公開日 | 2000-11-15 | |||||||
タイトル | ||||||||
タイトル | 関数単位疑似逆実行の高速化 | |||||||
タイトル | ||||||||
言語 | en | |||||||
タイトル | One - pass Pseudo Reverse Execution of C Programs | |||||||
言語 | ||||||||
言語 | jpn | |||||||
キーワード | ||||||||
主題Scheme | Other | |||||||
主題 | 通常論文 | |||||||
資源タイプ | ||||||||
資源タイプ識別子 | http://purl.org/coar/resource_type/c_6501 | |||||||
資源タイプ | journal article | |||||||
著者所属 | ||||||||
東京大学大学院工学系研究科情報工学専攻 | ||||||||
著者所属 | ||||||||
東京大学大学院工学系研究科 | ||||||||
著者所属(英) | ||||||||
en | ||||||||
Department of Information Engineering, Graduate School of Engineering, The University of Tokyo | ||||||||
著者所属(英) | ||||||||
en | ||||||||
Graduate School of Engineering, The University of Tokyo | ||||||||
著者名 |
丸山, 一貴
× 丸山, 一貴
|
|||||||
著者名(英) |
Kazutaka, Maruyama
× Kazutaka, Maruyama
|
|||||||
論文抄録 | ||||||||
内容記述タイプ | Other | |||||||
内容記述 | デバッガを用いて関数呼び出し単位の疑似逆実行を実現する方法の1つとして,プロファイル用の関数を置き換えることにより,Cプログラムにおける関数呼び出しの入口を捕捉する方法が提案されている.しかし,この方法では関数からリターンするところを捕捉できないので,逆実行時の停止目標点を決定するために,(1)現在の実行点までスタックをシミュレートしながら先頭から再実行し,制御点の移動目標を決め(scan pass),(2)実際に制御点をそこに移すために再度先頭から実行する(re-execute pass)ことになっており,本来不要なパス(1)が存在する.本論文では,コンパイラのアセンブリ言語出力を修正して関数からリターンするところをも捕捉し,スタックのシミュレーションを通常実行時に正確に行うことによって,従来手法では2パスを要していた逆実行時の処理を,1パスで行う手法を提案する.また,通常実行時のオーバヘッドと逆実行時のオーバヘッドを,経過時間の計測によって従来手法と比較する. | |||||||
論文抄録(英) | ||||||||
内容記述タイプ | Other | |||||||
内容記述 | We propose a method of speeding up pseudo reverse execution of C programs by locating the target function call efficiently. In the former method, the profiler function, inserted by the compiler at the prologue of each function is overridden so that the program records necessary informations about stack frame for later use. When reverse execution is instructed, we (1) restart the program from the beginning, traces stack and decides the target point where the control should reach (scan pass), and then (2) restart it again and stop it at that point (re-execute pass).In our new method, we modified an assembly language output of C compiler so that we can catch the exit of function calls. Sowe can simulate stack to know depth of the stack at run time and decide the target point without ``scan pass''.Measurement of the time of reverse execution and the overhead at normal execution and at reverse execution is also included. | |||||||
書誌レコードID | ||||||||
収録物識別子タイプ | NCID | |||||||
収録物識別子 | AA11464814 | |||||||
書誌情報 |
情報処理学会論文誌プログラミング(PRO) 巻 41, 号 SIG09(PRO8), p. 1-7, 発行日 2000-11-15 |
|||||||
ISSN | ||||||||
収録物識別子タイプ | ISSN | |||||||
収録物識別子 | 1882-7802 | |||||||
出版者 | ||||||||
言語 | ja | |||||||
出版者 | 情報処理学会 |