TOPPERS『TOPPERS基礎3実装セミナー』に参加してきた(1日目)

TOPPERS基礎3実装セミナーに参加してきました。

  • 主催

特定非営利活動法人TOPPERSプロジェクト

  • 日時

2012年12月1日(土) 10:00-17:00

  • 場所

株式会社サートプロ 代々木研修センター
〒151-0053 東京都渋谷区代々木1-36-6 代々木駅前ビル7F
TEL 03-6276-1168
http://www.certpro.jp/

  • 対象

基礎1実装セミナー、基礎2実装セミナーの内容を理解できている人
C言語に精通していること(本セミナーでは,RTC、SDカード、ETHERNETデバイスドライバを作成します。)
⇒ごめんなさい、受講対象者じゃないです。。

  • プログラム概要

10:00〜10:40 プラットフォーム構築
10:40〜12:00 開発環境のセットアップ
(12:00〜13:00 昼食)
13:00〜14:00 RTCのデバドラの説明とデバッグ
14:00〜15:00 MCI/FAT/POSIXファイルシステム
15:00〜16:30 SDファイルシステムの確認
16:30〜17:00 まとめ
⇒ 事前に開発環境は整えていたので、基板の動作確認とか。
あと、組込み開発に対する一般的な座学的なこと。

  • 講師
    • 竹内良輔 (株)リコー
    • 森田 浩 (株)アドバンスドデータコントロールズ
    • 岩田和仁 (株)デンソークリエイト
  • 総括

内容は、自分にとっては勉強になるレベル。周りからは「ついていけない...」との声も。最近、TOPPERSについて自習しているおかげ。
ある受講者は、セミナー用の開発環境をインストールした際に、これまでの開発環境が鑑賞して、おかしくなってしまった。この辺りは注意。Cygwinとかは特にそう。重要な開発環境が入っているパソコンに入れる時には、十分に注意する。
こればっかりは自己責任。
運営側は、テーブルタップが無い、ターゲットボードの電源が無い、必要な資料が事前配布されてないと、いくつか準備不足。最初のうちは仕方ないかも知れませんけどね。今後、改善していっていただければよいと思います。

講師は、プレゼン慣れしているとは感じはなかったが、これは、反対に嘘臭い印象がまったくなく、私は好印象でした。変に威張った様子もなかったですし、質問に対しても丁寧に回答いただけたので、良かったです。
特に、竹内氏によるFATファイルシステムの説明は、ディープなところまで突っ込んで説明されるあたり、ハイレベルでした。

本セミナーは、名古屋市工業研究所の小川氏お勧めであったのも参加の理由です。「TOPPERS基礎3実装セミナ」を勧めるN個の理由 - ReaD & Researchmap

  • 受講時のメモ

ここからは、受講した際にとったメモ。まずは、遂行もせずそのまま記載します。”気軽に”アウトプットを出すことが大事です。

ファイルシステムAPIは、C89、C99準拠に対応しておけば、Windows/UNIX上でも動かすことができる。

LinuxのOS改変、メンテナンスができる会社は日本で数すくない。Linuxを採用しても、高コストがかかりうる。

この講座は、中規模システム開発を対象としている。
プラットフォームに特化したスキルを持つエンジニアは必要。

理想的なプラットフォーム設計は、汎用OSの設計に見られる。

組込みAPIの設計は、経験、スキルも必要。
⇒ 機器に特化したものが望ましいが、汎用的に使えるAPIであることも求められ、両者は相反しつつも満たすことが重要である。

専用ミドル(Page15)
各社のKnow-Howが詰まっている。

RTOSに用意されているサービスコールを、全て使う必要はない。
名古屋大学の高田先生も言っている。
⇒ 実際には、適度に簡素化されているサービスコールの使い方が良い。
必要に応じて、使い分ける。

仮想端末。昔はSunワークステーションで利用されていた。

ファイルシステムPOSIX準拠で設計する。無難な線。
⇒ こういう事を考えても、無難と表現するあたり、私はまだまだレベルが低い。

Page30
ARMの割り込み機構。デバイスベンダーによって仕様が異なるケースがあるので、注意が必要。
⇒ NXP、STMicro、TI などで違う可能性があるという事。

Cygwin開発環境でmakeしたコンフィギュレータは、cfg.dllに依存するので、別の環境に持っていっても動かないことがある。
TOPPERSプロジェクトで配布されているものは、依存関係に考慮してある。

tm2構造体 → POSIX準拠

静的APIを生成するため、設計者は.cfgファイルを作成するが、.cfgファイルは、uITRONに特有である。これまで、TOPPERS特有だと思っていた。
コンフィギュレータの仕様は、各社のOSのによって異なる。

FAT
FATファイルシステムにおいて、例えば、Windows上でファイルを削除しても、FAT領域を書き換えているだけで、データ領域には残っている。

PDIC
ITRON仕様検討グループが提唱する、デバイスドライバアーキテクチャの総称。
DICは Device Interface Component の略。
PDICは、Primitive-DIC の略で、デバイス固有の処理を行い、OSに依存しない処理を行う。
参照



短時間、且つ、数行ではあるが、一部だけは自分でデバイスドライバをコーディングしてテストする時間もあった。

SDカードのチェックプログラム→UNIX環境でも流用できる。

BPBボリューム管理。一部はBIOSが管理。

page124
未使用ディレクトリは、0xE5で埋められている。昔の名残り。SDカードでは0xFFで埋められている。

Page157 補足。
このあたりは、かなりディープな内容。でも、非常に面白かった。トラブルシューティングにも役立つ。改めて復讐が必要。
FAT情報は、リトル・エンディアン
FAT領域だけはミラーリングしており、不良のデータ破損にも対応。ただし、最近はミラーリング領域までチェックしている事はしていない。FatFSもしていないらしい。
BPBは135セクター目。どこセクターにあるかは、セクター0を読む。