首页    期刊浏览 2024年12月12日 星期四
登录注册

文章基本信息

  • 标题:Java言語への変換によるポインタ演算の安全な実装方式
  • 本地全文:下载
  • 作者:上嶋 祐紀 ; 住井 英二郎
  • 期刊名称:コンピュータ ソフトウェア
  • 印刷版ISSN:0289-6540
  • 出版年度:2009
  • 卷号:26
  • 期号:1
  • 页码:1_139-1_154
  • DOI:10.11309/jssst.26.1_139
  • 出版社:Japan Society for Software Science and Technology
  • 摘要:

    C言語サブセットのプログラムを安全なJava言語のプログラムに変換する方式を実装した.そのような変換のためには,C言語独特の操作であるポインタ演算を,Javaプログラムで安全に模倣する必要がある.これを実現するために,まずC言語のポインタやメモリブロックを表現するJavaのクラスを定義した.次に,これらのクラスを利用するようなJavaへの変換規則を定め,規則に従ってトランスレータを実装した.また,C言語ではポインタと整数を相互にキャストすることが可能なので,整数もポインタと同様のオブジェクトに変換しなければならない.しかし,すべての整数をポインタと同様に表現すると大幅に効率が悪化する.そこで,データフロー解析により,ポインタが代入されない基本型の変数は,Javaの通常の基本型変数に変換する,などの最適化を実装した.9個のベンチマークプログラムで実験したところ,最適化前の変換結果コードは元のCプログラムに対し3.3倍~585倍程度の実行時間がかかったが,最適化後は(元のCプログラムに対し)1.3倍~5.9倍程度に改善した.

国家哲学社会科学文献中心版权所有