研究課題/領域番号 |
19K11904
|
研究種目 |
基盤研究(C)
|
配分区分 | 基金 |
応募区分 | 一般 |
審査区分 |
小区分60050:ソフトウェア関連
|
研究機関 | 東京大学 (2020-2022) 高知工科大学 (2019) |
研究代表者 |
鵜川 始陽 東京大学, 大学院情報理工学系研究科, 准教授 (50423017)
|
研究期間 (年度) |
2019-04-01 – 2023-03-31
|
研究課題ステータス |
中途終了 (2022年度)
|
配分額 *注記 |
4,420千円 (直接経費: 3,400千円、間接経費: 1,020千円)
2022年度: 390千円 (直接経費: 300千円、間接経費: 90千円)
2021年度: 780千円 (直接経費: 600千円、間接経費: 180千円)
2020年度: 1,170千円 (直接経費: 900千円、間接経費: 270千円)
2019年度: 2,080千円 (直接経費: 1,600千円、間接経費: 480千円)
|
キーワード | 不揮発性メモリ / マネージドランタイム / 並行処理 / メモリ管理 / 省電力計算 / 仮想機械 / トランザクション / チェックポインティング / 永続オブジェクト / データベース / ガーベージコレクション / ランタイムシステム / プログラミング言語 / マネージド言語 |
研究開始時の研究の概要 |
本研究では,Java言語のような,仮想機械(VM)が抽象化したメモリをプログラムに提供するプログラミング言語(マネージド言語)のために,不揮発性メモリを用いてシステム再起動後に内容を復元できるヒープ領域(永続化ヒープ)を提供するためのVM実装技術を開発する.1年目は基礎的なデータの収集と,2年目以降のアルゴリズム検証のための実装の準備を行う.2年目は並行ガベージコレクションのアルゴリズムを開発する.3年目以降は非永続化ヒープに作ったデータを永続化ヒープに移動させる仕組みを改良する.この研究では,海外の永続化ヒープの研究を行っているグループと協力する.
|
研究成果の概要 |
本研究では不揮発性メモリをプログラミング言語で高度に抽象化する研究を行った.マネージド言語でプログラマが不揮発性メモリを明示適に扱わずにプログラミングできるようにするために,直行永続化というモデルを使った.本研究では,オブジェクトの複製を不揮発性メモリ上に作ることによりオブジェクトを永続化する方法を提案し,広く使われているJava仮想機械であるOpenJDKに実装した.この手法のオーバヘッドは,同時期に他のグループによって行われた同様の研究と同程度だった.この他,不揮発性メモリ向けのGCや,C++向けの永続化トランザクションライブラリやチェックポインティングライブラリを開発した.
|
研究成果の学術的意義や社会的意義 |
本課題では不揮発性メモリという新しいメモリデバイスを使って,ソフトウェアやハードウェアの障害に備えてソフトウェアが処理しているデータを保存する技術を研究した.不揮発性メモリを明示的に扱うプログラムを記述しなくても,常に必要なデータが自動的に保存され,かつ,保存している間もソフトウェアが実行を続けることができる仕組みを提案し,試作した.この技術はデータベースのようなシステムの実装で利用されることを想定しており,データベースの高速化や,ソフトウェアに合わせた小型のデータベースの構築を容易にすることにつながる.
|