Submit Search
Upload
2004年度IPA未踏ソフトウェア事業 情報家電プロトコルスタックの開発
•
0 likes
•
591 views
Satoshi Konno
Follow
2004年度IPA未踏ソフトウェア事業 最終報告会資料
Read less
Read more
Software
Report
Share
Report
Share
1 of 14
Download now
Download to read offline
Recommended
ESPer2006 情報家電プロトコルスタック開発の展開
ESPer2006 情報家電プロトコルスタック開発の展開
Satoshi Konno
2.プログラミングの基礎
2.プログラミングの基礎
openrtm
NATとNAPTを混在するのはやめような
NATとNAPTを混在するのはやめような
nemumu
NAT超えとはなんぞや
NAT超えとはなんぞや
nemumu
Jap1
Jap1
Naveen N
2015年度GPGPU実践プログラミング 第3回 GPGPUプログラミング環境
2015年度GPGPU実践プログラミング 第3回 GPGPUプログラミング環境
智啓 出川
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
VirtualTech Japan Inc.
コンテナーによるIT基盤変革 - IT infrastructure transformation -
コンテナーによるIT基盤変革 - IT infrastructure transformation -
日本ヒューレット・パッカード株式会社
Recommended
ESPer2006 情報家電プロトコルスタック開発の展開
ESPer2006 情報家電プロトコルスタック開発の展開
Satoshi Konno
2.プログラミングの基礎
2.プログラミングの基礎
openrtm
NATとNAPTを混在するのはやめような
NATとNAPTを混在するのはやめような
nemumu
NAT超えとはなんぞや
NAT超えとはなんぞや
nemumu
Jap1
Jap1
Naveen N
2015年度GPGPU実践プログラミング 第3回 GPGPUプログラミング環境
2015年度GPGPU実践プログラミング 第3回 GPGPUプログラミング環境
智啓 出川
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
Yahoo!Japan北米DCでOCPのツボをみせてもらってきました - OpenStack最新情報セミナー 2016年5月
VirtualTech Japan Inc.
コンテナーによるIT基盤変革 - IT infrastructure transformation -
コンテナーによるIT基盤変革 - IT infrastructure transformation -
日本ヒューレット・パッカード株式会社
Microservices and Servcie Mesh on Azure
Microservices and Servcie Mesh on Azure
Tsukasa Kato
gRPCurlDotNet.pptx
gRPCurlDotNet.pptx
Takao Tetsuro
GTC Japan 2017
GTC Japan 2017
Hitoshi Sato
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
Ryuuta Tsunashima
より高品質なメディアサービスを目指す ABEMA の技術進化
より高品質なメディアサービスを目指す ABEMA の技術進化
Yusuke Goto
45分で理解する 最近のスパコン事情 斉藤之雄
45分で理解する 最近のスパコン事情 斉藤之雄
Yukio Saito
Infrastructure of Pathtraq
Infrastructure of Pathtraq
Kazuho Oku
El text.tokuron a(2019).katagiri
El text.tokuron a(2019).katagiri
RCCSRENKEI
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
Akira Inoue
Open capi meetup20180409 (revised)
Open capi meetup20180409 (revised)
Yutaka Kawai
[db tech showcase Tokyo 2016] D13: NVMeフラッシュストレージを用いた高性能高拡張高可用なデータベースシステムの実現方...
[db tech showcase Tokyo 2016] D13: NVMeフラッシュストレージを用いた高性能高拡張高可用なデータベースシステムの実現方...
Insight Technology, Inc.
MozOpenHardプロジェクトと そのコア技術について
MozOpenHardプロジェクトと そのコア技術について
Takagi Koichi
GPU-FPGA協調プログラミングを実現するコンパイラの開発
GPU-FPGA協調プログラミングを実現するコンパイラの開発
Ryuuta Tsunashima
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
Yasuhiro Matsuo
第1回 配信講義 計算科学技術特論A (2021)
第1回 配信講義 計算科学技術特論A (2021)
RCCSRENKEI
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Shingo Kitayama
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそば
Yoshihiro Nakajima
ソフトウェア技術者から見たFPGAの魅力と可能性
ソフトウェア技術者から見たFPGAの魅力と可能性
Kenichiro MITSUDA
MPLS Japan 2019 : Data & Control Plane を繋ぐ API
MPLS Japan 2019 : Data & Control Plane を繋ぐ API
Kentaro Ebisawa
Webアプリケーションによる電源管理システムのご紹介
Webアプリケーションによる電源管理システムのご紹介
npsg
More Related Content
Similar to 2004年度IPA未踏ソフトウェア事業 情報家電プロトコルスタックの開発
Microservices and Servcie Mesh on Azure
Microservices and Servcie Mesh on Azure
Tsukasa Kato
gRPCurlDotNet.pptx
gRPCurlDotNet.pptx
Takao Tetsuro
GTC Japan 2017
GTC Japan 2017
Hitoshi Sato
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
Ryuuta Tsunashima
より高品質なメディアサービスを目指す ABEMA の技術進化
より高品質なメディアサービスを目指す ABEMA の技術進化
Yusuke Goto
45分で理解する 最近のスパコン事情 斉藤之雄
45分で理解する 最近のスパコン事情 斉藤之雄
Yukio Saito
Infrastructure of Pathtraq
Infrastructure of Pathtraq
Kazuho Oku
El text.tokuron a(2019).katagiri
El text.tokuron a(2019).katagiri
RCCSRENKEI
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
Akira Inoue
Open capi meetup20180409 (revised)
Open capi meetup20180409 (revised)
Yutaka Kawai
[db tech showcase Tokyo 2016] D13: NVMeフラッシュストレージを用いた高性能高拡張高可用なデータベースシステムの実現方...
[db tech showcase Tokyo 2016] D13: NVMeフラッシュストレージを用いた高性能高拡張高可用なデータベースシステムの実現方...
Insight Technology, Inc.
MozOpenHardプロジェクトと そのコア技術について
MozOpenHardプロジェクトと そのコア技術について
Takagi Koichi
GPU-FPGA協調プログラミングを実現するコンパイラの開発
GPU-FPGA協調プログラミングを実現するコンパイラの開発
Ryuuta Tsunashima
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
Yasuhiro Matsuo
第1回 配信講義 計算科学技術特論A (2021)
第1回 配信講義 計算科学技術特論A (2021)
RCCSRENKEI
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Shingo Kitayama
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそば
Yoshihiro Nakajima
ソフトウェア技術者から見たFPGAの魅力と可能性
ソフトウェア技術者から見たFPGAの魅力と可能性
Kenichiro MITSUDA
MPLS Japan 2019 : Data & Control Plane を繋ぐ API
MPLS Japan 2019 : Data & Control Plane を繋ぐ API
Kentaro Ebisawa
Webアプリケーションによる電源管理システムのご紹介
Webアプリケーションによる電源管理システムのご紹介
npsg
Similar to 2004年度IPA未踏ソフトウェア事業 情報家電プロトコルスタックの開発
(20)
Microservices and Servcie Mesh on Azure
Microservices and Servcie Mesh on Azure
gRPCurlDotNet.pptx
gRPCurlDotNet.pptx
GTC Japan 2017
GTC Japan 2017
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
より高品質なメディアサービスを目指す ABEMA の技術進化
より高品質なメディアサービスを目指す ABEMA の技術進化
45分で理解する 最近のスパコン事情 斉藤之雄
45分で理解する 最近のスパコン事情 斉藤之雄
Infrastructure of Pathtraq
Infrastructure of Pathtraq
El text.tokuron a(2019).katagiri
El text.tokuron a(2019).katagiri
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
Open capi meetup20180409 (revised)
Open capi meetup20180409 (revised)
[db tech showcase Tokyo 2016] D13: NVMeフラッシュストレージを用いた高性能高拡張高可用なデータベースシステムの実現方...
[db tech showcase Tokyo 2016] D13: NVMeフラッシュストレージを用いた高性能高拡張高可用なデータベースシステムの実現方...
MozOpenHardプロジェクトと そのコア技術について
MozOpenHardプロジェクトと そのコア技術について
GPU-FPGA協調プログラミングを実現するコンパイラの開発
GPU-FPGA協調プログラミングを実現するコンパイラの開発
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
第1回 配信講義 計算科学技術特論A (2021)
第1回 配信講義 計算科学技術特論A (2021)
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそば
ソフトウェア技術者から見たFPGAの魅力と可能性
ソフトウェア技術者から見たFPGAの魅力と可能性
MPLS Japan 2019 : Data & Control Plane を繋ぐ API
MPLS Japan 2019 : Data & Control Plane を繋ぐ API
Webアプリケーションによる電源管理システムのご紹介
Webアプリケーションによる電源管理システムのご紹介
2004年度IPA未踏ソフトウェア事業 情報家電プロトコルスタックの開発
1.
CyberGarage 情報家電プロトコルスタックの開発 最終報告会資料 今野 賢 (Satoshi
Konno) skonno@cybergarage.org http://www.cybergarage.org 2005年8月24日 2004年度IPA未踏ソフトウェア事業
2.
CyberGarage応募時目標設定 ■概要 組み込みシステム向け情報家電プロトコルスタックとしてUPnPを実装する。 開発は、将来の組込みシステムの高性能化を見越した高機能版と、最低限 機能を有する軽量版の実装を目標とする。 C++およびJava版のUPnPプロトコルスタックの開発経験を活かし、軽量なUPnP プロトコルスタックを開発する。実装はC言語を想定しており、簡便さをそのままに、 実行速度およびプログラムサイズを考慮しながらデバイス回りの必要最低限の 機能から実装する。手順として、WindowsおよびUnixプラットフォームで基本 機能実装確認後、各プラットフォームへの移植する ■高機能版 既に開発済みC++ 版のUPnPプロトコルスタックをベースに、XMLパ-サー等の 軽量化および移植作業をベースに実装する。 ■軽量版 ■対応プラットフォーム 組み込み系 :
T-Engine、μITRON、BTRON PC系 : Windows(WIN32)、Linux、MacOSX
3.
CyberGaragePM助言内容/成果 ■省サイズ オブジェクトサイズを100KBとの目標設定に向けて設計および 実装作業を進めたが、UPnP全機能を実装の対象と方向転換 した要因もあり、結果として最終的なオブジェクトサイズは モジュール選択(コンパイルオプション)により軽量版実績は 230KB~180KBにて完了。 他ベンダーのC言語による実装調査の結果も、200KB程度であり、ある程度妥当な 結果と思われる。ただし、ライブラリ関数領域節約のため、可能なものはマクロ展開 したため、ある程度の可読性は犠牲となった。 ■モジュール化 ユーザー側で、組み込みたい機能を取捨選択できるよう軽量版に関してはコンパイル オプションによるモジュール指定を可能とした。 UPnPデバイス(サーバ)機能/コントロールポイント(クライアント)機能部に大別し、UPnP デバイス機能も、開発者が取捨選択可能なようコンパイルオプションを導入した。 軽量版 230KB コンパイルオプション コントロールポイント機能無効 × ○
○ ○ ○ デバイス購読機能無効 × × ○ ○ ○ デバイスアクション機能無効 × × × × ○ デバイス問い合わせ機能無効 × × × ○ ○ オブジェクトサイズ 227KB 211KB 194KB 187KB 178KB 有効:○ 無効:×
4.
CyberGarage実装進捗状況 ■実装進捗率 No 機能 詳細
高機能版 軽量版 1 基本設計 - 100% 2 SSDP 100% 100% 3 GENA 100% 100% 4 SOAP 100% 100% 5 XML 100% 100% 6 HTTP 100% 100% 7 UPnP 100% 100% 8 入出力 100% - 9 ネットワーク 100% 100% 10 時刻管理 時間管理仮想化関数 100% 100% 11 タスク タスク管理仮想化関数 100% 100% 12 排他制御 排他制御管理仮想化関数 100% 100% 13 文字操作 文字列操作、トークン分割関数等 100% 100% 14 データ構造 ベクタ構造・双方向リスト構造関数等 100% 100% UPnPデバイス発見/応答サーバ・クライアント機能 UPnPサービス要求/応答サーバ・クライアント機能 SOAPメッセージサーバ・クライアント機能 XMLパーサー/ツリー構造操作機能 HTTP/1.1(RFC2616)サーバ・クライアント機能 UPnPデバイス/コントロールポイント関連機能等 ファイル入出力共通関数 / Java互換入出力ストリーム ソケット(TCP/UDP)仮想化関数、URL処理機能等 基本的実装は 100%作業完了
5.
CyberGarage移植進捗概要 ■プラットフォーム別進捗率 No プラットフォーム高機能版 軽量版
備考 1 WindowsXP 100% 100% 2 Unix 100% 100% 3 MacOSX 100% 100% 4 T-Engine 100% 100% 5 μITRON 95% 95% ミスポ製シュミレータにて作業中 6 BTRON 100% 100% 一部機能実装不可 7 WindowsCE - 100% 実施計画書対応予定外 TCP/UDPプロトコルスタックはKASAGO製 高機能版および軽量版に関する全機能実装および移植作業は完了。主としてこれらの プラットフォームにて各機能のテストを実施。 ■WindowsXP/Unix/MacOSX ■T-Engine ■μITRON 高機能版/軽量版共に、全プラットフォーム依存部をμITRONの関数にて置き換え作業、 タスク/同期関連機能部の動作確認完了。ネットワーク機能部につき動作確認中。 ■BTRON 開発途中にOSとしてマルチキャスト機能の不備等の問題があったため、作業上は コンパイルを通すレベルにて進捗。将来的にはOSが拡張されれば即時に対応可。 高機能版および軽量版に関する全機能実装および移植作業は完了。主としてこれらの プラットフォームにて各機能のテストを実施。 オープンソース公開の成果として、ユーザー貢献および協力作業にて軽量版の 移植作業完了。 ■WindowsCE 済 済 済 済 μITRON移植作業中
6.
CyberGarage ■対象ユーザ 成果公開 UPnPによる家庭内ネットワークまたは組み込み機器の相互接続環境構築の必要性の ある開発者が主対象。対象者は、個人および企業、商用・非商用を問わない。 またオープンソースであるため、各プラットフォーム移植、HTTPクライアント/サーバー 実装等の教育的側面もあり。 ■試験公開 No 代表者 所属
貢献内容 1 Aapo Makela Nokia 2 Johannes Gutlebe CERN 3 Theo Beisch 未確認 4 Rosfran Borges 未確認 軽量版評価 軽量版評価/設計アドバイス 軽量版評価/libxml2(XMLパーサ)対応/バグフィックス 軽量版評価/WindowsCE対応/バグフィックス 本公開に先立ち、軽量版を下記ユーザーに試験公開した。試験公開の結果として 以下のような貢献があり、本成果物に反映させた。 No 成果物 URL 1 高機能版 http://www.cybergarage.org/net/upnp/cc/index.html 2 軽量版 http://www.cybergarage.org/net/upnp/c/index.html ■本公開 高機能版/軽量版共にオープンソース(BSDライセンス)として公開予定。SourceForgeとの 併用を予定しており、同サイトの承認が取れ次第下記URLにて公開予定。
7.
CyberGarage特徴(1) ■オブジェクト指向 BOOL upnp_clock_actionreceived(CgUpnpAction *action) { char
*currTime = …..; char *actionName = cg_upnp_action_getname(action); CgUpnpArgument *currTimeArg = cg_upnp_action_getargumentbyname(action, "CurrentTime"); cg_upnp_argument_setvalue(currTimeArg, sysTimeStr); return TRUE; } <?xml version="1.0"?> <scpd xmlns="urn:schemas-upnp-org:service-1-0" > …. <actionList> <action> <name>GetTime</name> …... </action> </actionList> </scpd> <?xml version="1.0" ?> <root xmlns="urn:schemas-upnp-org:device-1-0"> …… <device> <deviceType>urn:schemas-upnp-org:device:clock:1</deviceType> …… </device> </root> /**** デバイス初期化 ****/ CgUpnpDevice *clockDev = cg_upnp_device_new(); /**** デバイス定義情報設定 ****/ cg_upnp_device_parsedescription(clockDev, CLOCK_DEVICE_DESC, strlen(CLOCK_DEVICE_DESC)); /**** サービス取得/定義情報設定 ****/ CgUpnpService *timeService = cg_upnp_device_getservicebyname(clockDev, "urn:schemas-upnp-org:service:timer:1"); cg_upnp_service_parsedescription(timeService, CLOCK_SERVICE_DESC, strlen(CLOCK_SERVICE_DESC); /**** アクション処理関数設定 ****/ CgUpnpAction *getAction = cg_upnp_service_getactionbyname(timeService, “GetTime”); cg_upnp_device_setactionlistener(clockDev, upnp_clock_actionreceived); /**** デバイス開始 ****/ cg_upnp_device_start(clockDev); …… /**** デバイス停止 ****/ cg_upnp_device_stop(clockDev); /**** デバイス解放 ****/ cg_upnp_device_delete(clockDev); UPnP機能を抽象化/隠蔽。開発者はデバイスXML定義およびアクション関数を作成する だけであり、既存アプリケーションのUPnP対応も容易。 UPnPデバイス定義(CLOCK_DEVICE_DESC) UPnPサービス定義(CLOCK_SERVICE_DESC) アクション関数(upnp_clock_actionreceived)
8.
CyberGarage特徴(2) ■軽量性 組み込み系であるT-Engine/μITRONを対象プラットフォームとし、高機能版を含めて軽量性 を重視した。高機能版は従来より軽量化し、軽量版のオブジェクトサイズは220KB。 本成果物を含め、開発者はC/C++/Javaの多様プログラム言語の選択が可能である。また 各プログラミング言語版の基本設計は共通であり、その移行は容易である。 ■多言語対応 C++版 Java版 C言語版 using
namespace CyberLink; Device *dev = new Device(); dev->loadDescriptoin(….); dev->setActionListener(dev); dev->setQueryListener(dev); dev->start(); …… dev->stop(); import org.cybergarage.upnp; Device dev = new Device(); dev.loadDescripton(……); dev. setActionListener(dev); dev. setQueryListener(dev); dev.start(); …… dev.stop(); CgUpnpDevice *dev = cg_upnp_device_new(); cg_upnp_device_parsedescription(dev, ….); cg_upnp_device_setactionlistener(dev, …); cg_upnp_device_setquerylistener(dev, …); cg_upnp_device_start(dev); …… cg_upnp_device_stop(dev); ■移植性 一般的なWindows(WIN32)やLinuxプラットフォームだけではなく、Unix全般および 組み込み系のT-Engine/μITRONを含む、幅広いプラットフォームを対象としている。 機種依存部は基本機能部のみで、他プラットフォームへの移植対応も容易 ■オープンソース オープンソースの一般的な特徴については割愛するが、公開ライセンスとしてBSDを 選択しているため、商用/非商用を問わず同ライセンス下で自由に活動できる。 また、試験公開時にもユーザーからの貢献があり、今後も完成度向上に向けて、 優秀な技術者の協力が得られる点も魅力である。
9.
CyberGarage動作環境 TCP/IPプロトコルスタックとしてKasago for T-Engineが必須。本プロトコルスタックの選定 理由は、マルチキャストに対応していた為。開発ではパーソナルメディア社製の「T-Engine/ SH7727開発キット」を選択。 ■T-Engine ■μITRON ミスポ製μITRONおよび同社のTCP/IPプロトコルスタックが必要。本製品の選定選定理由 は、ITRON
TCP/IP API仕様を独自拡張してマルチキャストに対応していた為。開発では 同社の「NORTi Simulator」を選択。 WindowsXPにて動作確認。基本的にはWIN32プラットフォームでの動作は問題ないと 思われる。WindowsCEに関しても、動作確認済み。 ■Windows/WindowsCE ■UNIX Automakeによるソースコンパイルが必要。開発環境としては、主にFedoraCore1および MacOSXにて動作確認。 ■BTRON パーソナルメディア社製の超漢字4を開発環境として選択。マルチキャスト機能の不備に より、コンパイル動作確認程度。ただし、タスク/同期等移植可能な部分は全て作業済み。
10.
CyberGarageデモストレーション ■システム構成 UPnP Clock Sample T-Engine(SH7727) WindowsXP
11.
CyberGarage開発全体の苦労点 T-Engineではシリアルコンソール経由のソフトウェアデバッガでの開発環境であったため デバッグ作業に時間がかかった。高価ではあるが、もう少し開発機材を充実すべきで あったかもしれない。 ■デバッグ環境 ■サポート体制 T-Engineベンダーでは購入後1ヶ月のみの技術サポートしかなく、実質的なサポートが 受けられなかった。μITRONベンダーに関しては、回答に時間がかかり、かつ中々要領が 得られなかった。 基本的にベンダー頼りの開発形態となり、迅速な開発を進める上で、一般公開された 情報が豊富に、個人でも参加できるユーザー会等が存在すると有難かった。 ■機種選定 各組み込みプラットフォームの事前情報ががなく、資料集めにはベンダー個別に 問い合わせの必要があり、時間を要した。 特にT-Engine/μITRONではマルチキャストに対応しているTCP/IPプロトコルスタックの 選定に要領が得られず、こちらの質問に対するベンダー担当者からの回答がない/ 誤った回答である場合もあり、選定に時間がかかる要因となった。
12.
CyberGarage今後の展開 今後もオープンソース公開によるユーザー要望の反映およびバグフィックス等により 完成度を上げる活動を継続予定。 ■プラットフォーム拡充 ■オープンソース活動の継続 ■他プログラミング言語対応 特定プラットフォームでメジャーな言語、スクリプト言語への対応を予定。具体的には Objective-C(MacOSX)やRubyへの対応を予定している。特にスクリプト言語に関して は、下記ビジュアル言語実行エンジンとしての布石としたい。 より低価格で処理性能の低いプラットフォームへ対応したい。近々はEmbeddedLinux、 将来的にはワンチップマイコンレベルまで視野に入れ拡充を予定している。 ■情報家電ビジュアル言語 家庭内の情報家電を相互接続して定型処理 (例:ドアが開けばエアコンが動作)等の設定が、 初心者でも簡単に設定できるようなビジュアル 言語の作成を予定している。 右図は以前開発した3Dコンテンツ用ビジュアル 言語だが、データフローを主として オブジェクト指向的な言語を開発したい。
13.
CyberGarageまとめ 本成果物の公開により、対応プラットフォーム(WindowsCE)、 対応XMLパーサ(libxml2)等の、実施計画書にはない機能 追加の結果となった。 ■μITRON移植作業遅延 ■オープンソースによるユーザー貢献 μITRONのネットワーク関連部に関して現在も作業中である。進捗遅延の要因としては 他工程(主としてT-Engine移植作業)増大、ネットワーク部の理解度不足(固定リソースや TCP/UDP関数分離)および開発環境/ベンダーサポート体制の不備等である。 ■BTRON事前調査不備 超漢字4でTCP/IPプロトコル実装の一部機能不備が判明したため、対象プラットフォーム としての優先度を下げた。ただし、マルチキャスト関連部以外のネットワーク機能、その他 タスクや同期管理等の移植可能な機能について作業は完了させ、将来的な拡張に備えた。 ■UPnP機能全実装 実施計画当初、開発期間の要因もあり、軽量版に関してはUPnPの全機能を実装の 範囲としないことで、組み込みプラットフォームにおける省サイズ/省メモリに重点を 置いていたが、他社製品との相互接続性に問題がある可能性もあり、全機能実装とした。 ただしHTTPクライアント/サーバ機能部に関しては、軽量版はHTTPv1.0を基本とした 実装に留め、機能過多によるオブジェクトサイズ増加を防いだ。 完成自己評価 95%
14.
CyberGarageおわりに 本事業により、個人レベルでの開発に障壁がある組み込み系プラットフォームの経験、 UPnPプロトコルスタックをC言語で新規設計の機械を与えて頂いた事に感謝したい。 またプロジェクトマネージャの坂村健東京大学大学院教授、YRPユビキタスネットワー キング研究所の越塚登/新堂克徳両氏には本プロジェクトにおいて様々なご指導を 頂いた。 また、Aapo Makela、Johannes Gutlebe、Theo
Beisch、Rosfran Borgesには本成果物の 機能および完成度向上に多大な貢献を頂いた。ここに記して感謝したい。
Download now