今週の金曜日は、Linux Foundation CEWGのJapan Jamboree です!中野サンプラザ8階研修室で、午前10時~。 elinux.org/Japan_Technica… #CELFJP
2016-11-28 07:37:16今回は毎回リモートで参加のTim BirdさんやFrank Rowand さんも直接参加です。 elinux.org/Japan_Technica… #CELFJP
2016-11-28 07:38:37久しぶりに(5年ぶり?)Japan Technical Jamboree 59に参加します。 elinux.org/Japan_Technica… #CELFJP
2016-12-02 10:06:32Kernel sizeでNicolas Pitreの仕事(System Call elimination)の紹介。これ試しているけどまだきちんとボルドできないでいます。何か情報があればください。 connect.linaro.org/resource/sfo15… #CELFJP
2016-12-02 11:00:29NuttXをポーティングする上でAndroidのWakeLockを同じようなAPIで提供するようにする話、アプリの開発者がAndroidに慣れているので、同じ概念のAPIがあれば勝手に対応してくれるとのこと。#CELFJP
2016-12-02 13:34:46NuttX、RTOSだけどELFローディングサポートしているので、最初からメモリのアドレスに固定しなくていい。デバッグ用のバイナリにロードして切り替えれるのも非常に嬉しい #CELFJP
2016-12-02 13:36:24ELFローダにセクションキャッシュ機能を追加して、使っていないメモリ領域にロードし、IOを減らした。あとC++11を使っていたりしてシンボルが長いから初めからハッシュにしておいた。結果、30倍近く高速化 #CELFJP
2016-12-02 13:39:48ESが来る前にFPGAで実装できた、さらにFPGAが来る前にはQemuで実装できた→結果ESが来てから4ヶ月で製品化。つまりHWが出てくるまでの間にどれだけ先行開発できるかが鍵 #CELFJP
2016-12-02 13:42:22openOCDでデバッグするときに、OS対応解析機能があると、OS内部のスレッドやタスクの解析機能が使えるようになる。そこでNuttX向けのサポートをOpenOCDに追加した。 #CELFJP
2016-12-02 13:46:24OpenOCDだけではなく、デバッグのためにadbのプロトコルを話せるエージェント?をNuttXにスクラッチから作ったらしい。これでファイルなども取ってこれるようになったと。 #CELFJP
2016-12-02 13:49:38ユニットテストもGoogletestから作ってpushして動かせるようにしたらしい。これでC++のユニットテストが実行できるようになったと。 #CELFJP
2016-12-02 13:51:45demo. ELFにしてロード・アンロードすることで、ボタンを押してUIが変わると、裏で動くアプリも切り替わる。ロードする瞬間、DVFSでクロックブーストすることで高速化。このデバッグ機能は製品にも入っているので、開発者モードにはいればadbでデバッグできる #CELFJP
2016-12-02 13:55:37テストも自動化されていて、スクリプトで外部からadb経由で動かすことができる。これによって並行テストが可能になったし、nightlyでテストを走らせ続けられるようになった。 #CELFJP
2016-12-02 13:56:50UIのマニュアルを作るために、スクリーンショットを取る機能も追加した。やろうと思えば、このスクリーンショットとテストを組み合わせれば、見た目のテストもできそうだけど、実際にはかなり難しい(多分正しい答えが何かを定義しにくいんだろう) #CELFJP
2016-12-02 13:58:25Cortex-M3でMPUを使って開発してみた結果、MPUのリージョン設定が限定的なので、MMUでやるみたいにきちんと保護できるわけではない、この部分が難しいとのこと。メモリ破壊が起きることはある。Qemuを使ってシミュレーションも併用してアプリのテストをした。 #CELFJP
2016-12-02 14:00:20NuttXにもバグが結構あったが、OpenOCDで追いかけられたのが良かった。しかしOSSを使うことで再利用性が大きいのが助かったらしい。 #CELFJP
2016-12-02 14:01:44NuttXを選んだ理由→POSIX(ライクなAPI)とlibcサポートが最初から入っていたのが大きかった。POSIXベースのソフトウェア資産(bt stack)を持っていたので、ほとんど修正しないで使いまわせた。アプリ開発者も慣れている #CELFJP
2016-12-02 14:05:08ライセンスがBSDだったのもRTOSには良かった。またLinuxらいくなデバイスドライバの作りになっていたので、開発するときに楽だったというのも大きいとのこと。 #CELFJP
2016-12-02 14:06:11NuttX、SMPサポートが入ってき始めているのでこれを使いたいとのこと。またNetworkスタックもあるらしい。 #CELFJP
2016-12-02 14:07:24