{"links":{},"metadata":{"_oai":{"id":"oai:ipsj.ixsq.nii.ac.jp:00081568","sets":["934:935:6750:6751"]},"path":["6751"],"owner":"11","recid":"81568","title":["Dependable FFI:ディペンダブルな外部機能呼び出し機構の設計と実装"],"pubdate":{"attribute_name":"公開日","attribute_value":"2012-03-28"},"_buckets":{"deposit":"bb2d8dfe-1b75-4a03-9406-90eb6651156c"},"_deposit":{"id":"81568","pid":{"type":"depid","value":"81568","revision_id":0},"owners":[11],"status":"published","created_by":11},"item_title":"Dependable FFI:ディペンダブルな外部機能呼び出し機構の設計と実装","author_link":["0","0"],"item_titles":{"attribute_name":"タイトル","attribute_value_mlt":[{"subitem_title":"Dependable FFI:ディペンダブルな外部機能呼び出し機構の設計と実装"},{"subitem_title":"Dependable FFI: Design and Implementation of Dependable Foreign Function Interface","subitem_title_language":"en"}]},"item_keyword":{"attribute_name":"キーワード","attribute_value_mlt":[{"subitem_subject":"発表概要","subitem_subject_scheme":"Other"}]},"item_type_id":"3","publish_date":"2012-03-28","item_3_text_3":{"attribute_name":"著者所属","attribute_value_mlt":[{"subitem_text_value":"横浜国立大学大学院"},{"subitem_text_value":"横浜国立大学大学院"},{"subitem_text_value":"横浜国立大学大学院"}]},"item_3_text_4":{"attribute_name":"著者所属(英)","attribute_value_mlt":[{"subitem_text_value":"Graduate School of Yokohama National University","subitem_text_language":"en"},{"subitem_text_value":"Graduate School of Yokohama National University","subitem_text_language":"en"},{"subitem_text_value":"Graduate School of Yokohama National University","subitem_text_language":"en"}]},"item_language":{"attribute_name":"言語","attribute_value_mlt":[{"subitem_language":"jpn"}]},"item_publisher":{"attribute_name":"出版者","attribute_value_mlt":[{"subitem_publisher":"情報処理学会","subitem_publisher_language":"ja"}]},"publish_status":"0","weko_shared_id":-1,"item_file_price":{"attribute_name":"Billing file","attribute_type":"file","attribute_value_mlt":[{"url":{"url":"https://ipsj.ixsq.nii.ac.jp/record/81568/files/IPSJ-TPRO0501018.pdf"},"date":[{"dateType":"Available","dateValue":"2014-03-28"}],"format":"application/pdf","billing":["billing_file"],"filename":"IPSJ-TPRO0501018.pdf","filesize":[{"value":"110.2 kB"}],"mimetype":"application/pdf","priceinfo":[{"tax":["include_tax"],"price":"0","billingrole":"5"},{"tax":["include_tax"],"price":"0","billingrole":"6"},{"tax":["include_tax"],"price":"0","billingrole":"15"},{"tax":["include_tax"],"price":"0","billingrole":"44"}],"accessrole":"open_date","version_id":"c3952fb8-3bc1-4f93-8c66-8bee9cfc3e0f","displaytype":"detail","licensetype":"license_note","license_note":"Copyright (c) 2012 by the Information Processing Society of Japan"}]},"item_3_creator_5":{"attribute_name":"著者名","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"中田, 晋平"},{"creatorName":"若森, 拓馬"},{"creatorName":"倉光, 君郎"}],"nameIdentifiers":[{}]}]},"item_3_creator_6":{"attribute_name":"著者名(英)","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"Shinpei, Nakata","creatorNameLang":"en"},{"creatorName":"Takuma, Wakamori","creatorNameLang":"en"},{"creatorName":"Kimio, Kuramitsu","creatorNameLang":"en"}],"nameIdentifiers":[{}]}]},"item_3_source_id_9":{"attribute_name":"書誌レコードID","attribute_value_mlt":[{"subitem_source_identifier":"AA11464814","subitem_source_identifier_type":"NCID"}]},"item_resource_type":{"attribute_name":"資源タイプ","attribute_value_mlt":[{"resourceuri":"http://purl.org/coar/resource_type/c_6501","resourcetype":"journal article"}]},"item_3_source_id_11":{"attribute_name":"ISSN","attribute_value_mlt":[{"subitem_source_identifier":"1882-7802","subitem_source_identifier_type":"ISSN"}]},"item_3_description_7":{"attribute_name":"論文抄録","attribute_value_mlt":[{"subitem_description":"近年,ソフトウェアシステムは複数のコンポーネントや機能から構成され,協調,分散的に動作することが特徴の1つとしてあげられる.このため,外部の機能をつなぎ合わせてプログラムロジックを記述するためによく用いられるスクリプト言語は他の言語で実装された機能を呼び出すためのインタフェースである,Foreign Function Interface(FFI)が必要不可欠である.しかし,近代的な環境では,利用している外部のコンポーネントや機能がなんらかの理由で問題を起こして,エラーを呼び出し元のプログラムへ返さずに終了してしまった場合などに,呼び出し元のプログラムは待機状態に陥るなどしてしまい,問題が伝搬してしまう可能性がある.このため,外部のコンポーネントを多く利用するスクリプト言語のFFIでは,機能の張り合わせ(グルー)以外にも,外部機能で障害がおこった際に適切にそれを検出し,言語側に伝える機能をもっていることが望ましい.そこで我々は,もっと信頼性高く外部機能を呼び出すFFIの設計を研究目的とした.本発表では,まず,従来のFFIを拡張し,他言語の機能だけでなく,プログラムから外部の機能を呼び出す際に用いるインタフェースとしてFFIの再定義を行う.次に,外部機能が問題をおこしていることを明確にするため,FFIでロギングを行うことを提案する.さらに,外部機能が問題をおこしているかどうか積極的にモニタリングし,ログを記録するコンポーネントを設計した.そしてこれらの機能をプログラマから利用するためのDependable FFIを設計し,プロトタイプ実装を行った.","subitem_description_type":"Other"}]},"item_3_description_8":{"attribute_name":"論文抄録(英)","attribute_value_mlt":[{"subitem_description":"Flexibility of software is a key part of resilient software. Scripting technology will help us to improve the software flexibility from the development phase to the operational phase. We focus on the interaction between components, since the nature of scripting language serves as a glue for different components. Existing scripting languages; however, have little concern about this interaction. Our key idea is automated tracking of interactions between components. Therefore, in this presentation, we propose to include an observation point at the service interface into the scripting language, which we call Dependable FFI.","subitem_description_type":"Other"}]},"item_3_biblio_info_10":{"attribute_name":"書誌情報","attribute_value_mlt":[{"bibliographicPageEnd":"39","bibliographic_titles":[{"bibliographic_title":"情報処理学会論文誌プログラミング(PRO)"}],"bibliographicPageStart":"39","bibliographicIssueDates":{"bibliographicIssueDate":"2012-03-28","bibliographicIssueDateType":"Issued"},"bibliographicIssueNumber":"1","bibliographicVolumeNumber":"5"}]},"relation_version_is_last":true,"weko_creator_id":"11"},"created":"2025-01-18T23:35:43.728102+00:00","updated":"2025-01-21T19:19:08.083843+00:00","id":81568}