TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した...
Transcript of TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した...
![Page 1: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/1.jpg)
PizzaFactory
TOPPERS向け開発環境PizzaFactoryの概要
合資会社もなみソフトウェア
邑中 雅樹 (むらなか まさき)
![Page 2: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/2.jpg)
PizzaFactory
Agenda• 会社紹介
• PizzaFactroy2の紹介– TOPPERSカーネルの開発環境– TOPPERS教材の教育環境
• PizzaFactory3 へ
![Page 3: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/3.jpg)
PizzaFactory
(資)もなみソフトウェアとは?• 2000年10月設立 • 資本金: 903万円• 社員数: 5名 (うちエンジニア3名、取締役含)• 子会社
– (有)もなみハードウェア (企画、教材販売)• 所在地: 東京都墨田区吾妻橋
会社紹介
![Page 4: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/4.jpg)
PizzaFactory
4
![Page 5: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/5.jpg)
PizzaFactory
TOPPERSとの関わり(技術面)• Kernel Development が中心
– 2000年• IA32版の取りまとめ
– 2003年• FI4カーネルの中心開発企業
– 2005年• HRPカーネル機種依存部開発開始• PizzaFactory3開発開始
会社紹介
![Page 6: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/6.jpg)
PizzaFactory
TOPPERSとの関わり(運営面)
• 法人サポートを表明した、初めての営利企業
• NPO法人TOPPERSプロジェクト、理事–開発担当、英語化WG主査
会社紹介
![Page 7: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/7.jpg)
PizzaFactory
PizzaFactory2の紹介
TOPPERSカーネルの開発環境
![Page 8: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/8.jpg)
PizzaFactory
コマンドラインベース環境• 推奨動作環境
– Windows2000/XP – HDD 100MB– RAM 512MB
8
![Page 9: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/9.jpg)
PizzaFactory
PizzaFactory2のメリット• 高速ビルドを実現した
GCCベースコンパイラ– 同一ハードウェアにおいて、Cygwinベース環境との実測値比較で10倍高速
0
2
4
6
8
10
12
CygwinベースPizzaFactory
![Page 10: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/10.jpg)
PizzaFactory
PizzaFactory2のメリット
• インストーラで形式で配布– GCCをビルドしなくて済む
• TOPPERSカーネルのビルド確認済み
• ネットワーク経由の最新版取得 (2.5から)
最近のGNUツールはビルドに数日かかる場合もあります!
![Page 11: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/11.jpg)
PizzaFactory
PF2のインストール (1)• インストーラでつかう言語を選択します。
![Page 12: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/12.jpg)
PizzaFactory
PF2のインストール (2)• ライセンス条件を確認
![Page 13: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/13.jpg)
PizzaFactory
PF2のインストール (3)• ライセンスキーを入力して
![Page 14: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/14.jpg)
PizzaFactory
PF2のインストール (4)• PizzaFactory2を展開する先を指定します。
![Page 15: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/15.jpg)
PizzaFactory
PF2のインストール (5)• インストールするツールを選択します。
![Page 16: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/16.jpg)
PizzaFactory
5ステップでインストール完了• TOPPERSカーネルもインストールされます。• これ以上インストールが簡単な
TOPPERS向けGNU環境はありません。
![Page 17: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/17.jpg)
PizzaFactory
10分でTOPPERS開発者• インストーラ起動後10分あれば、JSPカーネルのサンプルプログラムのビルドが完了します。
17
![Page 18: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/18.jpg)
PizzaFactory
TOPPERS教材の教育環境
![Page 19: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/19.jpg)
PizzaFactory
入門者にとっての壁
• GNUツールのインストール
• どんな機材を揃えればよいのか解らない
• ボードが高価で手が出ない
PizzaFactoryで解決
![Page 20: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/20.jpg)
PizzaFactory
TOPPERS評価キット
![Page 21: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/21.jpg)
PizzaFactory
TOPPERS評価キット• 組立て済み (AKI-H8/3069F LANキット)• 必要なケーブル類
– LANケーブル, シリアルケーブル• PizzaFactory2 Educational Edition
–中級コース教材用アドオン
• 原価ギリギリの低価格
![Page 22: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/22.jpg)
PizzaFactory
PizzaFactory3
Eclipseベース統合開発環境
![Page 23: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/23.jpg)
PizzaFactory
Caution! – これは予告編です• PizzaFactory3は、現在開発中です。• 予告無しに、出荷時期/製品構成等が変わる可能性があります。
• 本製品はIPAのオープンソースソフトウェア活用基盤整備事業の委託事業です。
![Page 24: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/24.jpg)
PizzaFactory
スクリーンイメージ
24
![Page 25: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/25.jpg)
PizzaFactory
プラットフォームとしてのEclipse• 統合開発環境ツールのプラットフォーム• PizzaFactory3 もEclipseプラグインの集合
Eclipse Platform SDK
JDT(Java)
CDT(C/C++)
・・・(C#)
・・・(・・・)
OSGi
![Page 26: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/26.jpg)
PizzaFactory
Eclipseとその問題点• EclipseのC/C++開発環境 CDTがベース
• CDTはTOPPERSをサポートしきれない–スレッドサポートを前提としたGDBフロントエンド– クロス開発を考慮していないビルドルール– コンフィギュレータエディタの不在–シリアル端末サポートの不在
![Page 27: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/27.jpg)
PizzaFactory
PizzaFactory3 の機能• 方針 : CDTの不満を解消する
• シングルスレッド対応のGDBフロントエンド• コンフィギュレータエディタの提供• シリアル端末サポートの追加
• クロスコンパイラへの対応
![Page 28: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/28.jpg)
PizzaFactory
TOPPERS開発支援機能 (1/4)
• サービスコール対応ツールチップ
28
![Page 29: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/29.jpg)
PizzaFactory
TOPPERS開発支援機能 (2/4)• 入力補完機能つきcfgエディタ
29
![Page 30: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/30.jpg)
PizzaFactory
TOPPERS開発支援機能 (3/4)• Managed Build 対応
– makefileの自動生成
30
![Page 31: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/31.jpg)
PizzaFactory
TOPPERS開発支援機能 (4/4)• utilsディレクトリのツールをJavaで実装
– rename, unrename, genoffset, ...
31
![Page 32: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/32.jpg)
PizzaFactory
High Quality はツールから
32
![Page 33: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/33.jpg)
PizzaFactory
組込みツールの要求は厳しい
• ツールの構成管理– ソースコードの構成管理は当然(!)–あのコード、あのバージョンのツールで検証した。
–全部のバージョンのコンパイラを入れておくわけにはいかない。現場の機材は限られている。
![Page 34: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/34.jpg)
PizzaFactory
Eclipse/CDTの現状•コンパイラはEclipseの蚊帳の外•ツールの構成管理からは程遠い
34
Eclipse Platform SDK
JDT(Java)
CDT(C/C++)
・・・(C#)
・・・(・・・)
OSGi
GCC
![Page 35: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/35.jpg)
PizzaFactory
GNUツールとEclipseとの融合• GNUツールを
Eclipseの構成管理機構に組込む
![Page 36: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/36.jpg)
PizzaFactory
GNUツールとEclipseとの融合
36
Eclipse Platform SDK
JDT(Java)
CDT(C/C++)
・・・(C#)
・・・(・・・)
OSGi
GCC3.4.3
PizzaCore
GCC4.0.1
Webサーバ
Eclipseのアップデート機能を使って、ネット経由でGNUツールを自動アップデート
![Page 37: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/37.jpg)
PizzaFactory
GNUツールとEclipseとの融合• オープンソースの世界でもコンパイラの保守管理を不要に
![Page 38: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/38.jpg)
PizzaFactory
今後の出荷予定
• 2005/4Q – 守秘契約ベースでの公開• 2006/1Q – TOPPERSプロジェクト内β公開• 2006/2Q – 発売
![Page 39: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/39.jpg)
PizzaFactory
今後の計画
• 各社デバッガとの接続性確認• TOPPERSカーネルの内部状態表示• 組込み各分野が必要とする拡張の提供
• いくつかのプラグインは、無償公開予定–無償公開プラグインの2次利用は大歓迎です。
![Page 40: TOPPERS向け開発環境 PizzaFactoryの概要 · • 高速ビルドを実現した GCCベースコンパイラ – 同一ハードウェアにお いて、Cygwinベース環 境との実測値比較で10](https://reader033.fdocument.pub/reader033/viewer/2022041614/5e3a34f54852a145e44fbf49/html5/thumbnails/40.jpg)
PizzaFactory
ご静聴ありがとうございました
Visit http://www.pizzafactory.jp/